[Debconf-devel] Bug#819845: Bug#819845: mention how to reconfigure the items shown by debconf-show

Colin Watson cjwatson at debian.org
Sun Apr 3 01:23:05 UTC 2016


reassign 819845 libc6
retitle 819845 libc6: support debconf reconfiguration of libraries/restart-without-asking
thanks

On Sun, Apr 03, 2016 at 08:02:58AM +0800, 積丹尼 Dan Jacobson wrote:
> User sees
> 
>        If you just want to see the current configuration of a package, see
>        debconf-show(1) instead.
> 
> User does
> 
> # debconf-show libc6
> * glibc/restart-services: exim4 cron atd
>   glibc/kernel-not-supported:
>   glibc/restart-failed:
>   glibc/disable-screensaver:
> * libraries/restart-without-asking: false
> * glibc/upgrade: true
>   glibc/kernel-too-old:
> 
> User does
> # dpkg-reconfigure libc6
> #
> 
> So, kindly on the dpkg-reconfigure man page, mention how to reconfigure
> [all!] the items shown by debconf-show! Thank you.

No, sorry.  There is no such general mechanism beyond simply using
dpkg-reconfigure, whose defaults generally arrange to get a package to
re-show all of its questions; it's up to the package to implement
reconfiguration appropriately.  Things do generally work fine if debconf
configuration is implemented in the way recommended in the debconf
documentation.

It is not necessarily appropriate to be able to reconfigure every item
shown by debconf-show, because some of them may be used for internal
state tracking by the package's maintainer scripts, or depend on the
current situation at the time when the maintainer scripts are run;
almost all of libc6's questions fall into one of these two categories.
Going through them each in detail:

 * glibc/restart-services: The value of this question is reset and
   re-detected from the set of currently-running services each time the
   question is asked.  Reconfiguration wouldn't be useful.
 * glibc/kernel-not-supported, glibc/restart-failed,
   glibc/disable-screensaver, glibc/kernel-too-old: These are notes or
   errors; there's nothing to reconfigure.
 * glibc/upgrade: If you answer no to this question, then the upgrade is
   stopped and the way to continue it is by getting dpkg to unpack the
   package again, not by reconfiguring.  If you answer yes, then the
   upgrade continues; a mere reconfiguration wouldn't be able to roll
   that back, so there's no point offering reconfiguration of this
   question.

Arranging to re-show all of these would have no value other than
completism, and almost certainly negative value due to the sheer
confusion it would cause.  Even if it were possible, which it isn't, I'm
not going to provide instructions on doing a thing that shouldn't be
done.

However, there's one part of this where your request makes sense.
libraries/restart-without-asking is more like a normal debconf question.
It isn't reset before being asked, and its value influences the
behaviour of future upgrades.  It seems to me to be a clear bug that it
isn't possible to reconfigure this using "dpkg-reconfigure libc6".
Doing this might be a little more involved than usual since libc6 has
complex maintainer scripts and this question is asked in the preinst,
but it should be possible to make it work.

-- 
Colin Watson                                       [cjwatson at debian.org]



More information about the Debconf-devel mailing list