El vie, 29 ene 2021 a las 0:07, Casper Ti. Vector escribió: > > Not using s6-linux-init has never been an explicit goal, [...] > > Currently I do not understand the `s6-linux-init-shutdown(d)' way > well, so the old-fashioned way is retained at least for now, [...]
Forgive me if I'm misunderstanding aspects of the architecture, but jugdging from a quick look at the Git repository, I *think* that you could depend on s6-linux-init (the package): * You could replace /etc/slew'/init/rc.boot with s6-linux-init (the program), or a wrapper script around it. s6-linux-init does more or less the same as the current script, except running load_clock.rc (which you could do in /etc/slew'/init/rc.init). * You could move the current /etc/slew/run to /etc/s6-linux-init/current/run-image when installing slew. I'm not sure what skalibs' hiercopy() would do if the latter is just a symlink to the former. * You could replace /etc/slew'/init/rc.halt with a service directory for s6-linux-init-shutdownd in /etc/slew'/run/service, just like you do now for the catch-all logger. s6-linux-init-shutdownd does more or less the same as the current script, except running save_log.rc, save_clock.rc and calling swapoff. You can move that to /etc/slew'/init/rc.fin, or /etc/s6-linux-init/current/rc.shutdown.final if you must do some of it after killing all processes and unmounting filesystems. * You could symlink /etc/s6-linux-init/current/rc.{init,shutdown} to /etc/slew'/init/rc.{init,fin}, perhaps with some minimal modifications. * You could replace calls to s6-svscanctl in /etc/slew'/run/service/.s6-svscan/SIG* with calls to s6-linux-init-hpr if you want to be able to do e.g. 'busybox poweroff''. * You could replace /etc/slew'/run/service/.s6-svscan/finish with something simpler, instead of being a symlink to /etc/slew/init/rc.halt. G.