diff --git a/install.d/50-dracut.install b/install.d/50-dracut.install index 1caa2d7cac..476506052a 100755 --- a/install.d/50-dracut.install +++ b/install.d/50-dracut.install @@ -14,12 +14,25 @@ fi # Mismatching the install layout and the --uefi/--no-uefi opts just creates a mess. if [[ $KERNEL_INSTALL_LAYOUT == "uki" && -n $KERNEL_INSTALL_STAGING_AREA ]]; then BOOT_DIR_ABS="$KERNEL_INSTALL_STAGING_AREA" - IMAGE="uki.efi" - UEFI_OPTS="--uefi" + if [[ -z $KERNEL_INSTALL_UKI_GENERATOR || $KERNEL_INSTALL_UKI_GENERATOR == "dracut" ]]; then + # No uki generator preference set or we have been chosen + IMAGE="uki.efi" + UEFI_OPTS="--uefi" + elif [[ -z $KERNEL_INSTALL_INITRD_GENERATOR || $KERNEL_INSTALL_INITRD_GENERATOR == "dracut" ]]; then + # We aren't the uki generator, but we have been requested to make the initrd + IMAGE="initrd" + UEFI_OPTS="--no-uefi" + else + exit 0 + fi elif [[ $KERNEL_INSTALL_LAYOUT == "bls" && -n $KERNEL_INSTALL_STAGING_AREA ]]; then BOOT_DIR_ABS="$KERNEL_INSTALL_STAGING_AREA" - IMAGE="initrd" - UEFI_OPTS="--no-uefi" + if [[ -z $KERNEL_INSTALL_INITRD_GENERATOR || $KERNEL_INSTALL_INITRD_GENERATOR == "dracut" ]]; then + IMAGE="initrd" + UEFI_OPTS="--no-uefi" + else + exit 0 + fi else # No layout information, use users --uefi/--no-uefi preference UEFI_OPTS=""