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