Child Daemonization
Based on my understanding of process supervision and systemd's docs, daemons that are managed by init
(which should be all of them) should not fork off and effectively daemonize themselves, rather, they should continue to run in the foreground and let their calling process handle daemonizing. Fixing this requires a couple of things:
-
init
should assume that a service'smethods.start
is a process which runs as a daemon. Also add an option in the service file which can override this, for scripts that run startup tasks, etc. -
Better service state management -
Many MR's to many redox repos (the ones that provide daemonized services) in order to -
Make daemonization opt-outable via an argument (later changed to opt-in/removed after the rewrite is the default) -
Put service configuration files either in cookbook or in the service's repository (not strictly related but can be bundled with this issue)
-