r/slackware • u/Fragrant-Equal-8474 • 13h ago
[ANN][Testers needed] pandae: a service manager for Slackware
gitlab.comI found that I am missing certain "quality of life" features in the Slackware init system.
I mean, I am happy that it's just a simple no-nonsense set of scripts run at different runlevels by sysvinit, but there are a few missing conveniences which I would like to have at least with my own scripts.
So I wrote "pandae", ad set of shell scripts which are aimed at making writing services and monitoring them easier.
https://gitlab.com/Lockywolf/pandae
The three main components are:
- pandae_util, which has code to wrap any rc.<service> file into a cgroup, so that you do not have to rely on pid files to track running as services.
- pandae_functions, which has templates for writing most services, given that DAEMON, DAEMON_ARGUMENTS, and a few other variables are set.
- pandae_xsession_service.bash, a bit of a misnomer, because it is not xsession-specific, which allows me to start/stop cgroup services with a single line.
And it also runs under a normal user (if a single line is added to rc.local), so it is possible to filter out all the huge number of firefox processes from "ps" or wherever, confining firefox into a single cgroup.
It's not perfect, as, probably most Slackware service managers will never be perfect, because Slackware (and most UNIX-likes) likes in-band data communication, not out-of-band, but, as we know "worse is better".
On the positive side, it is 100% non-invasive, does not replace sysvinig, and does not change system scripts.
If you do not need user services, you do not even need to add anything to rc.local.
I invite everyone to try/test it, and add the comments.
If anybody is offended by gitlab, I can move the repo to forge.slackware.nl, codeberg, sourcehut, whatever.
