OSX-KVM: Install Setup

From wikinotes

The official readme is very good, and comprehensive. These are simply my condensed notes (and workarounds for quirks).

See https://github.com/kholia/OSX-KVM

requirements

sudo pacman -S qemu \
  virt-manager \
  dmg2img \
  git \
  ebtables \
  dnsmasq \
  firewalld \
  wget 

pacaur -S libguestfs
pacaur -S uml_utilities

sudo systemctl {enable,start} firewalld.service
sudo systemctl {enable,start} libvirtd.service
sudo virsh net-start default

# NOTE: temporary!
echo 1 > /sys/module/kvm/parameters/ignore_msrs

network setup

NOTE:

This is only necessary if you intend to use tap interface. (I normally don't)

sudo ip tuntap add dev tap0 mode tap
sudo ip link set tap0 up promisc on
sudo virsh net-start default
sudo ip link set dev tap0 master virbr0

Prepare for Install

git clone https://github.com/kholia/OSX-KVM
cd OSX-KVM

# download installer
# NOTE: High-Sierra is newest with support for new nvidia cards 
#       (only relevant if GPU-passthrough)
./fetch-macOS.py

# extract image
dmg2img BaseSystem.dmg BaseSystem.img

# create disk
# NOTE: `mac_hdd_ng.img` required for other scripts
# NOTE: file will not actually occupy 128G, just can be expanded this much
qemu-img create -f qcow2 mac_hdd_ng.img 128G

From this point onwards, the instructions vary heavily between OS versions. Continue from here: https://github.com/kholia/OSX-KVM#installation