Skip to content

mkarchiso: implement "file system transposition" support for UEFI

nl6720 requested to merge nl6720/archiso:fs-transposition into master
  • mkarchiso: write a .uuid file to /.disk/ on ISO 9660 to allow GRUB to search for it

    Create a /.disk/INSERT_UUID_HERE.uuid file to implement something called "file system transposition". See https://www.mail-archive.com/grub-devel@gnu.org/msg34346.html for the proposal of it for grub-mkrescue.

    This will allow GRUB to search for the volume containing the file instead of hardcoding the ISO volume label or another file system or partition attribute in GRUB configuration. By only relying on the directory structure simplifies supporting medium preparation methods with manual partitioning such as https://wiki.archlinux.org/title/USB_flash_installation_medium#In_GNU/Linux_4

  • configs/*/grub/grub.cfg: search for a .uuid file in /.disk/ and use the volume it's on

    Search for /.disk/%UUID_SEARCH_FILENAME%.uuid and pass the UUID of the volume it's on as archisodevice. mkarchiso will replace %UUID_SEARCH_FILENAME% with a hardcoded value generated using SOURCE_DATE_EPOCH durring ISO build.

    This allows to prepare an UEFI bootable installation medium by simply copying the directory structure without having to touch grub.cfg.

    Relying on the volume UUID instead of its LABEL also avoids collisions of multiple ISOs created in the same month.

    Fixes #202 (closed)

  • Preload GRUB's NTFS, exFAT and UDF modules

    There are claims that some UEFI allegedly natively support NTFS. Preload the required GRUB modules to support booting from NTFS on such systems.

    Additionally preload the exFAT and UEF modules, because, why not?

Edited by nl6720

Merge request reports