From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: Re: What is the philosophy behind shepherd? Date: Mon, 08 Apr 2019 11:25:44 +0200 Message-ID: <87lg0kzw4n.fsf@gnu.org> References: <87o95jlyo0.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:39601) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hDQXC-0001o5-Pn for guix-devel@gnu.org; Mon, 08 Apr 2019 05:25:47 -0400 In-Reply-To: <87o95jlyo0.fsf@gmail.com> (Katherine Cox-Buday's message of "Sat, 06 Apr 2019 14:30:07 -0500") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Katherine Cox-Buday Cc: guix-devel@gnu.org Hello Katherine, Katherine Cox-Buday 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=E2=80=99s 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 =E2=80=9Cminimalism=E2=80=9D or =E2=80=9Cseparation of concerns.=E2= =80=9D :-) Ludo=E2=80=99.