> (For the same reasons, daemons should not include daemonization routines but should run in the foreground. If I want it in the background, I'll arrange for my process supervisor to start it.)
If a daemon doesn't... daemonize into the background, it's no longer a daemon - just a process.
Silly loonix folks.
Please see the FreeBSD program daemon[1] or the FreeBSD handbook section 3.8[2].
The freebsd daemon tool is exactly what I'm talking about. Debian has start-stop-daemon [1]. Process supervisors like daemontools create daemons simply by fork+exec by virtue of the parent process already being a daemon. There's no reason for every service to implement its own daemonization routine.
[1] http://man.cx/start-stop-daemon%288%29