Hacker News new | past | comments | ask | show | jobs | submit
By not using systemd, you just shift the complexity around. Now suddenly every program needs to be able to do the double-forking song-and-dance, track PID files, etc.

systemd suffers from the lack of systemic design, but it's still way better than the pile of scripts that it replaced.

> Now suddenly every program needs to be able to...

If by "every program" you mean "your init system", then sure. For example, OpenRC predates systemd by several years, can manage both forking and non-forking services, [0] and supervise non-forking programs with no PID files required.

[0] It even handles both s6 and systemd-style socket-based readiness notification.

Process supervision was not invented by systemd; worse still, it appears that systemd completely ignored earlier solutions in this field.

I was strongly disappointed and shocked when I realize that Lennart was not able to write something like "my solution is better or comparable to daemontools, because".

> Process supervision was not invented by systemd; worse still, it appears that systemd completely ignored earlier solutions in this field.

Facepalm^2. Do you remember the origin story of upstart and systemd?

Daemontools attempted to do similar things, but the only available tool for it was process groups versus cgroups. It also missed the service activation support.

This is the whole service management for OpenBSD

https://github.com/openbsd/src/blob/master/usr.sbin/rcctl/rc...

Then you got the initialization script

https://github.com/openbsd/src/blob/master/etc/rc

Service file can be very small

https://github.com/openbsd/src/blob/master/etc/rc.d/httpd

Powered by

https://github.com/openbsd/src/blob/master/etc/rc.d/rc.subr

Also daemon(3) for running as a system service

https://man.openbsd.org/daemon.3

And no need to track pid. It uses pgrep with the flags and the program name by default. I believe OpenRC does the same.

https://github.com/openbsd/src/blob/f5d74fd467fccdfc60b450a7...

loading story #50474943