aboutsummaryrefslogtreecommitdiff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-11-10 22:25:39 +0100
committerLudovic Courtès <ludo@gnu.org>2014-11-10 22:42:14 +0100
commitd6e2a622c49184390d362abf97ca1c56498cfd6a (patch)
tree83543c98a446ad7d67eac35952542af4b6ab1b1f /gnu/system.scm
parentccea821befc96a2c5e0c64b1a18eef0f31abe0a7 (diff)
downloadguix-d6e2a622c49184390d362abf97ca1c56498cfd6a.tar
guix-d6e2a622c49184390d362abf97ca1c56498cfd6a.tar.gz
services: Add 'user-unmount-service' as an essential service.
* gnu/services/base.scm (user-unmount-service): New procedure. * gnu/system.scm (essential-services): Use it. * gnu/system/install.scm (cow-store-service): Mention it in comment.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index 4140272a3c..57d71e5158 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -269,16 +269,20 @@ from the initrd."
"Return the list of essential services for OS. These are special services
that implement part of what's declared in OS are responsible for low-level
bookkeeping."
+ (define known-fs
+ (map file-system-mount-point (operating-system-file-systems os)))
+
(mlet* %store-monad ((mappings (device-mapping-services os))
(root-fs (root-file-system-service))
(other-fs (other-file-system-services os))
+ (unmount (user-unmount-service known-fs))
(swaps (swap-services os))
(procs (user-processes-service
(map (compose first service-provision)
other-fs)))
(host-name (host-name-service
(operating-system-host-name os))))
- (return (cons* host-name procs root-fs
+ (return (cons* host-name procs root-fs unmount
(append other-fs mappings swaps)))))
(define (operating-system-services os)