summaryrefslogtreecommitdiff
path: root/gnu/services.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-06 16:16:09 +0900
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-26 13:43:03 +0900
commit4c017ccfe56a8887bf26faaea62d60501d7cc4f6 (patch)
tree5c8a5efc2bd183db771f2ad6cafed857824f1063 /gnu/services.scm
parent42245040f683bf11688f3731037d0e933fa562fa (diff)
services: Add etc-bashrc-d-service-type.
* gnu/services.scm (files->bashrc-d-directory) New procedure. (etc-bashrc-d-service-type): New service type. * doc/guix.texi (Service Reference): Document it. * gnu/tests/base.scm (test-basic-os): Test it. Change-Id: Ibbb0f684de7aee296adedbce5b1192786d661af2
Diffstat (limited to 'gnu/services.scm')
-rw-r--r--gnu/services.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/gnu/services.scm b/gnu/services.scm
index 8584b16ac5c..7083c88c130 100644
--- a/gnu/services.scm
+++ b/gnu/services.scm
@@ -123,6 +123,7 @@
123 extra-special-file 123 extra-special-file
124 etc-service-type 124 etc-service-type
125 etc-profile-d-service-type 125 etc-profile-d-service-type
126 etc-bashrc-d-service-type
126 etc-directory 127 etc-directory
127 privileged-program-service-type 128 privileged-program-service-type
128 setuid-program-service-type ; deprecated 129 setuid-program-service-type ; deprecated
@@ -988,6 +989,19 @@ two-elements list suitable for extending `etc-service-type'."
988scripts having the @file{.sh} file extension, to be sourced when users 989scripts having the @file{.sh} file extension, to be sourced when users
989log in."))) 990log in.")))
990 991
992(define files->bashrc-d-directory
993 (make-files->etc-directory "bashrc.d"))
994
995(define etc-bashrc-d-service-type
996 (service-type
997 (inherit etc-profile-d-service-type)
998 (name 'etc-bashrc-d)
999 (extensions (list (service-extension etc-service-type
1000 files->bashrc-d-directory)))
1001 (description "A service for populating @file{/etc/bashrc.d/} with Bash
1002scripts having the @file{.sh} file extension, to be sourced by interactive
1003Bash shells.")))
1004
991(define (privileged-program->activation-gexp programs) 1005(define (privileged-program->activation-gexp programs)
992 "Return an activation gexp for privileged-program from PROGRAMS." 1006 "Return an activation gexp for privileged-program from PROGRAMS."
993 (let ((programs 1007 (let ((programs