On 26/07/2015 04:35, Steve Litt wrote:
For all I know it might amelliorate the other problem: insane init
script complexity, by putting more of the details in the s6 run script.

 I'm not sure that would be a good trade-off. An init script is run once
at boot time - or whenever you're changing the machine state - whereas
a ./run script is run every time the service starts, i.e at least as
often. Better move as much complexity as you can *outside* the run script.


Me, I'd just go with s6 out of the box, but I guess OpenRC is more
corporationally correct or something like that

 What OpenRC does and s6 alone does not is dependency management,
which is important for heavyset services (including, I guess, desktop
setups). A supervision suite does not handle dependencies between
oneshot services and longrun services, and only implicitly handles
dependencies between longrun services (by letting them restart until
everything works). A real dependency-based systems starts services
in the order they are needed, which is all in all a good thing.

 If you want to test a supervision suite + dependency management system
combo doing the right thing, try out anopa, or the publically available
preliminary version of s6-rc. ;)


it can use s6 to do the supervision (and sysvinit to do the PID1, you
can't make this up, folks).

 OpenRC runs s6-svscan as one of its services, so it can't use it as
init - so it needs to run under another init.
 But that's not such a big deal. When switching "init systems", the rc
subsystem is really the difficult part. Once you have a working rc
system, it's not too hard to switch pid 1.

--
 Laurent

Reply via email to