RE: B/LFS-s6 Project

From: James Powell <>
Date: Tue, 24 Jun 2014 19:14:51 +0000

We've been implementing Runit scripts in a clean room design, basically developing new scripts from scratch.

A lot of Runit implementations utilize sysvinit in a backbone design to utilize the standard reboot and shutdown tools. Our design is different, so we want to avoid reusing run scripts already made as some make calls unassociated with Runit. We want to utilize some scripting of sysvinit, but not sysvinit itself in any way as much as possible, and natively use Runit to perform the init actions.

The same will go for s6. Right now our first task is building a clean room LFS to deploy s6 into. The only imported tools for s6 we will be utilizing are the execline and skalibs packages. The rest will be native GNU/Linux.

One hope we are wanting to test is if Runit service scripts can actually be reused in s6. This would promote a high level of compatibility with our current work, leaving only the native s6 logging tools to supplement the Runit logging tool, not to mention save a lot of research time.

However, as far as the one-shots of stage-1, while we recycled sysvinit scripts for Runit, we would like to have s6's stage-1s script contain all the one-shot init information if possible using all the core functions of the base sysvinit scripts of LFS, while invoking one-shots using checked triggers as previously described, the same with stage-3s shutdown sequence also. We want s6 to be more native to itself script-wise.

I should have the base system up and running within a week in my spare time, so I'll start from the example implementation provided and work my way out from there.

> Date: Tue, 24 Jun 2014 10:06:56 +0100
> From:
> To:
> Subject: Re: B/LFS-s6 Project
> I'm currently working with Jim to help him set up a way of
> booting a LFS system with s6 while using standard utilities
> and sticking to the FHS.
> Once the one-time initialization (which includes stage 1 and
> a one-time initialization script that runs in stage 2, when
> s6-svscan is already running) is complete, I expect a s6-based
> system to be very close to a runit-based system. Service
> directories are similar, the installation and administration
> principles are similar. The main difference between s6 and
> runit, for a distribution builder, is boot time.
> The shutdown script, .../.s6-svscan/finish, can be directly
> translated from /etc/runit/3; and /etc/runit/1 can be the
> basis for a s6-based /sbin/init, but since there is no fallback
> with s6, /sbin/init should be minimal and the rest of the
> one-time initialization happening in /etc/runit/1 should run
> once s6-svscan has taken over.
> --
> Laurent
Received on Tue Jun 24 2014 - 19:14:51 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:44:18 UTC