Subject: [bug#61146] [PATCH Shepherd] doc: Update user services example for `services already running'.

From: Janneke Nieuwenhuizen <[email-masked]>
Date: Sun, 29 Jan 2023 12:27:17 +0100

Hi,

I've been struggling with my home shepherd startup for a while,
wondering what changed, overlooking this new error message in the log.
Shouldn't this change have been mentioned in NEWS?  FWIW, this now
faulty example is also shown here

    https://guix.gnu.org/eo/blog/2020/gnu-shepherd-user-services/

Anyway, as the change was made quite some time ago I imagine that any
other users will have figured this out by now.

Greetings,
Janneke

>From de09ecb16b547830f0df1efc42c78affaaf9c9c4 Mon Sep 17 00:00:00 2001
From: "Jan (janneke) Nieuwenhuizen" <[email-masked]>
Date: Sun, 29 Jan 2023 12:05:32 +0100
Subject: [PATCH Shepherd] doc: Update user services example for `services
 already running'.

The previously suggested example now gives

    Services already running, so not daemonizing.

which is fixed by daemonizing right away.

This is a follow-up to commit
    3197c1c161d10b7f76771a2943f20fdafc5cc14a
    service: 'daemonize' action does nothing when services are already running.

* doc/shepherd.texi (Managing User Services): Daemonize before starting
services.
---
 doc/shepherd.texi | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/doc/shepherd.texi b/doc/shepherd.texi
index d25a8f2..538c334 100644
--- a/doc/shepherd.texi
+++ b/doc/shepherd.texi
@@ -13,7 +13,7 @@ Copyright @copyright{} @value{OLD-YEARS} Wolfgang J@"ahrling@*
 Copyright @copyright{} @value{NEW-YEARS} Ludovic Courtès@*
 Copyright @copyright{} 2020 Brice Waegeneire@*
 Copyright @copyright{} 2020 Oleg Pykhalov
-Copyright @copyright{} 2020 Jan (janneke) Nieuwenhuizen@*
+Copyright @copyright{} 2020, 2023 Jan (janneke) Nieuwenhuizen@*
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -1353,6 +1353,9 @@ load individual service definitions from
 (use-modules (shepherd service)
              ((ice-9 ftw) #:select (scandir)))
 
+;; Send shepherd into the background
+(action 'shepherd 'daemonize)
+
 ;; Load all the files in the directory 'init.d' with a suffix '.scm'.
 (for-each
   (lambda (file)
@@ -1361,8 +1364,6 @@ load individual service definitions from
            (lambda (file)
              (string-suffix? ".scm" file))))
 
-;; Send shepherd into the background
-(action 'shepherd 'daemonize)
 @end lisp
 
 Then, individual user services can be put in
-- 
2.38.1

-- 
Janneke Nieuwenhuizen <[email-masked]>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com