Subject: [PATCH] services: greetd: Add 'source-profile?' configuration field.
From: [email-masked]
To: [email-masked]
Date: Tue, 13 Dec 2022 19:35:59 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

From: Jelle Licht <[email-masked]>

* gnu/services/base.scm (<greetd-terminal-configuration>)[source-profile?]:
New field.
(make-greetd-terminal-configuration-file): Serialize new field to
configuration file.
* doc/guix.texi (Base Services): Document it.
---
 doc/guix.texi         | 4 ++++
 gnu/services/base.scm | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index b270964542..bc71337b9c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -18798,6 +18798,10 @@ Base Services
 @item @code{terminal-switch} (default: @code{#f})
 Make this terminal active on start of @code{greetd}.
 
+@item @code{source-profile?} (default: @code{#t})
+Whether to source @file{/etc/profile} and @file{~/.profile}, when they
+exist.
+
 @item @code{default-session-user} (default: @samp{"greeter"})
 The user to use for running the greeter.
 
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 4908af8edd..8cda1d2e16 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -3037,6 +3037,7 @@ (define-record-type* <greetd-terminal-configuration>
                  (default (default-log-file-name this-record)))
   (terminal-vt greetd-terminal-vt (default "7"))
   (terminal-switch greetd-terminal-switch (default #f))
+  (source-profile? greetd-source-profile? (default #t))
   (default-session-user greetd-default-session-user (default "greeter"))
   (default-session-command greetd-default-session-command
     (default (greetd-agreety-session))))
@@ -3050,12 +3051,14 @@ (define (default-log-file-name config)
 (define (make-greetd-terminal-configuration-file config)
   (let*
       ((config-file-name (greetd-config-file-name config))
+       (source-profile? (greetd-source-profile? config))
        (terminal-vt (greetd-terminal-vt config))
        (terminal-switch (greetd-terminal-switch config))
        (default-session-user (greetd-default-session-user config))
        (default-session-command (greetd-default-session-command config)))
     (mixed-text-file
      config-file-name
+     "source_profile = " (if source-profile? "true" "false") "\n"
      "[terminal]\n"
      "vt = " terminal-vt "\n"
      "switch = " (if terminal-switch "true" "false") "\n"

base-commit: d83eef22b25a8717a62ba9d3432b7a8657b7b50b
-- 
2.38.1