From df138dc20858725b90ed77be85f3318cbe1be73a Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Sat, 30 Jan 2021 21:08:08 +0100 Subject: gnu: services: Add activate script to the profile system directory. * gnu/services.scm (activation-profile-entry): New procedure... (activation-service-type): ... use it. --- gnu/services.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'gnu/services.scm') diff --git a/gnu/services.scm b/gnu/services.scm index 13259dfaee..ddd1bac30c 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -617,13 +617,21 @@ (define (gexps->activation-gexp gexps) "Return a gexp that runs the activation script containing GEXPS." #~(primitive-load #$(activation-script gexps))) +(define (activation-profile-entry gexps) + "Return, as a monadic value, an entry for the activation script in the +system directory." + (mlet %store-monad ((activate (lower-object (activation-script gexps)))) + (return `(("activate" ,activate))))) + (define (second-argument a b) b) (define activation-service-type (service-type (name 'activate) (extensions (list (service-extension boot-service-type - gexps->activation-gexp))) + gexps->activation-gexp) + (service-extension system-service-type + activation-profile-entry))) (compose identity) (extend second-argument) (description -- cgit v1.2.3