- mkfs.ext3 -FL SQUASHBOOT ${@}
- mount -t ext3 ${@} mount
- cp -L vmlinuz initrd.img *.squashfs syslinux.cfg mount/
- cp $(addprefix /usr/lib/syslinux/modules/bios/, menu.c32 libutil.c32) mount/
- extlinux -i mount/
+ mkfs.vfat -n SQUASHBOOT ${@}
+ syslinux -i ${@}
+ mount -t vfat ${@} mount
+ mkdir -p $(addprefix mount/, EFI/BOOT efi32 efi64 bios)
+ cp /usr/lib/SYSLINUX.EFI/efi32/syslinux.efi mount/EFI/BOOT/BOOTIA32.EFI
+ cp /usr/lib/SYSLINUX.EFI/efi64/syslinux.efi mount/EFI/BOOT/BOOTX64.EFI
+ cp $(addprefix /usr/lib/syslinux/modules/efi32/, ldlinux.e32 menu.c32 libutil.c32) mount/efi32/
+ cp $(addprefix /usr/lib/syslinux/modules/efi64/, ldlinux.e64 menu.c32 libutil.c32) mount/efi64/
+ cp $(addprefix /usr/lib/syslinux/modules/bios/, menu.c32 libutil.c32) mount/bios/
+ cp -L vmlinuz initrd.img *.squashfs Makefile partitions mount/
+ cp syslia32.cfg syslx64.cfg syslinux.cfg bootmenu.cfg mount/
+ # Temporary workaround, Uncomment for syslinux 6.04+
+ cp $(addprefix /usr/lib/syslinux/modules/, efi32/ldlinux.e32 efi64/ldlinux.e64) mount/EFI/BOOT/
+ cp syslx64.cfg mount/EFI/BOOT/syslinux.cfg