GNU bug report logs - #53441
[PATCH] Add service examples to the GNU Shepherd manual

Previous Next

Package: guix-patches;

Reported by: AwesomeAdam54321 <adam.faiz5990 <at> gmail.com>

Date: Sat, 22 Jan 2022 11:29:01 UTC

Severity: normal

Tags: patch, wontfix

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: AwesomeAdam54321 <adam.faiz5990 <at> gmail.com>
To: 53441 <at> debbugs.gnu.org
Cc: AwesomeAdam54321 <adam.faiz5990 <at> gmail.com>
Subject: [bug#53441] [PATCH] Add service examples to the GNU Shepherd manual
Date: Sat, 22 Jan 2022 18:24:16 +0800
---
 doc/shepherd.texi | 62 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 62 insertions(+)

diff --git a/doc/shepherd.texi b/doc/shepherd.texi
index 94f6131..618d852 100644
--- a/doc/shepherd.texi
+++ b/doc/shepherd.texi
@@ -1033,6 +1033,68 @@ also specifies some more initial values for the slots:
                    (restart (...)))))
 @end lisp
 
+Here are some more examples:
+
+@lisp
+(register-services
+  (make <service>
+        #:provides '(cups)
+        #:requires '()
+        #:docstring "The cups service provides the CUPS scheduler."
+        #:start (make-forkexec-constructor '("cupsd" "-f"))
+        #:stop (make-kill-destructor)
+        #:respawn? #t)
+
+  (make <service>
+        #:provides '(cups-browsed)
+        #:requires '(cups)
+        #:docstring "The cups-browsed service makes remote CUPS printers available locally."
+        #:start (make-forkexec-constructor '("cups-browsed"))
+        #:stop (make-kill-destructor)
+        #:respawn? #t)
+
+  (make <service>
+        #:provides '(cron)
+        #:requires '()
+        #:docstring "The cron service provides execution of regularly scheduled commands."
+        #:start (make-forkexec-constructor '("cron" "-f"))
+        #:stop (make-kill-destructor)
+        #:respawn? #t)
+
+ (make <service>
+       #:provides '(guix-daemon)
+       #:requires '()
+       #:docstring "The guix-daemon service accesses the store, and builds derivations on behalf of its clients."
+       #:start (make-forkexec-constructor '("env" "GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale" "LC_ALL=en_US.utf8" "/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon" "--build-users-group=guixbuild"))
+       #:stop (make-kill-destructor)
+       #:respawn? #t)
+
+ (make <service>
+       #:provides '(binfmt-support)
+       #:requires '()
+       #:docstring "Enables support for additional executable binary formats."
+       #:start (make-forkexec-constructor '("update-binfmts" "--enable"))
+       #:stop (make-system-destructor "update-binfmts --disable")
+       #:oneshot? #t)
+
+ (make <service>
+       #:provides '(lm-sensors)
+       #:requires '()
+       #:docstring "Initialize hardware monitoring sensors."
+       #:start (make-system-constructor "sensors -s ; sensors")
+       #:stop (make-system-destructor)
+       #:oneshot? #t)
+
+ (make <service>
+       #:provides '(pulseaudio)
+       #:requires '()
+       #:docstring "The pulseaudio service provides the PulseAudio Sound Server."
+       #:start (make-forkexec-constructor '("pulseaudio" "--daemonize=no" "--log-target=stderr") #:user "user" #:group "audio" #:environment-variables '("HOME=/home/user"))
+       #:stop (make-kill-destructor)
+       #:respawn? #t))
+
+@end lisp
+
 @node Managing User Services
 @section Managing User Services
 
-- 
2.34.0





This bug report was last modified 1 year and 233 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.