No description
Find a file
2019-06-12 21:27:47 -04:00
docs [DOCS] Include new features. 2019-06-07 16:56:58 -04:00
firmware [FIRMWARE] Set default vars to 1280x720. 2019-05-06 03:29:38 -04:00
tools [CONF] Revert to e1000 due to iCloud services requirement. 2019-06-12 21:27:47 -04:00
.gitignore Add tools, jumpstart, and firmware. 2019-04-22 23:20:12 -04:00
basic.sh [CONF] Use USB Mouse by default due to Catalina tablet bug. 2019-06-05 17:53:09 -04:00
ESP.qcow2 [ESP] Update Clover to r4945, enable sound in Catalina. 2019-06-05 17:52:30 -04:00
jumpstart.sh [TOOLS] Revamp FetchMacOS. 2019-06-07 02:55:09 -04:00
make.sh [TOOLS] Formatting. 2019-06-07 02:55:17 -04:00
README.md [DOCS] Include new features. 2019-06-07 16:56:58 -04:00

macOS-Simple-KVM

Documentation to set up a simple macOS VM in QEMU, accelerated by KVM.

By @FoxletFox, and the help of many others.

Getting Started

You'll need a Linux system with qemu, python3, pip and the KVM extensions installed for this project. A Mac is not required. Some examples for different distributions:

    sudo apt-get install qemu python3 python3-pip  # for Ubuntu, Debian, Mint, and PopOS.
    sudo pacman -S qemu python python-pip          # for Arch.
    sudo xbps-install -Su qemu python3 python3-pip # for Void Linux.

Step 1

Run jumpstart.sh to download installation media for macOS (internet required). The default installation uses Catalina, but you can choose which version to get by adding either --high-sierra, --mojave, or --catalina. For example:

./jumpstart.sh --mojave

Note: You can skip this if you already have BaseSystem.img downloaded. If you have BaseSystem.dmg, you will need to convert it with the dmg2img tool.

Step 2

Create an empty hard disk using qemu-img, changing the name and size to preference:

qemu-img create -f qcow2 MyDisk.qcow2 64G

and add it to the end of basic.sh:

    -drive id=SystemDisk,if=none,file=MyDisk.qcow2 \
    -device ide-hd,bus=sata.4,drive=SystemDisk \

Then run basic.sh to start the machine and install macOS.

Step 2a (Virtual Machine Manager)

If instead of QEMU, you'd like to import the setup into Virt-Manager for further configuration, just run make.sh --add.

Step 3

You're done!

To fine-tune the system and improve performance, look in the docs folder for more information on adding memory, seting up bridged networking, adding passthrough hardware (for GPUs), and enabling sound features.