GNU Shepherd 0.9.3 released
Ludovic Courtès <[email protected]>
| Newsgroups | gmane.org.fsf.announce |
|---|---|
| Message-ID | <[email protected]> |
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.
• 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
‘sshd’, programs such as Xorg, as well as user-provided actions. 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.
https://www.gnu.org/software/shepherd/
• 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 shepherd-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
• Changes since version 0.9.2 (excerpt from the NEWS file)
** Service ‘stop’ is now synchronous
<https://issues.guix.gnu.org/58485>
Previously, ‘herd stop SERVICE’ would send SIGTERM to the service’s process
and immediately move on without waiting for the process to actually terminate.
This could cause problems for example when running ‘herd restart SERVICE’:
there was a possibility that a new instance of the service would be spawned
before the previous one had terminated.
This is now fixed: ‘stop’ only returns once the process has actually
terminated. Furthermore, the destructor returned by ‘make-kill-destructor’
sends SIGKILL after some grace period has expired if the process is still
around; this is configurable with #:grace-period and
‘default-process-termination-grace-period’.
** Non-blocking replacement for ‘system*’
<https://issues.guix.gnu.org/56674>.
Service code can now call ‘system*’ lightheartedly: shepherd installs a
cooperative, non-blocking replacement for Guile’s ‘system*’ procedure.
Concretely, it means that it’s OK to use ‘system*’, say, in the ‘start’ method
of a service: it won’t block shepherd, one can still interact with it with
‘herd’.
** Fewer continuation barriers
The ‘stop’ method of services, and ‘eval’ and ‘load’ actions of the ‘root’
service, and a few other points acted as “continuation barriers”, meaning that
user code would not be allowed to suspend the current fiber for example by
calling the ‘sleep’ procedure from (fiber). These limitations 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.
signature.asc
(application/pgp-signature, 853 B)
-----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-----