GNU Shepherd 1.0.6 released
Ludovic Courtès <[email protected]> Wed, 09 Jul 2025 11:25:40 +0200
| Newsgroups | gmane.lisp.guile.sources,gmane.comp.gnu.guix.devel,gmane.lisp.guile.user |
|---|---|
| Message-ID | <[email protected]> |
--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
We are glad to announce version 1.0.6 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-release=
d/
=E2=80=A2 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
=E2=80=9Cinit=E2=80=9D system (PID 1) and also by unprivileged users to m=
anage
per-user daemons=E2=80=94e.g., gpg-agent, tor, privoxy. It supports seve=
ral
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/
=E2=80=A2 Download
Here are the compressed sources and a GPG detached signature:
https://ftp.gnu.org/gnu/shepherd/shepherd-1.0.6.tar.gz
https://ftp.gnu.org/gnu/shepherd/shepherd-1.0.6.tar.gz.sig
Here are the SHA1 and SHA256 checksums:
f5296ae2b896c619c3856fcecadcf74ad8d9b1de shepherd-1.0.6.tar.gz
fc74dfda499a695e650fc5839d39ad538e2e323949b8904afcfaffa34171be33 sheph=
erd-1.0.6.tar.gz
Authenticate the code by downloading the corresponding .sig file:
gpg --verify shepherd-1.0.6.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.6.tar.gz.sig
It is bit-for-bit reproducible from a checkout of the =E2=80=98v1.0.6=E2=
=80=99 tag of
the Git repository.
=E2=80=A2 Changes since version 1.0.5
** =E2=80=98shepherd=E2=80=99 reacts to deletion of its listening socket
(<https://issues.guix.gnu.org/76998>)
If the listening socket of =E2=80=98shepherd=E2=80=99 is deleted, it beco=
mes impossible to
control it. Thus, upon deletion, =E2=80=98shepherd=E2=80=99 tries to reo=
pen it (when running
as PID=C2=A01) or stops itself (when running as an unprivileged user).
The latter behavior is useful when the listening socket is under /run/use=
r/UID
(the default) since that directory is usually deleted as soon as the user
session terminates.
** =E2=80=98shepherd=E2=80=99 and =E2=80=98herd=E2=80=99 honor the =E2=80=
=98SHEPHERD_SOCKET=E2=80=99 environment variable
(<https://codeberg.org/shepherd/shepherd/issues/11>)
Both =E2=80=98shepherd=E2=80=99 and =E2=80=98herd=E2=80=99 now honor the =
new =E2=80=98SHEPHERD_SOCKET=E2=80=99 environment
variable, which specifies the socket file to listen to or to connect to w=
hen
the =E2=80=98--socket=E2=80=99 option is omitted. The =E2=80=98reboot=E2=
=80=99 and =E2=80=98halt=E2=80=99 commands do not
honor it as this usually makes little sense.
** =E2=80=98herd status=E2=80=99 shows clearer information for timers
(<https://codeberg.org/shepherd/shepherd/issues/6>)
Previously, the output of =E2=80=98herd status TIMER=E2=80=99 would start=
with =E2=80=9CIt is running
since=E2=80=A6=E2=80=9D, as is the case with other services. This messag=
e could be
misinterpreted as meaning that the timer=E2=80=99s action is currently ru=
nning, when
it in fact referred to the fact that the timer was =E2=80=9Cactive=E2=80=
=9D, possibly just
awaiting the next alarm.
** New Fish completion
This version comes with completion of the =E2=80=98herd=E2=80=99 command =
for the Fish shell.
** Translations
This version is fully translated in German, Romanian, Swedish, and Ukrain=
ian;
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 [email protected] for discussions.
Many thanks to everyone who reported bugs or contributed patches!
Ludovic, on behalf of the Shepherd herd.
--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQJBBAEBCgArFiEEPORkVYqE/cadtAz7CQsRmT2a67UFAmhuNZUNHGx1ZG9AZ251
Lm9yZwAKCRAJCxGZPZrrtZU7D/0d7gQm0g4DA0p1dCaUaEK4wKboDJSy0+nEtKli
ldsVVWnqNGbUilXD8drJB3mXMPdxdqTWlLRTmX51biC0EEEMfPrW6Iglqt1nAvSn
Phrv2QVJrUpAaud9OxPkgpx0bx0XK//wi/aY3YUGFRasrj4fmOYtR8RzHpJKf8B8
6eHDI0oPGB6Dy7hBMhw3+S+Iz42gwQzIltMrLhZ1XN69RcWZOCMHX/cpC2DAhJ9V
jGYrWy+A4YprzQ2ZFO6RdoXeEbaqMrz2gwRwXOWqxbQZ5cb0cetX2+K8AgNXphjG
XMHH8R9TfKFUYMB4bOXSUO1RI1+nr746mjwipcJpvE3q7k/trNhe/TdGHfKLDOVu
VsJlHoOp30mbEfhX9mdixASxEbKgpg7T9ycNRAQxE16SxsvaN8cmC6nOomst70F3
UKpD9sCg/0CilUlSdj8L81tW+5CNOCamxZsBJGah0PfZDiUfTqYju0JN56Bf7v4D
hYgYXlsNKlctkymjwNaJSn2MLJHn8MVc0Fdw9IPGD8kBBI2TMzhB9crYqgXbH+NX
cLj/pcayc9PtJj+fuewHYMzDM6/3HVqKuDMsdLTp7adhoXD0yevk52PZUBImkR7l
0/8g4YMRuV4CtCWWGCrH+pG6bvlenNStjZltKdsiQjc0F0dhvX5DjjD0MracNmQY
fiGqvw==
=MGEh
-----END PGP SIGNATURE-----
--=-=-=--