We are glad to announce version 1.0.7 of the Shepherd, the next
bug-fix release in the 1.0.x series.

Check out the web site to learn more about the Shepherd 1.0.x series:

  https://gnu.org/software/shepherd/news/2024/12/the-shepherd-1.0.0-released/

• About

  The Shepherd is a service manager written in Guile that looks after
  the herd of daemons running on the system.  It can be used as an
  “init” system (PID 1) and also by unprivileged users to manage
  per-user daemons—e.g., gpg-agent, tor, privoxy.  It supports several
  daemon startup mechanisms, including inetd, systemd-style socket
  activation, and timers.  The Shepherd is configured in Guile Scheme
  and can be extended in the same language.  It builds on a simple
  memory-safe and callback-free programming model.

  The Shepherd is developed jointly with the Guix project; it is used as
  the init system of Guix System and service manager of Guix Home.

  https://www.gnu.org/software/shepherd/

• Download

  Here are the compressed sources and a GPG detached signature:
    https://ftp.gnu.org/gnu/shepherd/shepherd-1.0.7.tar.gz
    https://ftp.gnu.org/gnu/shepherd/shepherd-1.0.7.tar.gz.sig

  Here are the SHA1 and SHA256 checksums:

    a892febba32995e55443698e13af8f38f1f8a938  shepherd-1.0.7.tar.gz
    325a9b7581ee83a15115dfbfbcc247c9eb510f752549a23f3ae912a8ec727597  
shepherd-1.0.7.tar.gz

  Authenticate the code by downloading the corresponding .sig file:

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

  The signing key can be retrieved with:

    gpg --recv-keys 3CE464558A84FDC69DB40CFB090B11993D9AEBB5

  As a last resort to find the key, you can try the official GNU
  keyring:

    wget -q https://ftp.gnu.org/gnu/gnu-keyring.gpg
    gpg --keyring gnu-keyring.gpg --verify shepherd-1.0.7.tar.gz.sig

  It is bit-for-bit reproducible from a checkout of the ‘v1.0.7’ tag of
  the Git repository.


• Changes since version 1.0.6

  ** New #:input-port parameter for ‘make-forkexec-constructor’

  This allows users to specify what standard input to use for the new process
  instead of the default /dev/null.  This is similar to the ‘StandardInput=’
  directive in systemd unit files.

  ** ‘make-forkexec-constructor’ terminates process when log is not created
     (<https://codeberg.org/shepherd/shepherd/issues/25>)

  ‘make-forkexec-constructor’ would mark the service as stopped when its
  #:log-file could not be created, but the corresponding process would keep
  running.  This is now fixed: the process is terminated when its log file could
  not be created.

  ** Service being replaced does not leak control fiber upon respawn
     (<https://codeberg.org/shepherd/shepherd/issues/28>)

  When a service with a previously-registered replacement was respawned, it
  would previously leave behind it a controlling fiber that would no longer be
  used.  This would constitute a (small) memory leak, which could be noticeable
  on systems with long uptimes.

  ** Improve error reporting for wrong-type arguments
     (<https://codeberg.org/shepherd/shepherd/issues/30>)

  It is not uncommon to mistakenly pass arguments of the wrong type to public
  procedures such as ‘make-forkexec-constructor’.  They are now more nicely
  reported, both in the ‘shepherd’ log and on the output of the ‘herd’ command
  when applicable.

  ** Avoid Bash-specific idiom in ‘./configure’ and in tests
     (<https://codeberg.org/shepherd/shepherd/issues/31>)

  Use of ‘type -P’, which shells such as Dash do not support, has been replaced
  by the POSIXy ‘command -v’ in ./configure and in the test suite.

  ** Translations

  This version is fully translated in French, German, Romanian, Slovak, Swedish,
  and Ukrainian; it is partially translated in several other languages.  Check
  out https://translationproject.org/domain/shepherd.html to help translate it
  into your language!



Please report bugs to <https://codeberg.org/shepherd/shepherd/issues>.
Join guix-de...@gnu.org for discussions.

Many thanks to everyone who reported bugs or contributed patches!

Ludovic, on behalf of the Shepherd herd.

Attachment: signature.asc
Description: PGP signature

Reply via email to