unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Katherine Cox-Buday <cox.katherine.e@gmail.com>
Cc: guix-devel@gnu.org
Subject: Re: What is the philosophy behind shepherd?
Date: Mon, 08 Apr 2019 11:25:44 +0200	[thread overview]
Message-ID: <87lg0kzw4n.fsf@gnu.org> (raw)
In-Reply-To: <87o95jlyo0.fsf@gmail.com> (Katherine Cox-Buday's message of "Sat, 06 Apr 2019 14:30:07 -0500")

Hello Katherine,

Katherine Cox-Buday <cox.katherine.e@gmail.com> skribis:

> A couple weeks ago, I was watching a video called "The Tragedy of
> Systemd"[1]. In it, Benno Rice discusses the need for a so-called
> "system layer" which is responding to the many complicated signals
> coming into a system from thing happening (e.g. networks becoming
> available/unavailable, VPNs mucking with DNS and routing tables, etc.).
> He characterizes systemd and things like it as something that lives
> between kernel-space and user-space.
>
> It really opened my eyes to why something like systemd exists rather
> than sticking with the old-style init systems.
>
> Does Shepherd take the stance that it is, or is to become a "system
> layer"?

The Shepherd in its current form is extremely simple, if not
simplistic.  ;-)  All it does is monitor processes.

It does, for instance, handle hardware or networking events.  Instead,
in Guix we just have shepherd spawn eudev, NetworkManager, dbus-daemon,
etc.  Each of these in turn takes care of these other kinds of events.

The downside is that shepherd has a very gross vision of what’s
happening on the system.  This is mitigated in Guix by the fact that the
system service graph does show the big picture.  The upside is that the
Shepherd is not responsible for any of these complex things.

Not sure if that qualifies as a philosophy; if it does, that might be
called “minimalism” or “separation of concerns.”  :-)

Ludo’.

  parent reply	other threads:[~2019-04-08  9:25 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-06 19:30 What is the philosophy behind shepherd? Katherine Cox-Buday
2019-04-06 21:02 ` znavko
2019-04-06 21:21   ` Katherine Cox-Buday
2019-04-07  8:08   ` znavko
2019-04-06 23:08 ` Christopher Lemmer Webber
2019-04-07 13:35   ` Pjotr Prins
2019-04-07 17:52 ` Adam Pribyl
2019-04-08  9:25 ` Ludovic Courtès [this message]
2019-04-11  1:21 ` Danny Milosavljevic

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

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lg0kzw4n.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=cox.katherine.e@gmail.com \
    --cc=guix-devel@gnu.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).