GNU bug report logs - #73383
[PATCH] home: home-shepherd-configuration: Add silent? field.

Previous Next

Package: guix-patches;

Reported by: Dariqq <dariqq <at> posteo.net>

Date: Fri, 20 Sep 2024 13:04:02 UTC

Severity: normal

Tags: patch

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: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#73383: closed ([PATCH] home: home-shepherd-configuration: Add
 silent? field.)
Date: Mon, 14 Oct 2024 11:08:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Mon, 14 Oct 2024 13:07:00 +0200
with message-id <87iktv3puz.fsf <at> gnu.org>
and subject line Re: [bug#73383] [PATCH v2 0/2] home-shepherd-configuration: add silent? and document daemonize?
has caused the debbugs.gnu.org bug report #73383,
regarding [PATCH] home: home-shepherd-configuration: Add silent? field.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
73383: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=73383
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Dariqq <dariqq <at> posteo.net>
To: guix-patches <at> gnu.org
Cc: Dariqq <dariqq <at> posteo.net>
Subject: [PATCH] home: home-shepherd-configuration: Add silent? field.
Date: Fri, 20 Sep 2024 12:39:23 +0000
* gnu/home/services/shepherd.scm (home-shepherd-configuration): Add silent? field.
(launch-shepherd-gexp): Conditionally invoke shepherd with --silent.
* doc/guix.texi (home-shepherd-configuration): Document it.

Change-Id: I1ce7a92c2777ebded39fe293b0bdcbd03562b4fc
---

Hi,

This adds a configuration field to the home-shepherd to optionally invoke it
with --silent. See [1] for details. The option currently only actually works
as advertised when using the development branch of shepherd, for the current
version (v0.10.5) the --silent parameter is ignored.

I have set the default value to #f to not change the current behaviour.

For the documentation I am not perfectly happy with my description because the
behaviour is opposite of the description (Setting to #t causes no output to
stdout), maybe there is a better way to phrase this? Also is there a better way
to communicate that it only works when the auto-start? field is also #t?


Related: The daemonize? field is not documented and the accessor is not being
exported.

[1] https://issues.guix.gnu.org/72277


 doc/guix.texi                  | 3 +++
 gnu/home/services/shepherd.scm | 7 ++++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 52e36e4354..ab8cf54ae8 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -46057,6 +46057,9 @@ Shepherd Home Service
 @item auto-start? (default: @code{#t})
 Whether or not to start Shepherd on first login.
 
+@item silent? (default: @code{#f})
+Whether or not the auto-started Shepherd should output to stdout.
+
 @item services (default: @code{'()})
 A list of @code{<shepherd-service>} to start.
 You should probably use the service extension
diff --git a/gnu/home/services/shepherd.scm b/gnu/home/services/shepherd.scm
index dfe4030a4e..17b005ed71 100644
--- a/gnu/home/services/shepherd.scm
+++ b/gnu/home/services/shepherd.scm
@@ -32,6 +32,7 @@ (define-module (gnu home services shepherd)
             home-shepherd-configuration?
             home-shepherd-configuration-shepherd
             home-shepherd-configuration-auto-start?
+            home-shepherd-configuration-silent?
             home-shepherd-configuration-services)
   #:re-export (shepherd-service
                shepherd-service?
@@ -58,6 +59,8 @@ (define-record-type* <home-shepherd-configuration>
                (default #t))
   (daemonize? home-shepherd-configuration-daemonize?
               (default #t))
+  (silent? home-shepherd-configuration-silent?
+            (default #f))
   (services home-shepherd-configuration-services
             (default '())))
 
@@ -107,7 +110,8 @@ (define (home-shepherd-configuration-file config)
     (scheme-file "shepherd.conf" config)))
 
 (define (launch-shepherd-gexp config)
-  (let* ((shepherd (home-shepherd-configuration-shepherd config)))
+  (let* ((shepherd (home-shepherd-configuration-shepherd config))
+         (silent? (home-shepherd-configuration-silent? config)))
     (if (home-shepherd-configuration-auto-start? config)
         (with-imported-modules '((guix build utils))
           #~(unless (file-exists?
@@ -125,6 +129,7 @@ (define (launch-shepherd-gexp config)
                  #$(file-append shepherd "/bin/shepherd")
                  "--logfile"
                  (string-append log-dir "/shepherd.log")
+                 #$@(if silent? '("--silent") '())
                  "--config"
                  #$(home-shepherd-configuration-file config)))))
         #~"")))

base-commit: e9d903f146865db5948abd271a5c7e763681b4e9
-- 
2.46.0



[Message part 3 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Dariqq <dariqq <at> posteo.net>
Cc: Tanguy Le Carrour <tanguy <at> bioneland.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, paren <at> disroot.org,
 Florian Pelz <pelzflorian <at> pelzflorian.de>, Andrew Tropin <andrew <at> trop.in>,
 73383-done <at> debbugs.gnu.org
Subject: Re: [bug#73383] [PATCH v2 0/2] home-shepherd-configuration: add
 silent? and document daemonize?
Date: Mon, 14 Oct 2024 13:07:00 +0200
Hello,

Dariqq <dariqq <at> posteo.net> skribis:

> Here is v2:
>
> Changes:
>  * Change default-value of the silent? field to #t.
>  * Update the documentation. I added something that (hopefully) makes it obvious that the field is intended to be used together with the auto-start? field.
>  * Added a second patch to document the daemonize? field and export the field-accessor. Should it warn about the issue when dameonize? is #f but auto-start? is #t blocking logins?
>
> Dariqq (2):
>   home: home-shepherd-configuration: Add silent? field.
>   doc: Document home-shepherd-configuration-daemonize?

Applied, thanks!

Ludo’.


This bug report was last modified 218 days ago.

Previous Next


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