Created
March 3, 2023 20:35
-
-
Save kuraga/4deec061ab859f630bdab2005b388276 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
set -x | |
set -e | |
set -u | |
truncate -s 64MiB hdd.img | |
losetup /dev/loop0 hdd.img | |
sgdisk -n 1:0:+60MiB -t 1:ef00 -c 1:"linux-boot" -p /dev/loop0 | |
partprobe /dev/loop0 | |
mkfs.vfat -F 32 /dev/loop0p1 | |
mkdir boot | |
mount /dev/loop0p1 boot | |
wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.2.1.tar.xz | |
tar xJf linux-6.2.1.tar.xz | |
cd linux-6.2.1 | |
make tinyconfig ARCH=i386 | |
make clean && make mrproper && make distclean | |
./scripts/config -e CONFIG_64BIT \ | |
-d CONFIG_EMBEDDED \ | |
-d CONFIG_EXPERT \ | |
-e CONFIG_SERIAL_8250 \ | |
-e CONFIG_SERIAL_8250_CONSOLE \ | |
-e CONFIG_VIRTIO \ | |
-e CONFIG_VIRTIO_MENU \ | |
-e CONFIG_PCI \ | |
-e CONFIG_VIRTIO_PCI \ | |
-e CONFIG_VIRTIO_BLK \ | |
-e CONFIG_EFI_PARTITION \ | |
-e CONFIG_EXT4_FS \ | |
-e CONFIG_BINFMT_ELF | |
yes "" | make oldconfig | |
make -j$(nproc) | |
cp -iv arch/x86/boot/bzImage ../boot/vmlinuz-6.2.1 | |
cp -iv System.map ../boot/System.map-6.2.1 | |
cp -iv .config ../boot/config-6.2.1 | |
cd .. | |
umount boot | |
losetup -d /dev/loop0 | |
cp -v /usr/share/edk2-ovmf/OVMF_VARS.fd . | |
qemu-system-x86_64 \ | |
-drive if=pflash,format=raw,readonly=on,file=/usr/share/edk2-ovmf/OVMF_CODE.fd \ | |
-drive if=pflash,format=raw,file=./OVMF_VARS.fd \ | |
-drive file=hdd.img,format=raw,if=virtio |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment