diff --git a/src/modules/bootloader/main.py b/src/modules/bootloader/main.py index 4a5a93f60..74ccff239 100644 --- a/src/modules/bootloader/main.py +++ b/src/modules/bootloader/main.py @@ -137,6 +137,7 @@ def get_kernel_params(uuid): cryptdevice_params = [] have_dracut = libcalamares.utils.target_env_call(["sh", "-c", "which dracut"]) == 0 + uses_sd-encrypt = libcalamares.utils.target_env_call(["sh", "-c", "grep -q 'sd-encrypt' /etc/mkinitcpio.conf"]) # Take over swap settings: # - unencrypted swap partition sets swap_uuid @@ -154,7 +155,7 @@ def get_kernel_params(uuid): swap_outer_uuid = partition["luksUuid"] if partition["mountPoint"] == "/" and has_luks: - if have_dracut: + if have_dracut or uses_sd-encrypt: cryptdevice_params = [f"rd.luks.uuid={partition['luksUuid']}"] else: cryptdevice_params = [f"cryptdevice=UUID={partition['luksUuid']}:{partition['luksMapperName']}"] diff --git a/src/modules/grubcfg/main.py b/src/modules/grubcfg/main.py index be057be7b..2c4fd59a6 100644 --- a/src/modules/grubcfg/main.py +++ b/src/modules/grubcfg/main.py @@ -141,7 +141,7 @@ def modify_grub_default(partitions, root_mount_point, distributor): # Shell exit value 0 means success have_plymouth = plymouth_bin == 0 have_dracut = dracut_bin == 0 - have_systemd = mkinitcpio_systemd == 0 + uses_sd-encrypt = mkinitcpio_systemd == 0 use_splash = "" swap_uuid = "" @@ -162,7 +162,7 @@ def modify_grub_default(partitions, root_mount_point, distributor): cryptdevice_params = [] - if have_dracut: + if have_dracut or used_sd-encrypt: for partition in partitions: if partition["fs"] == "linuxswap" and not partition.get("claimed", None): # Skip foreign swap @@ -217,10 +217,6 @@ def modify_grub_default(partitions, root_mount_point, distributor): kernel_params.append(f"rd.luks.uuid={swap_outer_uuid}") if swap_outer_mappername: kernel_params.append(f"resume=/dev/mapper/{swap_outer_mappername}") - - # When using rd.luks.name you can omit rd.luks.uuid - if have_systemd: - kernel_params.append(f"rd.luks.name={partition['luksUuid']}={partition['luksMapperName']}") overwrite = libcalamares.job.configuration.get("overwrite", False)