summary refs log tree commit diff
path: root/gnu/services.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-11-02 17:01:32 +0100
committerLudovic Courtès <ludo@gnu.org>2015-11-02 22:25:11 +0100
commit3a391e68dafe81560d3e4936a1ec5ac3b06d43bb (patch)
tree1e5745494a5120faed67ad137e13a8ffc64cae54 /gnu/services.scm
parent5adbe65feceeb6d2a08abe644f4a66f598985182 (diff)
downloadguix-3a391e68dafe81560d3e4936a1ec5ac3b06d43bb.tar.gz
services: Clarify extend/compose of BOOT-SERVICE-TYPE.
* gnu/services.scm (compute-boot-script): Add first placeholder
  parameter.
  (boot-service-type): Change 'compose' to APPEND, and 'extend' to
  COMPUTE-BOOT-SCRIPT.
Diffstat (limited to 'gnu/services.scm')
-rw-r--r--gnu/services.scm10
1 files changed, 5 insertions, 5 deletions
diff --git a/gnu/services.scm b/gnu/services.scm
index c8a2a2604f..ecf3532e52 100644
--- a/gnu/services.scm
+++ b/gnu/services.scm
@@ -182,7 +182,7 @@ This is a shorthand for (map (lambda (svc) ...) %base-services)."
 ;;; Core services.
 ;;;
 
-(define (compute-boot-script mexps)
+(define (compute-boot-script _ mexps)
   (mlet %store-monad ((gexps (sequence %store-monad mexps)))
     (gexp->file "boot"
                 #~(begin
@@ -203,16 +203,14 @@ This is a shorthand for (map (lambda (svc) ...) %base-services)."
                     ;; Activate the system and spawn dmd.
                     #$@gexps))))
 
-(define (second-argument a b) b)
-
 (define boot-service-type
   ;; The service of this type is extended by being passed gexps as monadic
   ;; values.  It aggregates them in a single script, as a monadic value, which
   ;; becomes its 'parameters'.  It is the only service that extends nothing.
   (service-type (name 'boot)
                 (extensions '())
-                (compose compute-boot-script)
-                (extend second-argument)))
+                (compose append)
+                (extend compute-boot-script)))
 
 (define %boot-service
   ;; This is the ultimate service, the root of the service DAG.
@@ -296,6 +294,8 @@ ACTIVATION-SCRIPT-TYPE."
   (mlet %store-monad ((script (activation-script gexps)))
     (return #~(primitive-load #$script))))
 
+(define (second-argument a b) b)
+
 (define activation-service-type
   (service-type (name 'activate)
                 (extensions