Bonjour,

J'ai un soucis avec un script postrm utilisant debconf qui bloque quand
je purge le paquet. 

Dans le script, en cas de purge, j'utilise debconf pour r�cup�rer le nom
d'une base postgresql, puis le supprime la base, je change un fichier de
conf de postgresql et je fais un reload. Jusque l� tout va bien. Mais
debhelper ajoute gentiment la purge des param�tres du paquet dans sa
base de donn�es, et l� �a se bloque ind�finiment (enfin, ca prend plus
de 5 minutes, apr�s quoi, j'ai envoy� un ^C pour arr�ter tout). 

Mon script ressemble � �a:
---------------------8<---------------------------------
#! /bin/sh -e
. /usr/share/debconf/confmodule ;
db_version 2.0 ;

if [ "$1" = "purge" ]; then
    db_get  ginco-db/web/host ;
    GINCOHOST=$RET ;
    db_get  ginco-db/database/name ;
    PGDATABASE=$RET ;
    db_get  ginco-db/database/user ;
    PGUSER=$RET ;
    db_stop ;
    
    su - postgres -c "dropdb  $PGDATABASE" || true ;

    if grep --quiet "^host.*$PGDATABASE.*$PGUSER.*$GINCOHOST.*"
/etc/postgresql/pg_hba.conf ; then
        true ;
    else
        grep -v "$PGDATABASE" /etc/postgresql/pg_hba.conf >
/etc/postgresql/pg_hba.conf.temp ;
        mv /etc/postgresql/pg_hba.conf.temp /etc/postgresql/pg_hba.conf
; 
        invoke-rc.d postgresql reload >/dev/null 2>&1 || true ;
    fi ;

fi;


#DEBHELPER#

exit 0
-----------------------------8<------------------------------------

debhelper ajoute les lignes suivantes:
# Automatically added by dh_installdebconf
if [ "$1" = purge ] && [ -e /usr/share/debconf/confmodule ]; then
        . /usr/share/debconf/confmodule
        db_purge
fi
# End automatically added section

et �a bloque sur db_purge.

debconf-devel(7) mentionne un probl�me avec les daemons, et dit qu'il
faut utiliser db_stop pour �viter des ennuis, mais visiblement ce n'est
pas li�.

Quelqu'un aurait une piste ?

-- 
Alexandre Fayolle



Répondre à