services: system: Initial entries are non-monadic.

* gnu/system.scm (operating-system-directory-base-entries): Return a
regular, non-monadic value.
* gnu/services.scm (system-derivation): Adjust accordingly.
* gnu/system/linux-container.scm (container-essential-services): Likewise.
This commit is contained in:
Ludovic Courtès 2020-04-22 16:22:33 +02:00
parent 45c84c8f6f
commit 0e5c2d5e14
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
3 changed files with 8 additions and 12 deletions

View File

@ -318,11 +318,10 @@ This is a shorthand for (map (lambda (svc) ...) %base-services)."
;;; Core services.
;;;
(define (system-derivation mentries mextensions)
(define (system-derivation entries mextensions)
"Return as a monadic value the derivation of the 'system' directory
containing the given entries."
(mlet %store-monad ((entries mentries)
(extensions (mapm/accumulate-builds identity
(mlet %store-monad ((extensions (mapm/accumulate-builds identity
mextensions)))
(lower-object
(file-union "system"

View File

@ -506,11 +506,10 @@ value of the SYSTEM-SERVICE-TYPE service."
(hooks (list linux-module-database))))
(initrd (operating-system-initrd-file os))
(params (operating-system-boot-parameters-file os)))
(with-monad %store-monad
(return `(("kernel" ,kernel)
("parameters" ,params)
("initrd" ,initrd)
("locale" ,locale)))))) ;used by libc
`(("kernel" ,kernel)
("parameters" ,params)
("initrd" ,initrd)
("locale" ,locale)))) ;used by libc
(define (operating-system-default-essential-services os)
"Return the list of essential services for OS. These are special services

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
@ -53,9 +53,7 @@ from OS that are needed on the bare metal and not in a container."
(operating-system-default-essential-services os)))
(cons (service system-service-type
(let ((locale (operating-system-locale-directory os)))
(with-monad %store-monad
(return `(("locale" ,locale))))))
`(("locale" ,(operating-system-locale-directory os))))
;; If network is to be shared with the host, remove network
;; configuration files from etc-service.
(if shared-network?