Skip to content
Snippets Groups Projects
Commit 30818145 authored by Bensong Liu's avatar Bensong Liu
Browse files

add_efi

parent fcf0cc96
No related branches found
No related tags found
No related merge requests found
default: assemble default: assemble-legacy
bootloader: bootloader-legacy:
$(MAKE) -C bootloader $(MAKE) -C bootloader-legacy
bootloader-uefi:
$(MAKE) -C bootloader-legacy
kernel: kernel:
$(MAKE) -C kernel $(MAKE) -C kernel
.PHONY: bootloader kernel .PHONY: bootloader-legacy bootloader-uefi kernel
build: bootloader-legacy bootloader-uefi kernel
build: bootloader kernel assemble-legacy: build
cat bootloader-legacy/boot.img kernel/kernel.img > legacy.img
assemble: build assemble-uefi: build
cat bootloader/boot.img kernel/kernel.img > disk.img
run: assemble run-legacy: assemble-legacy
qemu-system-x86_64 disk.img qemu-system-x86_64 legacy.img
File moved
File moved
File moved
File moved
File moved
File moved
#!/usr/bin/fish #!/usr/bin/fish
set efi_file $argv[1] set efi_file $argv[1]
set output_file ./output.img set kernel_file $argv[2]
if test (count $argv) -lt 2
echo "Usage: $argv[0] <efi_file> <kernel_file>"
exit 1
end
set output_file ./disk.img
set mountp ./tmp.mount.point set mountp ./tmp.mount.point
set disk_size 256M
dd if=/dev/zero of=$output_file bs=560M count=1 status=progress # Create disk image
and sgdisk -n 1:0:0 $output_file dd if=/dev/zero of=$output_file bs=$disk_size count=1 status=progress
and sgdisk -n 1:0:+128M $output_file # EFI system partition
# Format partitions
and sudo losetup /dev/loop5 $output_file --partscan and sudo losetup /dev/loop5 $output_file --partscan
and sudo mkfs.vfat -F32 /dev/loop5p1 and sudo mkfs.fat -s2 -F32 /dev/loop5p1
# Mount EFI partition
and rm -rf $mountp ; and mkdir $mountp and rm -rf $mountp ; and mkdir $mountp
and sudo mount /dev/loop5p1 $mountp and sudo mount /dev/loop5p1 $mountp
and sudo mkdir -p $mountp/efi/boot and sudo mkdir -p $mountp/efi/boot
# load files
and sudo cp $efi_file $mountp/efi/boot/BOOTX64.efi and sudo cp $efi_file $mountp/efi/boot/BOOTX64.efi
and sudo cp $kernel_file $mountp/kernel.efi
# Cleanup
and sudo umount $mountp and sudo umount $mountp
and sudo sync and sudo sync
and sudo losetup -d /dev/loop5 and sudo losetup -d /dev/loop5
and rmdir $mountp
and echo "Success" and echo "Success"
or echo "Failed." or echo "Failed."
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment