You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Ludovic Courtès e2d324ee67
service: 'stop' no longer prints an extra "has been stopped" message.
12 hours ago
build-aux maint: Add Guix manifest for continuous integration. 2 weeks ago
doc service: Remove now irrelevant 'conflicts-with' methods. 13 hours ago
etc Add SIGSEGV/SIGABRT "crash" handler. 3 years ago
modules service: 'stop' no longer prints an extra "has been stopped" message. 12 hours ago
po Add REPL service. 2 weeks ago
tests service: Remove now irrelevant 'conflicts-with' methods. 13 hours ago
.dir-locals.el support: Add 'let-loop' and use it in 'service-controller'. 6 days ago
.gitignore Augment '.gitignore'. 3 years ago
.guix-authorizations Add '.guix-authorizations'. 10 months ago
.guix-channel maint: Add Guix manifest for continuous integration. 2 weeks ago
ANNOUNCE--0.5 dmd -0.5 announcment 11 years ago
ANNOUNCE--0.6 dmd -0.6 announcment 11 years ago
ANNOUNCE--0.7 dmd -0.7 announcment 11 years ago
AUTHORS Update 'AUTHORS'. 7 years ago
COPYING Upgrade to GPLv3+. 10 years ago
ChangeLog ChangeLog: Rename git repository. 7 years ago
ChangeLog-2003 Change Alfred's address. 9 years ago
Makefile.am Add REPL service. 2 weeks ago
NEWS Update 'NEWS'. 4 months ago
README maint: Add 'guix.scm' file. 2 weeks ago
THANKS Change Alfred's address. 9 years ago
configure.ac build: Bump to version 0.9.3. 4 months ago
guix.scm maint: Add 'guix.scm' file. 2 weeks ago
halt.in Move commands to (shepherd scripts xyz). 7 years ago
herd.in build: Capture the source and object directories of Fibers. 12 months ago
reboot.in Move commands to (shepherd scripts xyz). 7 years ago
shepherd.in build: Capture the source and object directories of Fibers. 12 months ago

README

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

* An -*- outline -*- of the GNU Daemon Shepherd.

** What is the Shepherd?

The GNU Daemon Shepherd or GNU Shepherd is a service manager written in
Guile that looks after the herd of system services, providing a
replacement for the service-managing capabilities of SysV-init (or any
other init) with a dependency-based system with a convenient interface.
It is intended for use on GNU/Linux and GNU/Hurd, but it is supposed to work
on every POSIX-like system where Guile is available.

In a previous life, the GNU Shepherd was known as GNU dmd, the
daemon-managing daemon.

** Requirements

The GNU Shepherd depends on the following pieces of software:

  - GNU Guile 3.0.x or 2.2.x, https://gnu.org/software/guile
  - Fibers 1.1.0 or later, https://github.com/wingo/fibers

** Getting started

Like all GNU packages, this program can be installed using familiar
incantations such as:

  ./configure --prefix=/some/where
  make
  make check
  make install

Actually setting up the Shepherd currently requires some work.  You
should read the Texinfo manual for details:

  info -f shepherd.info

** More information

Detailed instructions on installing the GNU Shepherd are available in
the file `INSTALL'.  A list of user-visible changes between releases can
be found in the file `NEWS'.

See the Git version control history and the `AUTHORS' file for a list of
people who contributed to this software:

  https://git.savannah.gnu.org/cgit/shepherd.git/

A list of people who have been helpful in improving the Shepherd can be
found in `THANKS'.

This program can be distributed under the terms of the GNU General
Public License, version 3 or any later version, see the file `COPYING'
for details.  The Texinfo manual can be distributed under the terms of
the GNU Free Documentation License, version 1.3 or any later version,
see the manual for details.  Note that for any copyright year range
specified as YYYY-ZZZZ in this package, the range specifies every single
year in that closed interval.


The GNU Shepherd home page is at:

  http://www.gnu.org/software/shepherd/

The GNU Shepherd is developed jointly with the GNU Guix project.  Both
are essential components in putting the pieces together to build the GNU
system.  Join us now!

** Hacking

Using GNU Guix, you can enter a development environment by running:

  guix shell -D -f guix.scm

or simply:

  guix shell

You can authenticate the code in this repository by running:

  guix git authenticate				\
      788a6d6f1d5c170db68aa4bbfb77024fdc468ed3	\
      3CE464558A84FDC69DB40CFB090B11993D9AEBB5

The command silently exits with zero on success, and errors out
otherwise.  We recommend invoking it from .git/hooks/pre-push.

** Reporting bugs

Send bug reports to <bug-guix@gnu.org>, with "Shepherd" and the version
number in the Subject line.