[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

debconf not invoked during dpkg 'configuration'



 

Hello,

 I am writing a debian binary package for my application (foo). The postinst (post install) script wants to ask the user few questions and get the answers as well. I am trying to achieve this using debconf.

But I am not able to see the UI screen, prompting user with questions.  I doubt if my config and templates are even called by dpkg. I am using all the instructions as per the links http://www.fifi.org/doc/debconf-doc/tutorial.html.

Could someone please help me find what is going wrong?

 

Snippet of my build script build.sh : (only relevant fields)

PKG_NAME=foo

mkdir -p debian/DEBIAN

sed "s/VERSION/$PKG_VERSION/" control > debian/DEBIAN/control          #PKG_VERSION and other variables are delared in my script

cp preinst debian/DEBIAN/preinst

cp postinst debian/DEBIAN/postinst

cp prerm debian/DEBIAN/prerm

cp postrm debian/DEBIAN/postrm

cp config debian/DEBIAN/config

cp templates debian/DEBIAN/templates

 chmod 755 debian/DEBIAN/postinst

chmod 755 debian/DEBIAN/preinst

chmod 755 debian/DEBIAN/prerm

chmod 755 debian/DEBIAN/postrm

chmod 755 debian/DEBIAN/config

chmod 755 debian/DEBIAN/templates

 

#commands to actually build the package…

 Snippet of control file: (only relevant fields)

 Depends: debconf (>= 0.2.17)

 Snippet of config file:

 #!/bin/sh

set -e

 DEBCONF_DEBUG=developer

DEBIAN_FRONTEND=gnome

 # Source debconf library.

. /usr/share/debconf/confmodule

 

db_input medium foo/like_debian || true

db_go

 

# Check their answer.

db_get foo/like_debian

if [ "$RET" = "false" ]; then

    # Poor misguided one..

    db_input high foo/why_debian_is_great || true

    db_go

fi

 Snippet of templates file:

 Template: foo/like_debian

Type: boolean

Description: Do you like Debian?

We'd like to know if you like the Debian GNU/Linux system.

 

Template: foo/why_debian_is_great

Type: note

Description: Poor misguided one. Why are you installing this package?

Debian is great. As you continue using Debian, we hope you will

discover the error in your ways.

 

Snippet of postinst:

#!/bin/sh

set -e

 # Source debconf library.

. /usr/share/debconf/confmodule

 db_get foo/like_debian

if [ "$RET" = "false" ]; then

    touch "/home/myhome/ITWORKED"

fi

 

exit 0

  

I do not see any errors also when I have set DEBCONF_DEBUG=developer.

 

Thanks and Regards,

-Sandeep


Reply to: