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

debconf not invoked during dpkg 'configuration'



 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)


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:


set -e



 # Source debconf library.

. /usr/share/debconf/confmodule


db_input medium foo/like_debian || true



# Check their answer.

db_get foo/like_debian

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

    # Poor misguided one..

    db_input high foo/why_debian_is_great || true



 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:


set -e

 # Source debconf library.

. /usr/share/debconf/confmodule

 db_get foo/like_debian

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

    touch "/home/myhome/ITWORKED"



exit 0


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


Thanks and Regards,


Reply to: