From Frustration to Breakthrough: Running macOS on KVM

For years, I chased the dream of running macOS in a virtual machine.
On Windows, I tried VMware and VirtualBox countless times with different tutorials and blogs. Each attempt ended in frustration: crashes, unsupported hardware, endless configuration rabbit holes. It felt like a goal always just out of reach. And finally I found https://github.com/kholia/OSX-KVM it has the readme which explains the steps for setting up.

First couple of attempts failed as usual.


The Breakthrough

After many failed experiments, paired with Github Copilot to help refine the setup. This time, things clicked.

The key changes were subtle but powerful:

  • Adjusting CPU flags and thread allocation for better compatibility
  • Increasing RAM and core counts to give macOS breathing room
  • Adding a no‑reboot option and restructuring QEMU arguments for stability

You can see the details here for the these tweaks.


The Moment of Success

After days of trial and error, I woke up one morning, applied the final tweaks, and it worked. macOS booted smoothly inside my QEMU VM. A moment of triumph after years of effort.

Here’s the screenshot I shared on the Fediverse:

macOS VM running GitHub page in QEMU on Debian


Reflections

Running macOS on KVM isn’t just about virtualization.
For me, it’s proof that with patience, experimentation, and the right guidance, even long‑standing technical goals can be achieved.

Thanks to Debian for the rock‑solid foundation, and Copilot for being the companion that helped me cross the finish line.

I am still thinking to buy a mac mini though, VM is too slow 😄