GNU Shepherd 0.9.3 released
Ludovic Courtès <[email protected]> Thu, 17 Nov 2022 10:39:19 +0100
| 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 pleased to announce the GNU Shepherd version 0.9.3. This is a
bug-fix release, representing 16 commits by 1 person over 2 months.
=E2=80=A2 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
dependency-based management for system services: daemons such as
=E2=80=98sshd=E2=80=99, programs such as Xorg, as well as user-provided a=
ctions. The
GNU Shepherd may also be used by unprivileged users to manage per-user
daemons=E2=80=94e.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=E2=80=99s advanced GNU/Linux distrib=
ution.
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-0.9.3.tar.gz
https://ftp.gnu.org/gnu/shepherd/shepherd-0.9.3.tar.gz.sig
Use a mirror for higher download bandwidth:
https://ftpmirror.gnu.org/shepherd/shepherd-0.9.3.tar.gz
https://ftpmirror.gnu.org/shepherd/shepherd-0.9.3.tar.gz.sig
Here are the SHA1 and SHA256 checksums:
bb6694367f5f0a620c4999050133dad6d3754ecf shepherd-0.9.3.tar.gz
62b0e5637c11178cb3523e04614a67b137f8627ee7d358ac2ac0c13e02f6c263 shepher=
d-0.9.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.9.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 keys.openpgp.org \
--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 7.0
Help2man 1.48.5
=E2=80=A2 Changes since version 0.9.2 (excerpt from the NEWS file)
** Service =E2=80=98stop=E2=80=99 is now synchronous
<https://issues.guix.gnu.org/58485>
Previously, =E2=80=98herd stop SERVICE=E2=80=99 would send SIGTERM to the=
service=E2=80=99s process
and immediately move on without waiting for the process to actually termi=
nate.
This could cause problems for example when running =E2=80=98herd restart =
SERVICE=E2=80=99:
there was a possibility that a new instance of the service would be spawn=
ed
before the previous one had terminated.
This is now fixed: =E2=80=98stop=E2=80=99 only returns once the process h=
as actually
terminated. Furthermore, the destructor returned by =E2=80=98make-kill-d=
estructor=E2=80=99
sends SIGKILL after some grace period has expired if the process is still
around; this is configurable with #:grace-period and
=E2=80=98default-process-termination-grace-period=E2=80=99.
** Non-blocking replacement for =E2=80=98system*=E2=80=99
<https://issues.guix.gnu.org/56674>.
Service code can now call =E2=80=98system*=E2=80=99 lightheartedly: sheph=
erd installs a
cooperative, non-blocking replacement for Guile=E2=80=99s =E2=80=98system=
*=E2=80=99 procedure.
Concretely, it means that it=E2=80=99s OK to use =E2=80=98system*=E2=80=
=99, say, in the =E2=80=98start=E2=80=99 method
of a service: it won=E2=80=99t block shepherd, one can still interact wit=
h it with
=E2=80=98herd=E2=80=99.
** Fewer continuation barriers
The =E2=80=98stop=E2=80=99 method of services, and =E2=80=98eval=E2=80=99=
and =E2=80=98load=E2=80=99 actions of the =E2=80=98root=E2=80=99
service, and a few other points acted as =E2=80=9Ccontinuation barriers=
=E2=80=9D, meaning that
user code would not be allowed to suspend the current fiber for example by
calling the =E2=80=98sleep=E2=80=99 procedure from (fiber). These limita=
tions have been
lifted.
** Reduced memory consumption while logging
Service output logging allocates less memory than before.
** Updated translations: ro, sr
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/cadtAz7CQsRmT2a67UFAmN2AUcNHGx1ZG9AZ251
Lm9yZwAKCRAJCxGZPZrrtWXyD/4k6SRgN+wJkmeNhSceCKXSQW2TSJKDqfV0icL2
K25cqhponC3/sUDoaSAUhPE0KvAi0i5+JKCisVvCkmQNe5OOnYheJXypiEG/EwZk
3/kc5+gvx71aryD2z2oQVQC8sG0qbeZgATAXutktfHVX2tav/OLz5eIPAGFuL+vX
IXEg6Rd90XnwqBnFvlObVM1Ry78eAFNxBNXGLXLyvPhQ2h2bk9d16GPCDyd16aRX
mZyTBSrBNDMKRdzHd7fg40abACcXADmM7jcTQXw0AHxBoD7mdf+z4DfSvJEJULAx
v3t4Za0vEStUYsxsKscSa7d+ZYwlLGOXYar6X8pFHE5RWJgP/DMAFGFm/cGoDGy6
3t5GQ0oaAwUcivErne/3tacbkqtPDOrUQhc8g7FgJ1rL3IuVHgdjZ424pZ1N6eH4
YziGAFXuDnAcO5KGi6tAfPWljFIkQBMR1j/Cl6TzpMRp/YHNQYaGTEtXfxLQuQra
DjyvN828HKw4RyFz5RhJV1m+99tZ6nhsFbV0vdjqY8k2RCPabpCFQsrfotn9TERF
q7sLC1uNPy5ajI0GkcE6p+Z6U5HF5lyhIHfelRG72QKc7U4m5kl/CpUSHdbyDNjA
Vid94AoQj26JYUmKknuF9WX0rf3Qcy+jkUfL8w4z8q3eLeehPmjLv+pYnSUUQupS
N78OdQ==
=QRUU
-----END PGP SIGNATURE-----
--=-=-=--