summary refs log tree commit diff
path: root/gnu/services
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-04-17 15:02:29 +0200
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-04-19 20:12:20 -0400
commit2886a59d182aab5c3525046e1aa84e2281f12426 (patch)
treec1314e701447cee8053158bbc81efb5fd23c66f1 /gnu/services
parentabdf812acc70d5424e51e2d6fb280bf08b087b68 (diff)
downloadguix-2886a59d182aab5c3525046e1aa84e2281f12426.tar.gz
services: agetty: 'term-console' succeeds by default.
Previously, on a typical setup without "console=ttyS0" or similar in
'kernel-arguments', the 'term-console' Shepherd service would always be
marked as failing to start.  This is undesirable because it raises a
false alarm: the service is expected to do nothing in this case.

This patch instead marks it as succeeding and logs a message explaining
it's doing nothing.

* gnu/services/base.scm (agetty-shepherd-service): In 'start' method,
succeed when TTY is #f and print a message.
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/base.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index e5c6bf5335..dfc7571e55 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1178,7 +1178,13 @@ to use as the tty.  This is primarily useful for headless systems."
                            #$@(if term
                                   #~(#$term)
                                   #~())))
-                    (const #f))                   ; never start.
+                    #$(if tty
+                          #~(const #f)         ;always fail to start
+                          #~(lambda _          ;succeed, but don't do anything
+                              (format #t "~a: \
+no serial port console requested; doing nothing~%"
+                                      '#$(car provision))
+                              'idle)))
                 args)))))
       (stop #~(make-kill-destructor))))))