Custom Kickstart Install Image Fails to Boot EFI

I’m having an issue with my new kickstart image (Alma9.2), which I’m trying install on different Dell laptops with BIOS version 1.13.1. When I boot my USB containing my new image with UEFI/Secure Boot enabled in the BIOS, I see the output shown in the attached picture and it reverts to the default AlmaLinux 9 install menu instead of mine. I’m wondering if this is a battle with the BIOS or if there is something glaringly wrong with my bootable USB kickstart image. It’s important to note that I am able to boot the USB to the EFI menu and successfully install on a system that has a bit older BIOS version (1.11.0), but I’m not totally convinced that my problem is 100% a BIOS issue given the message that I see in the attached photo in both cases. I’m grateful for any input you may have in assisting me.

Here is my command-line to build the image (done using sudo), with no errors:

mkisofs \ 
       -o ${ISODIR}.iso \ 
       -b isolinux/isolinux.bin \ 
       -J -R -l -c isolinux/boot.cat \ 
       -no-emul-boot \ 
       -boot-load-size 4 \ 
       -boot-info-table \ 
       -eltorito-alt-boot \ 
       -e images/efiboot.img \ 
       -no-emul-boot \ 
       -graft-points \ 
       -joliet-long \ 
       -V ${BLKID} .

 isohybrid --uefi ${ISODIR}.iso
 implantisomd5 ${ISODIR}.iso

Here is my grub.cfg, which resides under EFI/BOOT:

set default="0"

function load_video {
  insmod efi_gop
  insmod efi_uga
  insmod video_bochs
  insmod video_cirrus
  insmod all_video
}

load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod ext2

set menu_color_normal=white/black
set menu_color_highlight=yellow/black

# This disables timeout (waits forever) *note - timeout in isolinux.cfg is 0.
set timeout=10
### END /etc/grub.d/00_header ###

search --no-floppy --set=root -l 'AlmaLinux-9-2-x86_64-dvd'

### BEGIN /etc/grub.d/10_linux ###
menuentry 'XYZ System' --class fedora --class gnu-linux --class gnu --class os {
	linuxefi /images/pxeboot/vmlinuz inst.ks=hd:LABEL=AlmaLinux-9-2-x86_64-dvd:/xyz-systems/xyz-el9-ks.cfg inst.stage2=hd:LABEL=AlmaLinux-9-2-x86_64-dvd fips=1 quiet
	initrdefi /images/pxeboot/initrd.img
}

Here are the contents of the directory EFI/BOOT:
BOOTX64.EFI fonts grub.cfg grubx64.efi mmx64.efi

c986a9b4ae14ba7ef6dd2a1e5dc0655aefbe2a11_2_281x500

  • image stolen from here, but same exact error I’m getting.

your commands are correct assuming you’re using AlmaLinux-9-2-x86_64-dvd for BLKID as i’ve done this successfully myself using the same command.

my EFI/BOOT/grub.cfg is almost the same, i’m using cdrom for the kickstart not hd and i haven’t enabled fips mode as the fips modules on the dvd aren’t validated, only the ones from the repo are, although that shouldn’t be a problem:

menuentry 'Kickstart AlmaLinux 9.2' --class fedora --class gnu-linux --class gnu --class os {
	linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=AlmaLinux-9-2-x86_64-dvd quiet inst.ks=cdrom:/ks.cfg inst.text net.ifnames=0
	initrdefi /images/pxeboot/initrd.img
}

i just put the ks.cfg in the root of the ISO, my EFI/BOOT contents are the same as yours.

i also modify isolinux/isolinux.cfg, see this section:

...blah...

menu separator # insert an empty line
menu separator # insert an empty line

label kickstart
  menu label ^Kickstart AlmaLinux 9.2
  menu default
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=hd:LABEL=AlmaLinux-9-2-x86_64-dvd quiet inst.ks=cdrom:/ks.cfg inst.text net.ifnames=0

label linux
  menu label ^Install AlmaLinux 9.2
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=hd:LABEL=AlmaLinux-9-2-x86_64-dvd quiet

...blah...

Yes, thank you for verifying my files. I’m still a bit baffled because the vanilla Almalinux9 install installs with no issues. So the key to this is somewhere between my image and the vanilla Alma install image.