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

Noch ein debconf-Problem



Hallo,

ich bastele gerade an der debconf-isierung eines Paketes (netenv, aber
in der aktuellen Version). Dabei treten Probleme auf, die ich nicht
verstehe. Und zwar wird beim purgen das Programm nicht aus der Datenbank
entfernt, obwohl dh_installdebconf eine entsprechende Zeile ins
postrm-Skript geschrieben hat:

alhambra:~# cat /var/lib/dpkg/info/netenv.postrm
...
# Automatically added by dh_installdebconf
if [ "$1" = purge -a -e /usr/share/debconf/confmodule ]; then
        . /usr/share/debconf/confmodule
        db_purge
fi
# End automatically added section
...

alhambra:~# apt-get --purge remove netenv
...

Wenn ich es jetzt wieder installiere, werden die Fragen nicht gestellt:

alhambra:~# DEBCONF_DEBUG=developer  dpkg -i ~frank/src/Packages/netenv_0.92-1_i386.deb 
Selecting previously deselected package netenv.
(Reading database ... 85453 files and directories currently installed.)
Unpacking netenv (from .../netenv_0.92-1_i386.deb) ...
Setting up netenv (0.92-1) ...
debconf (developer): frontend started
debconf (developer): frontend running, package name is netenv
debconf (developer): starting /var/lib/dpkg/info/netenv.config configure 
debconf (developer): <-- TITLE netenv configuration
debconf (developer): --> 0
debconf (developer): <-- SET netenv/is_configured false
debconf (developer): --> 0 value set

[ Das ist korrekt, ich habe in config die Zeilen
CONFS=`ls -1 /etc/netenv/${NODE}-* 2>/dev/null|wc|awk '{print $1}'` || true
db_title "netenv configuration"
if [ $CONFS -gt 0 ]; then
		db_set netenv/is_configured true
    ...
else
    db_set netenv/is_configured false
    db_input critical netenv/info_configure || true
    ...
fi
]

debconf (developer): <-- INPUT critical netenv/info_configure
debconf (developer): --> 30 question skipped

[ und das sollte IMO nicht passieren. Hier sollte die Information
dargestellt werden. ].

Wenn ich bei der Installation mit dpkg noch DEBCONF_SHOWOLD=yes angebe,
dann werden die Fragen gestellt. Wie kann das kommen?

Kann es eine Rolle spielen, dass es beim apt-get remove eine
warning gibt - die ich mir auch nicht erklären kann?

Und zwar:

alhambra:~# apt-get --purge remove netenv
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
  netenv* 
0 packages upgraded, 0 newly installed, 1 to remove and 0  not upgraded.
1 packages not fully installed or removed.
Need to get 0B of archives. After unpacking 205kB will be freed.
Do you want to continue? [Y/n] 
(Reading database ... 85470 files and directories currently installed.)
Removing netenv ...
Document `netenv' is not installed, cannot remove.
dpkg - warning: while removing netenv, directory `/etc/netenv' not empty so not removed.
Purging configuration files for netenv ...
alhambra:~# ls -a /etc/netenv/
.  ..
alhambra:~# 

Da war mal eine Datei drin, die das postinst-Skript geschrieben hat,
aber die habe ich vor der Deinstallation manuell gelöscht.

Ich überblicke nicht ganz, welche weiteren Informationen evtl. nötig
wären, daher erspare ich Euch jetzt ein tar.gz von netenv/debian/*...

TIA, Frank

-- 
Frank Küster, Biozentrum der Univ. Basel
Abt. Biophysikalische Chemie



Reply to: