Re: s6-rc user services on Gentoo

From: Alexis <flexibeast_at_gmail.com>
Date: Wed, 03 Apr 2024 11:12:15 +1100

Guillermo <gdiazhartusch_at_gmail.com> writes:

> 1) Why are you telling dbus-daemon to --fork? That defeats the
> purpose
> of service supervision. The service definition for the
> system-wide
> message bus that I have on a Gentoo VM of mine with s6 + s6-rc +
> s6-linux-init uses --nofork.

> 2) The presence of a notification-fd file tells s6 that
> dbus-daemon
> can be somehow coerced into producing an s6-style readiness
> notification using file descriptor 3 without changing its code,
> are
> you sure that's the case with this script? My service definition
> for
> the system-wide message bus polls for readiness using
> s6-notifyoncheck
> and a dbus-send command...

These are both very reasonable questions, with the same answer: i
hadn't got as far as actually properly setting up the services
yet, but was merely creating 'placeholders' to (as i described in
my email to Hoël) get the basic overall setup working. So the
`dbus-daemon` command is literally just copy-and-pasted from what
i currently use in my .zlogin to start a session bus. My
apologies; i should have made this clear in my original post.

Re. 1, i'm certainly aware that forking is undesirable in this
context; cf. a comment of mine i posted yesterday, the second one
in this comments section:
https://utcc.utoronto.ca/~cks/space/blog/linux/SystemdSocketActivationThoughts?showcomments#comments

Re. 2, off the top of my head, i imagine you're correct; i haven't
yet thought about it / looked at it in any detail.

> Most of the content is from around 2017, a time in which the s6
> suite
> was less known, information in places other than the skarnet.org
> website was lacking and inaccurate —despite official
> documentation,
> while being short and to the point, has always been quite good
> and
> complete IMO; it seemed people just didn't bother reading it?
> [1]—,
> and there weren't many usage examples around.
>
> [1] I think I never said it, but what made me look at s6 for the
> first
> time (s6-rc and s6-linux-init didn't exist back then), after
> seeing a
> post in the Gentoo forums, was its documentation ("OK, nice
> explanations, let's try this").

*nod* Fair enough! Yeah, as i wrote in the first comment in the
 comments section i linked to above:

> [A]s someone who spends a lot of time writing and maintaining
> documentation, i know that people apparently don't like reading
> the documentation. :-)

At the same time, i know that many people (including myself!) can
sometimes struggle to "put all the pieces" together (either
properly, or at all), even with excellent reference docs (as in
the case of s6), in the absence of some basic, concrete, "actual
implementation" examples. Like, the mdoc(7) man page is excellent
and comprehensive, but to help people to get a sense of how easy
it can be to use mdoc(7) in practice, and hopefully encourage them
to use it, i wrote a quickstart guide:

  https://github.com/flexibeast/guides/blob/master/mdoc-quickstart.md

Which is the sort of thing i'm hoping to do for s6-rc. :-)


Alexis.
Received on Wed Apr 03 2024 - 02:12:15 CEST

This archive was generated by hypermail 2.4.0 : Wed Apr 03 2024 - 02:12:51 CEST