Fix up the partitioning for arm64 images so USB will work again

This code was using "-efi-boot-part", which works fine for booting but
creates images that d-i can't use: only the full disk or the ESP
partition would contain working filesystems, and d-i doesn't like that.

Instead, switch to appending the ESP as an extra partition on the end
of the image. This will take a small amount of extra space, but will
at least work reliably!
This commit is contained in:
Steve McIntyre 2015-04-16 15:24:01 +01:00
parent 8248615c03
commit 0ad2c2dbdb
1 changed files with 6 additions and 2 deletions

View File

@ -113,11 +113,15 @@ if [ -d boot$N/grub ] ; then
exit 1;
elif [ $XORRISO_VER -gt 10202 ] ; then
echo "Using newer EFI support in xorriso $XORRISO_VER"
# marks the first EFI El Torito boot image as a partition in GPT
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-efi-boot-part --efi-boot-image"
# Location of the EFI boot image, and don't emulate a floppy or HD
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-e boot/grub/efi.img -no-emul-boot"
# Add an *extra* partition on the end for the EFI bits
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-append_partition 2 0xef $CDDIR/boot/grub/efi.img"
# And force alignment
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-partition_cyl_align all"
fi
# Finally, belt and braces - fix up the %install% entries in grub