We are pleased to announce the GNU Shepherd version 0.10.1, a bug-fix release of the new 0.10.x series, representing 14 commits over 16 days. The 0.10.x series is a major overhaul towards 1.0, addressing shortcomings and providing new features that help comprehend system state. • 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 “init” system (PID 1) and also by unprivileged users to manage per-user daemons—e.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’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.10.1.tar.gz https://ftp.gnu.org/gnu/shepherd/shepherd-0.10.1.tar.gz.sig Use a mirror for higher download bandwidth: https://ftpmirror.gnu.org/shepherd/shepherd-0.10.1.tar.gz https://ftpmirror.gnu.org/shepherd/shepherd-0.10.1.tar.gz.sig Here are the SHA1 and SHA256 checksums: b0bdd9eda7a44f14d9ef4502263e4a7a2b8d4725 shepherd-0.10.1.tar.gz 3CfSFEodr7TJJvxa3uOgUJo5WB7yg00I/5c8yNxnQJw shepherd-0.10.1.tar.gz The SHA256 checksum is base64 encoded, instead of the hexadecimal encoding that most checksum tools default to. 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.1.tar.gz.sig The signature should match the fingerprint of the following key: pub rsa4096 2014-08-11 [SC] 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 uid [ full ] Ludovic Courtès uid [ full ] Ludovic Courtès uid [ full ] Ludovic Courtès (Inria) 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.1.tar.gz.sig This release was bootstrapped with the following tools: Autoconf 2.71 Automake 1.16.5 Makeinfo 7.0.3 Help2man 1.49.2 • Changes since version 0.10.0 (excerpt from the NEWS file) ** Configurable number of ‘bind’ attempts for endpoints The ‘endpoint’ procedure takes a new ‘#:bind-attempts’ parameter. Its default value is (default-bind-attempts), itself a new SRFI-39 parameter. ** New ‘default-respawn-limit’ parameter This SRFI-39 parameter lets users configure the respawn limit for respawnable services. See “Service De- and Constructors” in the manual. ** ‘herd restart SERVICE’ starts the replacement, not the original service In 0.10.0, when a service had received a replacement (for instance via ‘guix system reconfigure’), using ‘herd restart’ would invoke the ‘start’ method of the original service while installing its replacement in the registry. This would lead to an inconsistency where the registry would show the new service (typically failing to start) while the original service would still be running “in the shadows” (responding to SIGCHLD or to incoming connections, and so on). ** ‘herd restart SERVICE’ does not restart transient services In 0.10.0, ‘herd restart’ could end up attempt to restart transient services, which is bound to fail and could even lead to a deadlock since the service has been terminated. Please report bugs to bug-guix@gnu.org. Join guix-devel@gnu.org for discussions. Ludovic, on behalf of the Shepherd herd.