Skip to content

Instantly share code, notes, and snippets.

@eddieh
Last active March 15, 2026 21:14
Show Gist options
  • Select an option

  • Save eddieh/397f7b7ffc88e956b57e7432a26dfd16 to your computer and use it in GitHub Desktop.

Select an option

Save eddieh/397f7b7ffc88e956b57e7432a26dfd16 to your computer and use it in GitHub Desktop.
Ubuntu arm64 in QEMU on Mac host:
qemu-system-aarch64 -m 4096M -cpu host -M virt,accel=hvf \
-bios /opt/homebrew/share/qemu/edk2-aarch64-code.fd \
-serial stdio -device virtio-gpu -device virtio-keyboard \
-device virtio-mouse -display default,show-cursor=on \
-cdrom ubuntu-25.10-desktop-arm64.iso
Keyboard useable from Grub (requires qemu-xhci & usb-kbd):
qemu-system-aarch64 -m 4096M -cpu host -M virt,accel=hvf \
-bios /opt/homebrew/share/qemu/edk2-aarch64-code.fd \
-serial stdio -device virtio-gpu -device qemu-xhci -device usb-kbd \
-device usb-mouse -display default,show-cursor=on \
-cdrom ubuntu-25.10-desktop-arm64.iso
NetBSD aarch64 in Qemu on Mac host:
curl -JLO https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz
gunzip arm64.img.gz
qemu-img resize arm64.img 10g
curl -JLO https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-aarch64/binary/kernel/netbsd-GENERIC64.img.gz
qemu-system-aarch64 -m 512m -cpu host -M virt,accel=hvf \
-drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \
-device virtio-rng-pci -kernel netbsd-GENERIC64.img -append "root=NAME=netbsd-root" \
-netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \
-display none -serial stdio
NetBSD (vm image w/o seperate kernel) aarch64 in QEMU on Mac hose:
curl -JLO https://nycdn.netbsd.org/pub/arm/NetBSD-10.1-release/NetBSD-10-aarch64-generic.img.gz
qemu-system-aarch64 -m 512m -cpu host -M virt,accel=hvf \
-bios /opt/homebrew/share/qemu/edk2-aarch64-code.fd \
-drive if=none,file=NetBSD-10-aarch64-generic.img,id=hd0 \
-device virtio-blk-device,drive=hd0 \
-device virtio-rng-pci -nographic -echr 26
Debian arm64 in Qemu on Mac host:
curl -JLO https://cloud.debian.org/images/cloud/trixie/latest/debian-13-nocloud-arm64.qcow2
qemu-system-aarch64 -m 512m -cpu host -M virt,accel=hvf \
-bios /opt/homebrew/share/qemu/edk2-aarch64-code.fd \
-serial stdio -snapshot debian-13-nocloud-arm64.qcow2
Debian arm64 in Qemu on Mac host with r/w disk image:
qemu-system-aarch64 -m 512m -cpu host -M virt,accel=hvf \
-bios /opt/homebrew/share/qemu/edk2-aarch64-code.fd \
-serial stdio -display none \
-drive if=none,file=debian-13-nocloud-arm64.qcow2,id=hd0 \
-device virtio-blk-device,drive=hd0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment