diff options
-rwxr-xr-x | src/partvi | 30 |
1 files changed, 30 insertions, 0 deletions
@@ -302,6 +302,7 @@ copy_data_to_mounted_target_filesystems() | |||
302 | ;; | 302 | ;; |
303 | efi-system-partition) | 303 | efi-system-partition) |
304 | EFI_DIR=$mnt | 304 | EFI_DIR=$mnt |
305 | $sudo mkdir "$EFI_DIR"/EFI "$EFI_DIR"/EFI/BOOT | ||
305 | ;; | 306 | ;; |
306 | esac | 307 | esac |
307 | } | 308 | } |
@@ -386,3 +387,32 @@ iterate_partitions copy_data_to_mounted_target_filesystems | |||
386 | 387 | ||
387 | time loudly $sudo eatmydata -- grub-install --boot-directory="$BOOT_DIR" "$whole" --target=i386-pc | 388 | time loudly $sudo eatmydata -- grub-install --boot-directory="$BOOT_DIR" "$whole" --target=i386-pc |
388 | time loudly $sudo eatmydata -- grub-install --boot-directory="$BOOT_DIR" "$whole" --target=x86_64-efi --removable --efi-directory="$EFI_DIR" || true | 389 | time loudly $sudo eatmydata -- grub-install --boot-directory="$BOOT_DIR" "$whole" --target=x86_64-efi --removable --efi-directory="$EFI_DIR" || true |
390 | |||
391 | ventoy_efi_dir=../ventoy-EFI-BOOT | ||
392 | valdik_efi_dir=../import-grub-bootx64-efi/3 | ||
393 | if false | ||
394 | then | ||
395 | # Ugly Ventoy hack. Finally got EFI boot working!! | ||
396 | $sudo mv -v "$EFI_DIR"/EFI/BOOT/grubx64.efi "$EFI_DIR"/EFI/BOOT/grub.efi | ||
397 | # Ventoy BOOTX64.EFI boots grub.efi | ||
398 | $sudo cp -v --preserve=timestamps -t "$EFI_DIR"/EFI/BOOT/ -- $ventoy_efi_dir/BOOTX64.EFI | ||
399 | elif true | ||
400 | then | ||
401 | # Same ugly hack but w/ Ventoy's upstream <https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk> | ||
402 | # Valdik BOOTX64.EFI boots grubx64.efi | ||
403 | $sudo cp -v --preserve=timestamps -t "$EFI_DIR"/EFI/BOOT/ -- $valdik_efi_dir/BOOTX64.EFI | ||
404 | elif false | ||
405 | then | ||
406 | # Same ugly hack but using Ventoy's upstream, valdik. We chain-load valdik's | ||
407 | # second stage with Ventoy's BOOTX64.EFI because valdik's first stage | ||
408 | # doesn't work in versions marked "3-" (older version "3" works). | ||
409 | $sudo cp -v --preserve=timestamps -t "$EFI_DIR"/EFI/BOOT/ -- $ventoy_efi_dir/BOOTX64.EFI | ||
410 | $sudo cp -v --preserve=timestamps -- $valdik_efi_dir/grubx64.efi "$EFI_DIR"/EFI/BOOT/grub.efi | ||
411 | $sudo mv -v "$EFI_DIR"/EFI/BOOT/grubx64.efi "$EFI_DIR"/EFI/BOOT/grubx64_real.efi | ||
412 | elif false | ||
413 | then | ||
414 | # Here is valdik's version 3 working, with its own second stage, and the | ||
415 | # third stage replaced with our grub: | ||
416 | $sudo mv -v "$EFI_DIR"/EFI/BOOT/grubx64.efi "$EFI_DIR"/EFI/BOOT/grubx64_real.efi | ||
417 | $sudo cp -v --preserve=timestamps -t "$EFI_DIR"/EFI/BOOT/ -- $valdik_efi_dir/BOOTX64.EFI $valdik_efi_dir/grubx64.efi | ||
418 | fi | ||