diff --git a/gnu/services.scm b/gnu/services.scm index 5479bfa..fc3e17e 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -352,11 +352,18 @@ ACTIVATION-SCRIPT-TYPE." (define (second-argument a b) b) +(define (gexps->activation-system-entry gexps) + "Return a directory entry to add to the result of the 'system' derivation." + (mlet %store-monad ((script (activation-script gexps))) + (return `(("activate" ,script))))) + (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 + gexps->activation-system-entry))) (compose append) (extend second-argument)))