summary refs log tree commit diff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-07-15 01:32:25 +0200
committerLudovic Courtès <ludo@gnu.org>2020-07-15 01:36:24 +0200
commitd7e9e0bbc9aadec3e1830767a8771bfbe9c43155 (patch)
tree7a978673651f0ffda8c121a31f88a775e88ae2a9 /gnu/system.scm
parent9e12da319b779d1c7f3d46ad2fd4025d4ffc228f (diff)
downloadguix-d7e9e0bbc9aadec3e1830767a8771bfbe9c43155.tar.gz
system: 'operating-system-root-file-system' raises upon missing root.
* gnu/system.scm (operating-system-root-file-system): Raise when 'find'
returns #f.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm10
1 files changed, 7 insertions, 3 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index e7f85e4358..de5f25a35d 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -1032,9 +1032,13 @@ we're running in the final root."
 
 (define (operating-system-root-file-system os)
   "Return the root file system of OS."
-  (find (lambda (fs)
-          (string=? "/" (file-system-mount-point fs)))
-        (operating-system-file-systems os)))
+  (or (find (lambda (fs)
+              (string=? "/" (file-system-mount-point fs)))
+            (operating-system-file-systems os))
+      (raise (condition
+              (&message (message "missing root file system"))
+              (&error-location
+               (location (operating-system-location os)))))))
 
 (define (operating-system-initrd-file os)
   "Return a gexp denoting the initrd file of OS."