NAME
confmodule - communicate with Debian configuration system FrontEnd.
SYNOPSIS
#!/bin/sh -e
. /usr/share/debconf/confmodule
db_version 2.0
db_capb ’backup’
CAPB=$RET
db_input ’foo/bar’ || true
db_go || true
DESCRIPTION
This is a library of shell functions that eases communication with
Debian’s configuration management system. It can communicate with a
FrontEnd via the debconf protocol. The design is that each command in
the protocol is represented by one function in this module. The
functionname is the same as the command, except it is prefixed with
"db_" and is lower-case. Call the function and pass in any parameters
you want to follow the command. Any textual return code from the
FrontEnd will be returned to you in the $RET variable, while the
numeric return code from the FrontEnd will be returned as a return code
(and so those return codes must be captured or ignored).
NOTES
Once this library is loaded, any text you later output will go to
standard error, rather than standard output. This is a good thing in
general, because text sent to standard output is interpreted by the
FrontEnd as commands. If you do want to send a command directly to the
FrontEnd, you must output it to file descriptor 3, like this:
echo GET foo/bar >&3
The library checks to make sure it is actually speaking to a FrontEnd
by examining the DEBIAN_HAS_FRONTEND variable. If it is set, a FrontEnd
is assumed to be running. If not, the library turns into one, and runs
a copy of the script that loaded the library connected to it. This
means that if you source this library, you should do so very near to
the top of your script, because everything before the sourcing of the
library may well be run again.
SEE ALSO
debconf-devel(7), dpkg-preconfigure(8), dpkg-reconfigure(8),
debconf_specification in the debian-policy package
AUTHOR
Joey Hess <joeyh@debian.org>