[grub] add sgdisk call

main
Philip 10 years ago
parent 4f089185fd
commit 76bfc4d96f

@ -23,6 +23,7 @@
import libcalamares
from libcalamares.utils import check_chroot_call
import subprocess
def install_grub(boot_loader, fw_type):
@ -37,6 +38,23 @@ def install_grub(boot_loader, fw_type):
distribution = branding["bootloaderEntryName"]
file_name_sanitizer = str.maketrans(" /", "_-")
efi_bootloader_id = distribution.translate(file_name_sanitizer)
partitions = libcalamares.globalstorage.value("partitions")
boot_p = ""
device = ""
for partition in partitions:
if partition["mountPoint"] == efi_directory:
boot_device = partition["device"]
boot_p = boot_device[-1:]
device = boot_device[:-1]
if (not boot_p or not device):
return ("EFI directory \"{!s}\" not found!",
"Boot partition: \"{!s}\"",
"Boot device: \"{!s}\"".format(efi_directory,boot_p,device))
else:
print("EFI directory: \"{!s}\"".format(efi_directory))
print("Boot partition: \"{!s}\"".format(boot_p))
print("Boot device: \"{!s}\"".format(device))
subprocess.call(["sgdisk", "--typecode={!s}:EF00".format(boot_p), "{!s}".format(device)])
check_chroot_call(
[libcalamares.job.configuration["grubInstall"], "--target=x86_64-efi",
"--efi-directory={!s}".format(efi_directory),

Loading…
Cancel
Save