I’m having some issues making a custom ISO based on Fedora 37 with xorriso, mkisofs and (!) the livecd-tools. If I want to rebuild the ISO to include a kickstart-file on the ISO, and edit the grub.cfg to choose an install menu entry using the kickstart-file by default, I still need to pass on boot information to the program but I can’t for the life of me work out what that boot information is, given that Fedora 37 has done away with syslinux in preference to grub2 as a bootloader.
When inspecting a Fedora 36 Workstation ISO I can see the efiboot.img file in the /images/ directory as I would expect, which to my limited understanding is a FAT-formatted partition that is used to UEFI-boot by CD/DVDs. Inspecting this in turn, we can see the same file structure as /EFI/BOOT/ on the ISO itself, which to my limited understanding would be utilized if booting from USB.
On Fedora 37, the efiboot.img is missing, in its place we find an eltorito.img file. I have however not managed to inspect its contents - It fails to mount whether attempted as a type FAT or not (Ubuntu 22.04 distributes its ISO with an eltorito.img located in their /boot/grub/i386-pc/ directory).
That said, if I do run:
xorriso -indev Fedora-Workstation-Live-x86_64-37-1.7.iso -report_el_torito as_mkisofs
I get the following output:
(...)
-b '/images/eltorito.img'
(...)
So as you can see, xorriso identifies /images/eltorito.img as the boot image. If I try to run the same mkisofs command as reported by xorriso, however, I get the following error:
xorriso : FAILURE : Cannot find in ISO image: -boot_image ... bin_path='/images/eltorito.img'
Even more interesting, if I simply try copying the iso using xorriso (see this thread):
xorriso -indev Fedora-Workstation-Live-x86_64-37-1.7.iso -outdev test.iso -compliance no_emul_toc -boot_image any replay
It fails to produce an output. By coincidence, so does the livecd-iso-to-disk tool suggested by Fedora. Same goes for Fedora 37 Server and Fedora 37 XFCE. On the other hand, running the same command with a Fedora 36 or ubuntu ISO does not produce any fault and copies the ISO as expected.
So then - Is it possible to modify an ISO of Fedora 37 and pass boot information? What is the relevant boot information here?