Skip to content
Snippets Groups Projects
Commit 77fb2641 authored by Teo Mrnjavac's avatar Teo Mrnjavac
Browse files

Fix VFAT filename handling in bootloader module.

CAL-385 #close
parent 0c292330
No related branches found
No related tags found
No related merge requests found
...@@ -220,15 +220,14 @@ def install_grub(efi_directory, fw_type): ...@@ -220,15 +220,14 @@ def install_grub(efi_directory, fw_type):
"--force"]) "--force"])
# VFAT is weird, see issue CAL-385 # VFAT is weird, see issue CAL-385
efi_directory_firmware = case_insensitive_subdir(efi_directory, efi_directory_firmware = os.path.join(efi_directory, "EFI")
["EFI", "Efi", "efi"]) if os.path.exists(efi_directory_firmware):
if not efi_directory_firmware: efi_directory_firmware = vfat_correct_case(efi_directory, "EFI")
efi_directory_firmware = os.path.join(efi_directory, "EFI")
efi_boot_directory = os.path.join(efi_directory_firmware, "boot")
efi_boot_directory = case_insensitive_subdir(efi_directory_firmware, if os.path.exists(efi_boot_directory):
["Boot", "boot", "BOOT"]) efi_boot_directory = vfat_correct_case(efi_directory_firmware, "boot")
if not efi_boot_directory: else:
efi_boot_directory = os.path.join(efi_directory_firmware, "boot")
check_target_env_call(["mkdir", "-p", efi_boot_directory]) check_target_env_call(["mkdir", "-p", efi_boot_directory])
# Workaround for some UEFI firmwares # Workaround for some UEFI firmwares
...@@ -251,11 +250,11 @@ def install_grub(efi_directory, fw_type): ...@@ -251,11 +250,11 @@ def install_grub(efi_directory, fw_type):
libcalamares.job.configuration["grubCfg"]]) libcalamares.job.configuration["grubCfg"]])
def case_insensitive_subdir(parent, candidate_dirnames): def vfat_correct_case(parent, name):
for dirname in candidate_dirnames: for candidate in os.listdir(parent):
if os.path.isdir(os.path.join(parent, dirname)): if name.lower() == candidate.lower():
return os.path.join(parent, dirname) return candidate
return "" return os.path.join(parent, name)
def prepare_bootloader(fw_type): def prepare_bootloader(fw_type):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment