Support for other service managers on linux

It seems that when I try to start nodes with safenode-manager, it requires either systemd or openrc, yet all my servers use runit as this is my preferred choice. Is there a simple way to get safenod-manager to use some custom script to manage nodes or do I have to start hacking safenode-manager?

This is interesting - why do you use runit? If you get your custom script, would there be any extra, particular advantage for the SN?

1 Like

You can run nodes directly, you don’t need to use safenode-manager.

4 Likes

systemd is bloated and takes over too much… it is like a cancer on the system. I like runit for its simplicity and it’s beauty in how it handles processes. sysvinit, runit, openrc better follow the unix philosophy of modularization… they can easily be switched for another competitive service manager, unlike systemd. Runit captures and logs all stdout,stderr output of all services it manages and knows immediately when one fails due to every service running under a master runit process.

2 Likes

Well, some linux distributions choose runit as the default service mananger, such as devuan, so being compatible with more distributions would be an advantage. I’ve used runit for years simply because I prefer the tidyness and simplicity of its logging and service scripts and the fact that it immediately knows when a process terminates and immediately restarts it with no delay. For instance, to compare with openrc, openrc relies on PID (Process ID) files for managing services, unlike runit, which associates processes directly with service supervision without needing PID files. I’ve run into issues before with pid files…

2 Likes

Thanks for this. For now I will just setup a runit service that launches the nodes directly.

1 Like

For an always on system there is no need to run the nodes as a service. I don’t, just start them with a script that also monitors them. If I restart the machine then just run the script again

3 Likes

While, like yourself, I appreciate the simplicity of runit, aiming to support more linux distros with binaries like safenode-manager is probably not a good use of time. If the goal is for a regular end user to use Autonomi, a massive majority of the regular Joe userbase is on Windows, a few on Mac, and virtually none on Linux.

If you are going after the super users, you still have the same distribution across Linux. A huge majority are going to be running off of RHEL or Debian variants, with some limited users on another Linux or Unix platform. Those that aren’t on RHEL or Debian variants I’m sure are privvy enough to run nodes directly, even if less convenient.

3 Likes

Does this mean you have not been able to start nodes happily using just safenode? - otherwise, are you happy to share your scripts? I can start nodes with node-launchpad but my safenode-manager based script allows node connection to peers but nothing else and I can’t work out what the problem is (see my other post if you are motivated).