On Thu, Aug 13, 2009 at 11:55:06PM +0200, Kurt Roeckx wrote:
> Adding the -x, I get:
> (Reading database ... 9937 files and directories currently installed.)
> Removing ca-certificates ...
> Purging configuration files for ca-certificates ...
> + rm -f /etc/ssl/certs/ca-certificates.crt
> + remove_dangling_symlinks
> + [ -d /etc/ssl/certs ]
> + echo -n Removing dangling symlinks from /etc/ssl/certs...
> Removing dangling symlinks from /etc/ssl/certs... + find /etc/ssl/certs -type 
> l
> -print
> + read h
> + test -f /etc/ssl/certs/a70d887e
> + read h
> + test -f /etc/ssl/certs/a70d887e.0
> + read h
> + echo done.
> done.
> + [ -d /etc/ssl/certs ]
> + rmdir --ignore-fail-on-non-empty /etc/ssl/certs
> + [ -d /etc/ssl ]
> + rmdir --ignore-fail-on-non-empty /etc/ssl
> + rm -f /etc/ca-certificates.conf*
> + test -e /usr/share/debconf/confmodule
> + . /usr/share/debconf/confmodule
> + [ !  ]
> + PERL_DL_NONLAZY=1
> + export PERL_DL_NONLAZY
> + [  ]
> + exec /usr/share/debconf/frontend /var/lib/dpkg/info/ca-certificates.postrm 
> purge
> + rm -f /etc/ssl/certs/ca-certificates.crt
> + remove_dangling_symlinks
> + [ -d /etc/ssl/certs ]
> + echo -n Removing dangling symlinks from /etc/ssl/certs...
> + find /etc/ssl/certs -type l -print
> + read h
> + test -f /etc/ssl/certs/a70d887e
> + read h
> + test -f /etc/ssl/certs/a70d887e.0
> + read h
> + echo done.
> + [ -d /etc/ssl/certs ]
> + rmdir --ignore-fail-on-non-empty /etc/ssl/certs
> + [ -d /etc/ssl ]
> + rmdir --ignore-fail-on-non-empty /etc/ssl
> + rm -f /etc/ca-certificates.conf*
> + test -e /usr/share/debconf/confmodule
> + . /usr/share/debconf/confmodule
> + [ ! 1 ]
> + [ -z  ]
> + exec
> + [  ]
> + exec
> + DEBCONF_REDIR=1
> + export DEBCONF_REDIR
> + db_purge
> + _db_cmd PURGE
> + IFS=  printf %s\n PURGE
> + IFS=
>  read -r _db_internal_line
> + RET=20 Unsupported command "removing" (full line was "Removing dangling 
> symlinks from /etc/ssl/certs... done.") received from confmodule.
> + return 20
> dpkg: error processing ca-certificates (--purge):
>  subprocess installed post-removal script returned error exit status 20
> Errors were encountered while processing:
>  ca-certificates

Wow, that's broken.  So debconf reinvokes the maintainer script when the
confmodule is sourced and then goes and parses everything on stdout.
(Apart from the fact that the postrm is effectivly invoked twice.)

The way to write to stdout according to confmodule is to write to fd3.
But of course confmodule's presence is not guaranteed and thus one cannot
just source it and write to fd3...

Thanks a lot for the bug report and for the trace.  I'll think about it.

Kind regards,
Philipp Kern
-- 
 .''`.  Philipp Kern                        Debian Developer
: :' :  http://philkern.de                         Stable Release Manager
`. `'   xmpp:p...@0x539.de                         Wanna-Build Admin
  `-    finger pkern/k...@db.debian.org

Attachment: signature.asc
Description: Digital signature

Reply via email to