[Pkg-acpi-devel] Bug#613901: Does not use invoke-rc.d in postinst.

Trent W. Buck trentbuck at gmail.com
Fri Feb 18 03:58:13 UTC 2011


Package: acpi-fakekey
Version: 0.138-6
Severity: important

In the postinst, you do

    start-stop-daemon --oknodo --stop --quiet --exec /usr/sbin/acpi_fakekeyd

This makes it impossible to install acpi-support in a chroot,
e.g. when preparing a rootfs for a live CD:

    Setting up acpi-fakekey (0.138-6) ...
    start-stop-daemon: nothing in /proc - not mounted?
    dpkg: error processing acpi-fakekey (--configure):
     subprocess installed post-installation script returned error exit status 2

    [...]
    Errors were encountered while processing:
     acpi-fakekey
     acpi-support
     eeepc-acpi-scripts

I assume that if /proc was mounted, acpi-fakekeyd would start up
normally, possibly interfering with the system outside the chroot, and
almost certainly preventing the chroot being unmounted.  (i.e. BAD!)

Normally this is fixed by using invoke-rc.d to start daemons in the
postinst script, so that people like me can create a policy-rc.d(8)
script that tells daemons not to start during the chrooted bootstrap.

If that is not an option, you might look for the existence of
/etc/debian_chroot (which is not required, but is often used in
chroots), or do whatever udev does to detect the existence of a
chroot:

    Setting up udev (164-3) ...
    A chroot environment has been detected, udev not started.

Kernel: Linux 2.6.34-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_AU.utf8, LC_CTYPE=en_AU.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash





More information about the Pkg-acpi-devel mailing list