Currently limine based, cribbing from osdev wiki a bit, and from dreamportdev
29 lines
890 B
Bash
29 lines
890 B
Bash
# Create an empty zeroed-out 64MiB image file.
|
|
dd if=/dev/zero bs=1M count=0 seek=64 of=image.hdd
|
|
|
|
# Create a partition table.
|
|
, sgdisk image.hdd -n 1:2048 -t 1:ef00 -m 1
|
|
|
|
|
|
#rm -rf limine
|
|
# Download the latest Limine binary release for the 10.x branch.
|
|
#git clone https://codeberg.org/Limine/Limine.git limine --branch=v10.x-binary --depth=1
|
|
|
|
# Build "limine" utility.
|
|
#make -C limine
|
|
|
|
# Install the Limine BIOS stages onto the image.
|
|
./limine/limine bios-install image.hdd
|
|
|
|
# Format the image as fat32.
|
|
, mformat -i image.hdd@@1M
|
|
|
|
# Make relevant subdirectories.
|
|
, mmd -i image.hdd@@1M ::/EFI ::/EFI/BOOT ::/boot ::/boot/limine
|
|
|
|
# Copy over the relevant files.
|
|
, mcopy -i image.hdd@@1M bin/os ::/boot
|
|
, mcopy -i image.hdd@@1M limine.conf limine/limine-bios.sys ::/boot/limine
|
|
, mcopy -i image.hdd@@1M limine/BOOTX64.EFI ::/EFI/BOOT
|
|
, mcopy -i image.hdd@@1M limine/BOOTIA32.EFI ::/EFI/BOOT
|