summaryrefslogtreecommitdiff
path: root/gnu/tests/base.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-05 10:30:58 +0900
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2025-05-26 13:43:03 +0900
commit279adf431bbdb41921e6a72d401a7c55f3bc1947 (patch)
treef81f5c302aa65a5c60297b31402d5052569a75da /gnu/tests/base.scm
parent306bd8048149b67af4b359547cd8e69bd58c5d51 (diff)
services: Add etc-profile-d-service-type.
* gnu/services.scm (make-files->etc-directory) (files->profile-d-entries): New procedures. (etc-profile-d-service-type): New service type. * doc/guix.texi (Service Reference): Document it. * gnu/tests/base.scm (run-basic-test): Test it. Change-Id: I45dde43a1b9603c3384b933ebd1d6e45dba146b9
Diffstat (limited to 'gnu/tests/base.scm')
-rw-r--r--gnu/tests/base.scm19
1 files changed, 18 insertions, 1 deletions
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index f28c610ccb2..09fc91383df 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -170,6 +170,14 @@ grep --version
info --version")
marionette)))
+ (test-assert "/etc/profile.d is sourced"
+ (zero? (marionette-eval '(system "
+. /etc/profile
+set -e -x
+test -f /etc/profile.d/test_profile_d.sh
+test \"$PROFILE_D_OK\" = yes")
+ marionette)))
+
(test-equal "special files"
'#$special-files
(marionette-eval
@@ -576,7 +584,16 @@ functionality tests, using the given KERNEL.")
(let* ((os (marionette-operating-system
(operating-system
(inherit %simple-os)
- (kernel kernel))
+ (kernel kernel)
+ (services (cons (service
+ etc-profile-d-service-type
+ (list (plain-file
+ "test_profile_d.sh"
+ "export PROFILE_D_OK=yes\n")
+ (plain-file
+ "invalid-name"
+ "not a POSIX script -- ignore me")))
+ %base-services)))
#:imported-modules '((gnu services herd)
(guix combinators))))
(vm (virtual-machine os)))