Subject: [bug#72457] [PATCH v4 00/15] Rewrite bootloader subsystem.

From: Sergey Trofimov <[email-masked]>
Date: Tue, 06 Aug 2024 08:13:42 +0200

Hi Lilah,

Lilah Tascheter <[email-masked]> writes:

> Fourth time's the charm. Thanks so much for your help!
>

We're doing progress here. After a small fix the new system generation
got successfully activated. Rebooting has shown that grub can't find own
files and enters rescue mode. The culprit is that core.cfg contains
extra `/boot` in the prefix var.

Generated cfg:
--8<---------------cut here---------------start------------->8---
search.fs_uuid "6BA3-A04D" root
set "prefix=($root)/boot"
--8<---------------cut here---------------end--------------->8---

How it probably should be:
--8<---------------cut here---------------start------------->8---
search.fs_uuid "6BA3-A04D" boot
set "prefix=($boot)"
--8<---------------cut here---------------end--------------->8---

Small fixes:
--8<---------------cut here---------------start------------->8---
diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm
index 71fcc90ec7..bba5cad80d 100644
--- a/gnu/bootloader/grub.scm
+++ b/gnu/bootloader/grub.scm
@@ -259,9 +259,9 @@ (define* (core.img grub format #:key bootloader-config store-crypto-devices
                        '#$(if tftp? '() '("part_msdos" "part_gpt"))
                        ;; file systems
                        '#$(cond ((member fs '("ext2" "ext3" "ext4")) '("ext2"))
-                                ((member fs "vfat" "fat32") "fat")
-                                ((and tftp? efi?) "efinet")
-                                ((and tftp? bios?) "pxe")
+                                ((member fs '("vfat" "fat32")) '("fat"))
+                                ((and tftp? efi?) '("efinet"))
+                                ((and tftp? bios?) '("pxe"))
                                 (else (list fs)))
                        ;; store crypto devs
                        '#$(if (any uuid? store-crypto-devices)
@@ -403,7 +403,7 @@ (define* (grub.cfg #:key bootloader-config
   set color_highlight=~a
 else
   set menu_color_normal=cyan/blue
-  set menu_color_highlight=whiute/blue
+  set menu_color_highlight=white/blue
 fi~%"                                 #$(sanitize install)
                                       #$(colors->str color-normal)
                                       #$(colors->str color-highlight))))))
--8<---------------cut here---------------end--------------->8---