in this case systemd compatibility can be trivially achieved, so there is no real reason to abstain from it.
"systemd compatibility" makes no sense here. We are talking about runit or s6 as an init system: by definition, in that context, there is no systemd, no interaction with systemd, nothing that requires compatibility with systemd. If by "compatibility" you mean: doing the same things that systemd does, following the same API, aligning on its choices, then I have a question for you: are you also in systemd discussion spaces and asking them to align on the design choices made by s6? Why not?
systemd uses real time signals since they were introduced for this purpose: signals without an already assigned default meaning, free for application (ab)use, hence the systemd approach is absolutely correct here.
systemd uses a mechanism that it chose, and that works. sysvinit uses another mechanism, and that works. busybox init uses another mechanism, and that works. runit uses another mechanism, and that works. s6 uses another mechanism, and that works. What do you have trouble understanding?
#else /* probably OpenBSD */ #endif
Ah yes, very accurate heuristics, absolutely up to par with my code quality standards. 10/10, would throw into the garbage bin again. -- Laurent