From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [RFC 0/3] init: Add s6 as init system
Date: Mon, 11 Feb 2019 22:40:00 +0100 [thread overview]
Message-ID: <20190211214000.GA5977@itchy> (raw)
In-Reply-To: <20190208122023.GA16579@lwo1-lhp-f71841>
On 2019-02-08 14:20, Vadym Kochan wrote:
> Hi Eric,
>
> On Sun, Jan 20, 2019 at 04:31:51PM +0100, Eric Le Bihan wrote:
> > Hi!
> > On 2019-01-16 23:51, Vadim Kochan wrote:
> > > Add new system init support (BR2_INIT_S6) based on s6 suite. This is very-very
> > > basic support which does not have any setup automation logic (but only getty)
> > > but it allows to install custom s6-rc services in a bit easier way by the
> > > board. All s6-rc services which were copied by rootfs-overlay or post-build
> > > will be compiled as s6-rc db into /etc/s6-rc/compiled-initial, which also has
> > > /etc/s6-rc/compiled link to easy replace it in runtime.
> > >
> > > In case if such kind of change will be merged, then may be it would be good to
> > > think about of some packages integration into s6-rc system.
> > >
> > > Vadim Kochan (3):
> > > package/s6-linux-init: Build also for the host
> > > package/s6-linux-init: Allow to install as init system
> > > package/s6-rc: Allow to integrate s6-rc services
> > >
> > > package/s6-linux-init/s6-linux-init.mk | 69 +++++++++++++++++++++++++++++++++-
> > > package/s6-rc/rc.init | 4 ++
> > > package/s6-rc/rc.shutdown | 3 ++
> > > package/s6-rc/s6-rc.mk | 32 ++++++++++++++++
> > > system/Config.in | 9 ++++-
> > > 5 files changed, 114 insertions(+), 3 deletions(-)
> > > create mode 100644 package/s6-rc/rc.init
> > > create mode 100644 package/s6-rc/rc.shutdown
> > >
> > > --
> > > 2.14.1
> > >
> >
> > I worked on a s6-based init system eons ago [1], but without using a
> > host variant of s6-linux-init.
> >
> > I'll test your patches.
> >
> > [1] https://github.com/elebihan/br2-ext-skarnet
> >
> > Regards,
> >
> > --
> > ELB
>
> Do you have any conceptual comments regarding this ? Also I think may be
> it's better to have /etc/s6-rc into /etc/s6/rc.
I tested your series and it works fine. As you are using the file system
pre and post command hooks to compile the database services, this is
cleaner than using a post-build script as done in my external
customization.
I had not used s6-linux-init-maker at that time, but favored a
hand-written init. Now this tool does the job, so it is OK to use it.
If this series is applied and a s6-based init option is available to the
user, I think that providing kerneld/syslogd via s6-log may be useful.
The same may apply to network configuration. The selling point of a
s6-based init system is the service supervision and having the basic
services available and supervised contribute to it.
But adding support for s6-compliant services is tricky, as unlike
systemd, services are not available as files but as directories. So
providing some for the basic services in Buildroot may clutter the
source tree. My approach was to provide them via dedicated projects
(s6-br2-init{skeleton,services}), but there may be a cleaner one. The
nosh init system [1] provides a tool to convert systemd services, so may
be such a tool for s6 may do the trick.
As for /etc/s6-rc vs. /etc/s6/rc, the later may indeed be better, as
there is already /etc/s6/init.
[1] https://jdebp.eu/Softwares/nosh/
Regards,
--
ELB
prev parent reply other threads:[~2019-02-11 21:40 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-16 21:51 [Buildroot] [RFC 0/3] init: Add s6 as init system Vadim Kochan
2019-01-16 21:51 ` [Buildroot] [RFC 1/3] package/s6-linux-init: Build also for the host Vadim Kochan
2019-01-16 21:51 ` [Buildroot] [RFC 2/3] package/s6-linux-init: Allow to install as init system Vadim Kochan
2019-01-16 21:51 ` [Buildroot] [RFC 3/3] package/s6-rc: Allow to integrate s6-rc services Vadim Kochan
2019-01-20 15:31 ` [Buildroot] [RFC 0/3] init: Add s6 as init system Eric Le Bihan
2019-01-30 20:50 ` Thomas De Schampheleire
2019-02-08 12:20 ` Vadym Kochan
2019-02-11 21:40 ` Eric Le Bihan [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190211214000.GA5977@itchy \
--to=eric.le.bihan.dev@free.fr \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox