GNU Shepherd 0.10.4 released

Ludovic Courtès <[email protected]> Sun, 31 Mar 2024 16:58:56 +0200
Newsgroups gmane.comp.gnu.guix.devel,gmane.lisp.guile.sources,gmane.lisp.guile.user
Message-ID <[email protected]>
--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

We are pleased to announce the GNU Shepherd version 0.10.4, a bug-fix
release of the new 0.10.x series, representing 7 commits over 3 months.

The 0.10.x series is a major overhaul towards 1.0, addressing shortcomings
and providing new features that help comprehend system state.


=E2=80=A2 About

  The GNU 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
  =E2=80=9Cinit=E2=80=9D system (PID 1) and also by unprivileged users to m=
anage
  per-user daemons=E2=80=94e.g., tor, privoxy, mcron.  It supports several
  daemon startup mechanisms, including inetd and systemd-style socket
  activation.  The GNU 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 GNU Shepherd is developed jointly with the GNU Guix project; it is
  used as the init system of Guix, GNU=E2=80=99s advanced GNU/Linux distrib=
ution.

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


=E2=80=A2 Download

  For a summary of changes and contributors, see:
    https://git.sv.gnu.org/gitweb/?p=3Dshepherd.git;a=3Dshortlog;h=3Dv0.10.4
  or run this command from a git-cloned shepherd directory:
    git shortlog v0.10.3..v0.10.4

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

  Use a mirror for higher download bandwidth:
    https://ftpmirror.gnu.org/shepherd/shepherd-0.10.4.tar.gz
    https://ftpmirror.gnu.org/shepherd/shepherd-0.10.4.tar.gz.sig

  Here are the SHA1 and SHA256 checksums:

    1a547efd9416b492b89d010cb10cfd1b5cd35945  shepherd-0.10.4.tar.gz
    fiLRTcdckD42Ng5I5VAPj+GQT6E04tA+VBKTkKjIBgg=3D  shepherd-0.10.4.tar.gz

  Verify the base64 SHA256 checksum with cksum -a sha256 --check
  from coreutils-9.2 or OpenBSD's cksum since 2007.

  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.10.4.tar.gz.sig

  sh: line 1: gpg: command not found
  If that command fails because you don't have the required public key,
  or that public key has expired, try the following commands to retrieve
  or refresh it, and then rerun the 'gpg --verify' command.

    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-0.10.4.tar.gz.sig

  This release was bootstrapped with the following tools:
    Autoconf 2.71
    Automake 1.16.5
    Gettext 0.21
    Makeinfo 7.1


=E2=80=A2 Changes since version 0.10.3 (excerpt from the NEWS file)

  ** =E2=80=98herd unload root all=E2=80=99 stops services before unregiste=
ring them

  Previously, since version 0.10.0, =E2=80=98herd unload root all=E2=80=99 =
would unregister all
  services without first stopping them, leaving the system in a bogus state.

  ** =E2=80=98shepherd=E2=80=99 no longer bails out when reboot(2) returns =
ENOSYS

  In runc environments (among others), reboot(RB_DISABLE_CAD) returns ENOSY=
S,
  which would lead shepherd to fail to start.  This would prevent the use of
  shepherd in some containerized environments such as those of GitLab-CI.

  ** REPL service no longer attempts to enter debugger upon error

  The REPL service would spawn a regular REPL that enters a debugger (or
  =E2=80=9Crecursive prompt=E2=80=9D) by default.  While this is a great fe=
ature, it could
  easily render the shepherd REPL unusable because the continuation of the
  debugger prompt could not always be suspended=E2=80=94see the thread at
  https://lists.gnu.org/archive/html/guix-devel/2024-01/msg00064.html.  To =
avoid
  that, the REPL now simply displays a backtrace upon error.


Please report bugs to [email protected].
Join [email protected] for discussions.

Ludovic, on behalf of the Shepherd herd.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQJBBAEBCgArFiEEPORkVYqE/cadtAz7CQsRmT2a67UFAmYJejENHGx1ZG9AZ251
Lm9yZwAKCRAJCxGZPZrrtfOYEACJs4kB9NwXwZMRkwJ5WTYVzfXUYhdhOCz8Jmhp
T5YdIrdi095N+n3cwdXkXtqdX2TK+UmQDi6DbHP/KuBWy4DaSOGVVLCRuVaDfKVM
/b0jBgwRtYxA3r1KyXkJZF1aCU6gsGu34ByEpNrX52nAwLmVR8GVibrMVsHpb+nu
ZpaZ0CO6tbuQxzKuYRq13Mx74eTgOSRJiIHxdzKO7BE6XR8+aNQ/isvCvo92TI2D
gCnzKoKyrsNwS8P1e2Gv2awSbT5O305rrwdvQbgIgVk4r4+ilDaP+awxnkNUDVDh
6wRv8jnCrvsBg7zg1o6uNZpROG42OHaZEiqQC75zYQ7/idNkUFGeATjZpNMUvpu8
Q8iTY3p0255T/piHjjT+Kp4zAKyJDUqX8Zkhy/M8c7Mn38PpqDIP8dQ/HluNU7Lh
silSs1INIZJKkHEb4Hzc+XBcyM2o7CTVFe9UVFkB1xqi6LycjCoujjFCUdIiU8I7
KtaK8690L65iA2hxfVPg64QZzMfZVgbnnKQE5KMB/T6q2uyf/fNvVXsq+ObaXn4D
yxaqM4wnkTsCdXYqKul+BQiJzjmq/tDlkta2Xo4Tbs0G1BHJDIhJJzl5Zu7t6WRZ
wPU8M8dXVnl30zDUNYUpUOasF+x3ijvMgKOydNsqygHub2i91UYzu88+H45f5mco
FvR1SA==
=jLX1
-----END PGP SIGNATURE-----
--=-=-=--