[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Building image with grub-efi-amd64 instead of grub-pc?



Hi,

Anindya Chaudhuri wrote:
> > I would like to use grub-efi-amd64 instead of grub-pc

Elias Mobery wrote
> Live-build uses syslinux as default bootloader. It will be able to
> boot both uefi and legacy without any additional modifications.

As developer of xorriso i can state that both GRUB boot equipments are
combinable, and that the SYSLINUX equipment that gets built into
the ISO is for legacy BIOS only.
(Actually SYSLINUX EFI does not boot from CD or DVD by most real iron
firmwares. OVMF might work because it tends to take the code path for
partitioned disk devices.)

SYSLINUX/ISOLINUX legacy BIOS equipment is often combined with GRUB for
EFI. This seems to be the case with live-build for "syslinux" plus
"grub-efi".

---------------------------------------------------------------------
Reasoning:

Whatever gets prepared, it has to be announced to the xorriso run in
order to get into effect.

I see in
  https://sources.debian.org/src/live-build/1:20210902/scripts/build/binary_iso/?#L117
the xorriso options for legacy BIOS with LB_BOOTLOADER_BIOS="grub-pc".
In
  https://sources.debian.org/src/live-build/1:20210902/scripts/build/binary_iso/?#L146
i see the xorriso options for EFI with LB_BOOTLOADER_EFI="grub-efi".

The distinction between 32 and 64 bit x86 EFI is probably made when
the EFI system partition image boot/grub/efi.img gets composed.
In
  https://sources.debian.org/src/live-build/1:20210902/scripts/build/binary_grub-efi/?#69
and following lines i see indications that this choice depends on variable
LB_ARCHITECTURE.

So everything seems to be prepared for the combination of both kinds of
boot equipment on ISOs for amd64 (or i386).


To corroborate my assessment about SYSLINUX:
There is no mentioning of EFI in
  https://sources.debian.org/src/live-build/1:20210902/scripts/build/binary_syslinux/
The script
  https://sources.debian.org/src/live-build/1:20210902/scripts/build/efi-image/
has
  echo "usage: $0 OUTPUT-DIRECTORY GRUB-PLATFORM EFI-NAME NETBOOT-PREFIX"
and seems to be generally addicted to GRUB.


Have a nice day :)

Thomas


Reply to: