Package: insserv
Version: 1.12.0-11
Severity: wishlist

Hi,

Most init scripts in Debian start with a line like

        [ -x /usr/sbin/some-daemon ] || exit 0

to handle the common situation when a package has been removed, but not
purged.  It would be nice if insserv could provide a way to ignore a
script altogether when a file isn’t there, for example via a new header
in the INIT INFO block:

        # X-If-Exists: /usr/sbin/some-daemon

This line usually isn’t needed because the scripts exit gracefully
anyway.  Still, such a header would make it possible for mutually
exclusive init scripts from conflicting packages to provide the same
facility name.  For example, /etc/init.d/some-daemon from the
some-daemon package could say

        # Provides: some-daemon
        # X-If-Exists: /usr/sbin/some-daemon

while /etc/init.d/better-daemon states

        # Provides: some-daemon
        # X-If-Exists: /usr/sbin/better-daemon

Other scripts which *-Start: some-daemon don’t care whether behind the
scenes it really is some-daemon or the interface-compatible
better-daemon.  There is no need for a new $some-daemon virtual facility
name.

For a prior discussion on how a thing like this could be useful in
Debian, see the case of console-tools and kbd in
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542225#10>.

Best regards,
-- 
Michael Schutte <[email protected]>

Attachment: signature.asc
Description: Digital signature

Reply via email to