Adam McKenna has uploaded daemontools-src.deb into incoming. I think it is
time to discuss some issues regarding daemontools. I have packaged some
wrappers for personal use which I want to include into the debian project,
but before I am doing this, I will explain, what they do and I hope I get
some ideas if this is ok or what can be improved.
First of all most of the packages are, as I said, wrapper packages for
existing services like apache, klogd, proftpd and so on. People who want to
use daemontools want to run all possible services supervised and my packages
are an easy way to do this.
I have named these packages like the original packages with the suffix -sv
(apache-sv, proftpd-sv, klogd-sv). sv means 'supervise'. These packages are
doing nothing else than setting up the corresponding service to work under
daemontools (Creating run-file, setting up multilog-stuff and so on). Let's
try to give an example:
A user has already installed proftpd and proftpd is running as a daemon,
started by an init.d-script. Now the use want to switch over to daemontools.
He just installs the package proftpd-sv. This package depends on daemontools,
so daemontools is installed first (or you need to compile daemontools-src and
install it by hand). Now proftpd-sv's postinst shuts down the proftpd service
(/etc/init.d/proftpd stop) and removes the startup-links with update-rc.d
(Here I will be happy if someone has a better idea). If proftpd is running
under inetd the inetd-entry will be disabled. Now the postinst script
installs the necessary daemontools environment for proftpd and enables the
service by linking to the service directory. Finished. Proftpd is now running
under daemontools. In the same way a lot of services can be wrapped (Apache,
I am not very happy with that "update-rc.d remove" thing. If I have removed
the rc.d-links, I can't restore them, If I want to switch back to init.d. Any
better idea? Like moving /etc/init.d/proftpd to /etc/init.d/proftpd.disabled
and moving it back if proftpd-sv is removed. No, I think this isn't working,
too. If I upgrade proftpd, the init script will be re-created and the next
reboot causes TWO proftpd instances to run.