[Top][All Lists]

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

GNU Shepherd 0.9.1 released

From: Ludovic Courtès
Subject: GNU Shepherd 0.9.1 released
Date: Sun, 22 May 2022 18:33:09 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)

We are pleased to announce the GNU Shepherd version 0.9.1.  This is a
bug-fix release, including a backward-compatible interface change,
representing 18 commits by 2 people over 6 weeks.

• 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 Guix, GNU’s advanced GNU/Linux distribution.

• Download

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

  Use a mirror for higher download bandwidth:

  Here are the SHA1 and SHA256 checksums:

  52bcd330ba7b4c77d4183d58d0a8d1b798761ff6  shepherd-0.9.1.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.9.1.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 3CE464558A84FDC69DB40CFB090B11993D9AEBB5

  and rerun the 'gpg --verify' command.

  This release was bootstrapped with the following tools:
    Autoconf 2.71
    Automake 1.16.5
    Makeinfo 6.7
    Help2man 1.48.5

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

  ** ‘make-inetd-constructor’ now accepts a list of endpoints

  In 0.9.0, ‘make-inetd-constructor’ would take a single address as returned by
  ‘make-socket-address’.  This was insufficiently flexible since it didn’t let
  you have an inetd service with multiple endpoints.  ‘make-inetd-constructor’
  now takes a list of endpoints, similar to what ‘make-systemd-constructor’
  already did.

  For compatibility with 0.9.0, if the second argument to
  ‘make-systemd-constructor’ is an address, it is automatically converted to a
  list of endpoints.  This behavior will be preserved for at least the whole
  0.9.x series.

  ** ‘AF_INET6’ endpoints are now interpreted as IPv6-only

  In 0.9.0, using an ‘AF_INET6’ endpoint for ‘make-systemd-constructor’ would
  usually have the effect of making the service available on both IPv6 and IPv4.
  This is due to the default behavior of Linux, which is to bind IPv6 addresses
  as IPv4 as well (the default behavior can be changed by running
  ‘sysctl net.ipv6.bindv6only 1’).

  ‘AF_INET6’ endpoints are now interpreted as IPv6-only.  Thus, if a service is
  to be made available both as IPv6 and IPv4, two endpoints must be used.

  ** ‘shepherd’ reports whether a service is transient
  ** ‘herd status’ shows whether a service is transient
  ** Fix possible file descriptor leak in ‘make-inetd-constructor’
  ** Fix value of ‘LISTEN_FDNAMES’ variable set by ‘make-systemd-constructor’
  ** Fix crash when logging IPv6 addresses
  ** ‘start-in-the-background’ returns *unspecified* instead of zero values

Please report bugs to
Join for discussions.

Ludovic, on behalf of the Shepherd herd.

Attachment: signature.asc
Description: PGP signature

reply via email to

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