Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Hvornum <anton@hvornum.se>2022-04-26 14:13:33 +0200
committerGitHub <noreply@github.com>2022-04-26 14:13:33 +0200
commitc095eb56d878b51a80d49cdef3c82950bcfcdecd (patch)
treef40d6579eeb12e356ec815515fe860695d448e2a
parent12b5e2e4e9537fbae0ec21ced9d21482b29610d3 (diff)
Added a try-rerun-except block to grub-install (#1085)
* Added a try-rerun-except block to grub-install first with --removable and then without if it fails. I have a sneaky suspicion that it's due to USB drives being the destination medium, but I cannot confirm yet. I've also added peak_output=True and --debug to GRUB so we can catch the issues in the future. * Fixed flake8 complaint
-rw-r--r--archinstall/lib/installer.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/archinstall/lib/installer.py b/archinstall/lib/installer.py
index 5a83a0cb..694d6388 100644
--- a/archinstall/lib/installer.py
+++ b/archinstall/lib/installer.py
@@ -832,12 +832,15 @@ class Installer:
if has_uefi():
self.pacstrap('efibootmgr') # TODO: Do we need? Yes, but remove from minimal_installation() instead?
try:
- SysCommand(f'/usr/bin/arch-chroot {self.target} grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable')
- except SysCallError as error:
- raise DiskError(f"Could not install GRUB to {self.target}/boot: {error}")
+ SysCommand(f'/usr/bin/arch-chroot {self.target} grub-install --debug --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable', peak_output=True)
+ except SysCallError:
+ try:
+ SysCommand(f'/usr/bin/arch-chroot {self.target} grub-install --debug --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable', peak_output=True)
+ except SysCallError as error:
+ raise DiskError(f"Could not install GRUB to {self.target}/boot: {error}")
else:
try:
- SysCommand(f'/usr/bin/arch-chroot {self.target} grub-install --target=i386-pc --recheck {boot_partition.parent}')
+ SysCommand(f'/usr/bin/arch-chroot {self.target} grub-install --debug --target=i386-pc --recheck {boot_partition.parent}', peak_output=True)
except SysCallError as error:
raise DiskError(f"Could not install GRUB to {boot_partition.path}: {error}")