diff options
| author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2025-05-06 16:16:09 +0900 |
|---|---|---|
| committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2025-05-26 13:43:03 +0900 |
| commit | 4c017ccfe56a8887bf26faaea62d60501d7cc4f6 (patch) | |
| tree | 5c8a5efc2bd183db771f2ad6cafed857824f1063 /gnu/services.scm | |
| parent | 42245040f683bf11688f3731037d0e933fa562fa (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.scm | 14 |
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'." | |||
| 988 | scripts having the @file{.sh} file extension, to be sourced when users | 989 | scripts having the @file{.sh} file extension, to be sourced when users |
| 989 | log in."))) | 990 | log 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 | ||
| 1002 | scripts having the @file{.sh} file extension, to be sourced by interactive | ||
| 1003 | Bash 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 |
