- Shepherd 1.0 Release: After 21 years since its inception, Shepherd leaves ZeroVer territory and enters a 1.0 era. It's a major milestone for Guix, with a new logo and a proper website.
- What Shepherd Is: A minimalist but featureful service manager that "herds services", keeping track of their state and dependencies. Consists of
shepherd
(daemon) andherd
(command to interact). - Service Examples: Shows how to use
herd
to check status (e.g.,sudo herd status ntpd
), stop services (e.g.,herd stop ntpd
), and get custom actions (e.g.,sudo herd configuration ntpd
). Also presents a service dependency graph. - Blurring User/Developer Line: Configured and extended in Guile Scheme. Configuration file is a Scheme snippet with examples like defining
ntpd
service. Supports various startup mechanisms. - New in 0.10.x: Added support for timed services, improved
herd status
command, separatedherd status root
, added log rotation, system log, timer, and transient service features, and removed the deprecated GOOPS interface. - Cute Code: Minimal with 7.4K lines of Scheme (excluding tests) due to high-level language and extensibility. Uses concurrent sequential processes (CSP) model and Fibers, inspired by the actor model, resulting in simpler code and better separation of concern.
- What's Next: Possible improvements like dynamic reconfigurable services, integration with cgroups and software suspend. Long-term vision is a distributed and capability-style Shepherd using Spritely Goblins.
- Enjoy: Hope users enjoy Shepherd 1.0. Encourages contributions through various means like graphics, translation, and documentation.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。