After 21 years of development since the release of the first alpha, version 1.0 of the GNU Shepherd Service Manager is available. As with the first major version, the development team made several optimizations and introduced new functions.
Advertisement

Support for scheduled services
Order herd status SERVICE
Version 1.0 provides more detailed information about services, including the main PID (process identifier) ​​and recently logged messages.
Also new is support for scheduled services similar to cron, a service on Unix-like systems that automatically executes scheduled tasks. Additionally, the update introduces a log rotation service that manages old log files.
New services replace old services
a new one system-log
Service replaces traditional service syslogd
By receiving messages from applications on the /dev/log socket and forwarding them to log files according to administrator rules. Furthermore, it replaces timer
-Service at
-Orders for delayed execution of orders. Service transient
Allows you to run commands in the background, like systemd-run
,
On GNU/Linux, GNU Shepherd now supports the function kexec
To boot directly into the new kernel. was obviously an option --silent
From shepherd
Till now “quietly” ignored. According to the release notes, this is no longer the case with the update. Additionally, the tool now also documents deprecation warnings. The development team has also removed the old GOOPS interface.
Bit by bit
so called source tarball shepherd-1.0.0.tar.gz
According to the release notes of version 1.0, it can be reproduced bit-for-bit from the corresponding Git tag, which is intended to increase the security of Service Manager. Additionally, supports GNU Shepherd 1.0 gzip
And zstd
In log rotation.
Several translations are available for GNU Shepherd, including German, Romanian, Swedish, and Ukrainian. Another eight languages ​​are partially supported. Provides an overview of translationproject.org,
A look under the hood
Written in the Guile programming language, the official extension language for the GNU operating system, GNU Shepherd manages daemons (background programs) on a system. The Service Manager can be used as the main program (PID 1) when the system starts and by users to control their services.
Configuration is done in Guile Scheme, which is an implementation of the Scheme programming language. Shepherd supports a variety of ways to start services, such as scheduled actions and systemd-like socket activation. Version 1.0 requires version 3.x of the Guile language – 2.2 is no longer supported.
More about GNU Shepherd 1.0 Can be found in the release notes,
(MDO)
