For variety, I also present my result of doing this using the rc(1)
shell (the Byron Rakitzis implementation [1]). Boot up an Alpine Linux
in a virtual machine, follow the README in the tarball, and you would be
able to get a working s6/s6-rc/rc (well the name...) based system. It
is admittedly designed based on Alpine, but should be to some extent
portable: Alpine uses a user space based on busybox, so I think most
commands should be able to run as is, since a user space based on
GNU/util-linux/... would be more permissive in most aspects.
[1] <
https://github.com/rakitzis/rc>.
Why still using a shell has just been thoroughly explained by Laurent
(I think a point to add is that using the shell for run scripts makes
instanced services very easy to implement); the rationale for using
rc(1) was explained in [2], which is also where I first posted my
results. The current version has accumulated a lot of updates, and
should be significantly better.
[2] <
https://skarnet.org/cgi-bin/archive.cgi?
2:msp:1375:lbimjlgggoajjofdbeoc>
(Sorry for all those grammatical mistakes; the technical mistakes
have mostly been corrected in its follow-ups, but one remains:
there actually *is* a `$PIPESTATUS' counterpart in rc(1), since the
`$status' for a pipeline in the [1] implementation is a list of all
exit codes from the pipeline).
On Fri, May 19, 2017 at 07:53:12PM +0000, Laurent Bercot wrote:
> Third, converting rc scripts from a distribution to a s6-rc service
> database is currently the *most valuable contribution* you can do for
> s6-rc. I'm not joking: what s6 and s6-rc need right now is adoption
> by mainstream distribution, and the limiting factor is clearly the
> conversion from sysvrc or OpenRC scripts to the s6-rc source format.
> So if you're going to attempt this for Slackware, you have my whole
> support, and my thanks; but this is a large task, and does not need
> extra porting work piled onto it. If you can do that, it will be a
> big, and useful, achievement, even if the scripts are still shell
> scripts.
--
My current OpenPGP key:
RSA4096/0x227E8CAAB7AA186C (expires: 2020.10.19)
7077 7781 B859 5166 AE07 0286 227E 8CAA B7AA 186C
Received on Sat May 20 2017 - 04:20:30 UTC