summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-11-10 23:09:59 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-11-17 15:20:02 -0500
commit1ec366cdfd92e4913ab7d1096520410272e3c89c (patch)
tree0b86ce10fd108e4d9e45691ec4715f9e35398481
parent82ffc79f8a39653e7029258081439d8c52360bee (diff)
downloadguix-1ec366cdfd92e4913ab7d1096520410272e3c89c.tar.gz
image: Remove conflicting user-provided EFI file system.
When the image type is "raw" or derived from it (such as "qcow2"), an ESP
partition and file system is already added by the image generator.  If a
conflicting user-provided EFI file system is provided, it causes the boot to
fail, as happens for the lightweight-desktop.tmpl and desktop.tmpl templates
under gnu/system/examples.

* gnu/system/image.scm (operating-system-for-image): Remove file systems whose
mount point is "/boot/efi".
-rw-r--r--gnu/system/image.scm4
1 files changed, 3 insertions, 1 deletions
diff --git a/gnu/system/image.scm b/gnu/system/image.scm
index 81152f0fc4..4972d9067b 100644
--- a/gnu/system/image.scm
+++ b/gnu/system/image.scm
@@ -576,7 +576,9 @@ it can be used for bootloading."
          (file-systems-to-keep
           (srfi-1:remove
            (lambda (fs)
-             (string=? (file-system-mount-point fs) "/"))
+             (let ((mount-point (file-system-mount-point fs)))
+               (or (string=? mount-point "/")
+                   (string=? mount-point "/boot/efi"))))
            (operating-system-file-systems base-os)))
          (format (image-format image))
          (os