guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What is the philosophy behind shepherd?


From: Ludovic Courtès
Subject: Re: What is the philosophy behind shepherd?
Date: Mon, 08 Apr 2019 11:25:44 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Hello Katherine,

Katherine Cox-Buday <address@hidden> 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’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]