summary refs log tree commit diff
path: root/gnu/services.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-04-08 15:47:00 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-04-08 15:47:00 -0400
commit533a893cc6b03f100566760d6e0c8e0500ed7082 (patch)
tree0ecbf89895a400c43d16bb1f6539f1a88aeaa4cf /gnu/services.scm
parent6a2546f92d07df04e5d700924edd027ed1e2ef11 (diff)
parentc762df54786fd6f005f3b5307323f1d2df3cbf0b (diff)
downloadguix-533a893cc6b03f100566760d6e0c8e0500ed7082.tar.gz
Merge branch 'master' into staging
Conflicts:
	.guix-authorizations
	gnu/ci.scm
	gnu/packages/base.scm
	gnu/packages/databases.scm
	gnu/packages/gnome.scm
	gnu/packages/gtk.scm
	gnu/packages/imagemagick.scm
	gnu/packages/password-utils.scm
	gnu/packages/python-xyz.scm
	gnu/packages/web-browsers.scm
Diffstat (limited to 'gnu/services.scm')
-rw-r--r--gnu/services.scm10
1 files changed, 9 insertions, 1 deletions
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 @@ ACTIVATION-SCRIPT-TYPE."
   "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