[Top][All Lists]

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

GNU Shepherd 0.3 released

From: Ludovic Courtès
Subject: GNU Shepherd 0.3 released
Date: Thu, 28 Jan 2016 10:46:15 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

We are pleased to announce the GNU Shepherd version 0.3, the new alpha
release of was used to be called GNU dmd.

• About

  The GNU Daemon Shepherd or GNU Shepherd is a service manager written
  in Guile that looks after the herd of system services.  It provides a
  replacement for the service-managing capabilities of SysV-init (or any
  other init) with a dependency-based system with a convenient
  interface.  The GNU Shepherd may also be used by unprivileged users to
  manage per-user daemons (e.g., tor, privoxy, mcron, etc.)  It is
  written in Guile Scheme, and is configured and extended using Guile.

  The GNU Shepherd is developed jointly with the GNU Guix project; it is
  used as the init system of GuixSD, GNU’s advanced GNU/Linux distribution.

  Before this release, the GNU Shepherd was known as GNU dmd, the
  daemon-managing daemon.

• Download

  Here are the compressed sources and a GPG detached signature[*]:

  Note: source code will eventually be available from

  Use a mirror for higher download bandwidth:

  Here are the MD5 and SHA1 checksums:

  f34cf481a8a7a557771799aea5f7a9a6  shepherd-0.3.tar.gz
  16fab265a22a3d6dfe46fe172e0af388fa3be796  shepherd-0.3.tar.gz

  [*] Use a .sig file to verify that the corresponding file (without the
  .sig suffix) is intact.  First, be sure to download both the .sig file
  and the corresponding tarball.  Then, run a command like this:

    gpg --verify shepherd-0.3.tar.gz.sig

  If that command fails because you don't have the required public key,
  then run this command to import it:

    gpg --keyserver --recv-keys 3D9AEBB5

  and rerun the 'gpg --verify' command.

  This release was bootstrapped with the following tools:
    Autoconf 2.69
    Automake 1.15
    Makeinfo 6.0
    Help2man 1.47.3

• Changes since version 0.2 (excerpt from the NEWS file)

  ** GNU dmd becomes the GNU Shepherd

  The GNU Shepherd herds your daemons!
  See for details.
  As a side effect, many incompatible changes were made:

    - The ‘dmd’ command was renamed to ‘shepherd’.
    - The ‘deco’ command was renamed to ‘herd’.
    - The default system-wide config file is now /etc/shepherd.scm.
    - The default per-user config file is now ~/.config/shepherd/init.scm.
    - The special ‘dmd’ service is now called ‘root’ and ‘shepherd’.  Thus,
      instead of:
         deco load dmd foo.scm
      you would now type:
         herd load root foo.scm
    - Guile modules now live in the (shepherd …) name space.

  ** ‘herd status’ and ‘herd detailed-status’ assumes the ‘root’ service

  That is, ‘herd status’ is equivalent to ‘herd status root’.

  ** ‘herd help’ returns a meaningful help message
  ** ‘shepherd’ stops itself when it receives SIGINT

  This is what happens when ‘shepherd’ is running as PID 1 on GNU/Linux and
  ctrl-alt-del is pressed (see ctrlaltdel(8)).

  ** ‘halt’ and ‘reboot’ connect to the system socket unconditionally
  ** ‘herd’ uses a non-zero exit code upon errors
  ** The ‘root’ service has a new ‘eval’ action
  ** Basic man pages are now provided
  ** ‘make-forkexec-constructor’ has new #:group and #:user parameters
  ** ‘make-forkexec-constructor’ has a new #:pid-file parameter
  ** (shepherd services) now exports ‘make-actions’ and ‘provided-by’
  ** ‘shepherd --pid=FILE’ writes FILE atomically
  ** The communication protocol is now entirely sexp-based (see the manual)
  ** ‘shepherd’ is more robust to misbehaving clients
  ** Cross-compilation is now supported
  ** The build system uses “silent rules” by default
  ** Internally, the coding style of various parts has been improved

Please report bugs to address@hidden
Join address@hidden and address@hidden for discussions.

Thanks to everyone who contributed!

    19  Alex Kost
     1  Andy Wingo
     2  David Michael
     3  David Thompson
     1  Fabian Harfert
    73  Ludovic Courtès
    10  Mathieu Lirzin


Attachment: signature.asc
Description: PGP signature

reply via email to

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