[GoLUG] I now have a personal runit
Steve Litt
slitt at troubleshooters.com
Sun Aug 31 22:22:10 EDT 2025
Hi all,
I now have a personal runit instance, meaning a process supervisor
running as user slitt, with permissions of user slitt, and environment
and X settings of user slitt, running daemons needed by user slitt.
I'm now going to shift over many "daemons", that I ran from UMENU2 at
the command prompt, to automatic supervision by my personal runit.
A personal runit has absolutely nothing to do with the init system in
use. You can run your own personal runit on computers initted with
sysvinit, systemd, runit, s6, OpenRC, Busybox Init, Epoch, or the new
thing from GNU.
When you create a daemon for a personal runit, the daemon is just a
computer program that runs correctly in the foreground. It needn't, and
in fact shouldn't, "background itself". It does exactly the same thing
under runit as it would do on a terminal emulator, except with runit,
you can start, stop and restart it with the following command prompt
commands:
svl start mydaemon
svl stop mydaemon
svl restart mydaemon
The svl script simply puts a path in front of its second argument and
then calls runit's sv command on the two arguments. This enables me to
specify which runit is being addressed, even if both have a daemon with
the same name.
I'm already using it to control the Pulseaudio "server" (long story).
I'll be shifting the following home grown daemons to it soon:
* My fetchmail loop daemon
* My Email pager loop daemon
* My Reminder loop daemon
* My Reminder checker loop daemon
With a personal runit kicked off by the ~/.xinitrc script, supervising
GUI programs is dead bang easy. I'll let you know more as time goes on.
SteveT
Steve Litt
http://444domains.com
More information about the GoLUG
mailing list