summaryrefslogtreecommitdiff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-07-17 23:38:23 +0200
committerLudovic Courtès <ludo@gnu.org>2017-07-17 23:41:36 +0200
commitb19a49d015070f9109c157bc39b47574a8dad481 (patch)
treeae405fa6d9aa41c7bdc75cf34f650bd783eeaab1 /gnu/system.scm
parent6d833b13b77f6b4fb76acab932fd9cec601b71ac (diff)
downloadguix-patches-b19a49d015070f9109c157bc39b47574a8dad481.tar
guix-patches-b19a49d015070f9109c157bc39b47574a8dad481.tar.gz
locale: Demonadify the locale creation API.
* gnu/system/locale.scm (single-locale-directory): Use 'computed-file' instead of 'gexp->derivation'. (locale-directory): Adjust accordingly and do the same. * gnu/system.scm (operating-system-directory-base-entries): Adjust accordingly.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm23
1 files changed, 12 insertions, 11 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index ee1e10f82d..bffbee7fdb 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -403,17 +403,18 @@ OS."
(define* (operating-system-directory-base-entries os #:key container?)
"Return the basic entries of the 'system' directory of OS for use as the
value of the SYSTEM-SERVICE-TYPE service."
- (mlet %store-monad ((locale (operating-system-locale-directory os)))
- (if container?
- (return `(("locale" ,locale)))
- (mlet %store-monad
- ((kernel -> (operating-system-kernel os))
- (initrd (operating-system-initrd-file os))
- (params (operating-system-boot-parameters-file os)))
- (return `(("kernel" ,kernel)
- ("parameters" ,params)
- ("initrd" ,initrd)
- ("locale" ,locale))))))) ;used by libc
+ (let ((locale (operating-system-locale-directory os)))
+ (with-monad %store-monad
+ (if container?
+ (return `(("locale" ,locale)))
+ (mlet %store-monad
+ ((kernel -> (operating-system-kernel os))
+ (initrd (operating-system-initrd-file os))
+ (params (operating-system-boot-parameters-file os)))
+ (return `(("kernel" ,kernel)
+ ("parameters" ,params)
+ ("initrd" ,initrd)
+ ("locale" ,locale)))))))) ;used by libc
(define* (essential-services os #:key container?)
"Return the list of essential services for OS. These are special services