3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

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.
This commit is contained in:
Ludovic Courtès 2015-11-02 17:01:32 +01:00
parent 5adbe65fec
commit 3a391e68da

View file

@ -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