How To Install macOS In A Virtual Machine On Linux Using Sosumi (Snap Package)
Sosumi is a snap package based on macOS-Simple-KVM that makes it easy to download and install macOS in a virtual machine (it comes bundled with qemu-virgil, which includes virtio-vga, a paravirtual 3D graphics driver). It does not ship with macOS, but downloads an installer image for macOS Catalina.
[[Edit]] This package has been abandoned, and is no longer updated. Use this instead: Install macOS Big Sur Or Catalina In A Virtual Machine Using Docker-OSX
------------------------------------------------------------------------------------------------It's worth noting from the start that Apple doesn't allow installing macOS on non-Apple hardware, so to use this legally you must have Linux installed on Apple hardware.
After using Sosumi for a few hours on my Ubuntu 20.04 desktop, I can tell you that the installation takes quite a while (about 50 minutes on my system), and the macOS system may be a bit slow, but it's usable. So this may not be suitable to be used for heavy tasks, but it's perfect for testing.
This snap package, created by Alan Pope of Canonical / Ubuntu, makes it easy to install and run macOS in a virtual machine on Debian / Ubuntu, Fedora and other Linux distributions (after installing snapd), shipping with basically everything you need to get it running. You can find the snap package source on GitHub. If you don't want to use the snap package though, you have the alternative of using macOS-Simple-KVM, a set of tools to set up a quick macOS virtual machine in QEMU (accelerated by KVM).
Before installing this there are a few important things I want to note:
- After installing macOS in the virtual machine, the total size of the Sosumi folder (
~/snap/sosumi
) on my system is about 31,5 GB, but this can get larger as you install extra applications in the macOS virtual machine - Your computer CPU needs to support hardware virtualization. See the KVM checklist from here to find out if your CPU supports this
- Both Intel and AMD CPUs are supported, but the recommendations are Ivy Bridge (or later) Core and Xeon processors, or Ryzen and Threadripper processors (from the macOS-Simple-KVM FAQ)
- You can get the QEMU virtual machine to release your mouse focus by pressing
CTRL + Alt + G
- The launch script, which contains various parameters (like the available VM memory, CPU count, etc.) that you can tweak, can be found in
~/snap/sosumi/common/launch
How to install macOS in a virtual machine (QEMU) on Linux using Sosumi snap package
To install Sosumi you'll need to be able to install Snap packages on your system. This is enabled by default in Ubuntu, and on other Linux distributions follow the instructions from the Snapcraft docs.
1. Install the Sosumi snap package:
sudo snap install sosumi --edge
Why edge? In my test, the macOS virtual machine did not start after using the Sosumi stable package, but it does work with the edge version. You can skip
--edge
from the command to install the stable version if you wish.2. Run Sosumi for the first time by typing
sosumi
in a terminal. This is only required the first time; an applications menu shortcut is created for future launches.[[Edit]] In case you run into an issue saying it failed to run Sosumi / qemu because it can't start X11, add your user to the
kvm
group:sudo usermod -aG kvm $USER
Issue mentioned by Bob White in the comments below.
3. After the virtual machine boots, press
Enter
to Boot macOS Install from macOS Base System
:4. Format the macOS virtual machine HDD.
You'll get to a screen with a dialog called
macOS Utilities
- from there click on Disk Utility
:In the Disk Utility dialog choose the first
Apple HDD
on the left-hand sidebar (the one with a capacity of 68,72 GB), then click Erase
, enter a name for the HDD (like macOS), and leave the rest of options as they are (mac OS Extended (Journaled) filesystem with GUID Partition Map):Now click the
Erase
button to format the partition.5. Install macOS in the virtual machine.
When you're done close
Disk Utility
, and you'll get to the macOS Utility
dialog again. From this dialog choose Reinstall macOS
. Click Continue
a couple of times and you'll get to a screen where you must choose the HDD formatted in step 4:Next, click
Install
and the installation will begin:The virtual machine will reboot automatically at some point, continuing with the installation after that, and reboot again when it's done.
6. Boot into macOS
After the installation is completed, the macOS virtual machine will reboot, and in the boot menu you'll see some extra options. Use the left/right arrow keys to select
Boot macOS from...
, like this (in Boot macOS from macOS
, the second macOS is the name of the HDD set in step 4):You will need to select this option each time you start the virtual machine, when you want to boot into macOS.
The first time you boot into macOS you'll need to perform the initial setup (screenshot above), choosing your location, preferred languages, optionally sign in with your Apple ID, agree to the terms and conditions etc., as well as create your computer account (username and password). Once you're done, the macOS Catalina desktop should load.