Running a different version of macOS or another operating system in a virtual machine is fairly straightforward on an Intel Mac, and there’s no shortage of apps to do that. When it comes to doing the same job on Apple silicon Macs, choice is more limited. This article is a brief survey of what’s currently available, placing emphasis on the most challenging task, running macOS as a guest operating system.
Virtualising Monterey is important to many users with the forthcoming release of macOS Ventura. Although early indications are that apps compatible with Monterey are unlikely to have problems with Ventura, if you want to upgrade to macOS 13, having an escape route is essential. Being able to run up a Monterey VM is highly desirable to safeguard your Mac’s transition.
There are currently three major apps to run macOS as a guest on an Apple silicon Mac with Monterey 12.5 as a host:
- Parallels Desktop version 18,
- UTM version 3.2.4,
- VirtualBuddy version 1.2.1.
There’s also my free app Viable now in beta 3.
Although VMware Fusion is available in a pre-release version and can run Windows 11 for ARM and various Linux distros as guests, it can’t run macOS as a guest.
Parallels Desktop costs upwards of $/€99.99 or £89.99, and UTM is available from the App Store for around $/€/£9.99, or free from its own site. VirtualBuddy is free and open source, and Viable is also free.
All four of these apps currently use Apple’s Virtualization framework to download, install and run macOS guests, thus have almost identical core features and shortcomings. The one notable exception to this is VirtualBuddy, which apparently uses an undocumented method of booting a Monterey guest into Recovery mode. That’s essential if you want to downgrade or disable Secure Boot, for example if you want to turn SIP off in your VM.
This also means that none of the apps supports proper shared folders with the host, because of a limitation in Monterey. To exchange files between the VM and the Mac host you should enable file sharing on the host, and connect to that from the guest. Clipboard support is another feature which is either not available yet, or only supported in an early and experimental form.
None of the apps supports Apple ID connections, which is a serious problem for making the transition to Ventura: this means that a Monterey VM can’t run App Store apps at all, except for Apple’s free apps, such as Numbers. The only reliable cover for those is with a second bootable system allowing your Mac to start up in Monterey, not virtualisation.
The Virtualization framework allows VM settings such as the number of vCPUs, memory and display to be made defaults for that VM, and for them to be changed whenever that VM is run. This contrasts with the size of VM disk storage, which is set at first installation and can’t be changed later.
Although all the apps give full access to VM settings at installation, they’re not all so easy to change when you run a VM. Parallels, which provides excellent GUI controls for Windows and Linux VMs, offers none at all for macOS guests, instead requiring the user to edit a text configuration file within the VM bundle. Although UTM does provide good GUI controls, they’re hidden behind a tool in its toolbar.
The most common problem with all these apps is configuration of the virtual display. This isn’t well documented, and is currently quirky to say the least. Even when you think you’ve got the settings right, you’ll open a VM only to find it has gone microscopic or is bursting out of its window. However, the solution currently adopted by UTM, with a popup menu offering no less than 35 different settings and an HiDPI checkbox isn’t the answer, particularly when there’s no mention of the Studio Display, surely one of the more popular hardware options.
Overall, VirtualBuddy has by far the best interface and controls, UTM could do with a redesign, and Parallels should be embarrassed at releasing a product missing a proper control interface.
The largest part of any virtualisation system are its VMs. You can’t do much with a macOS VM smaller than about 32 GB, so being able to tuck them away where Time Machine won’t back them up is most important, as is their structure.
Here, UTM isn’t as helpful as it should be. Its default location for storing VMs is buried in its app container, and it doesn’t even have the decency to add that to Time Machine’s exclusions list. Unless you know what to do, you’ll quickly find its VMs filling up your backup storage. It will open VMs saved elsewhere, but while it does remember their path, it forgets how to find any VM saved to a custom location, forcing you to remind it every time you open the app.
Parallels is its usual helpful self: it automatically creates its own folder and adds it to Time Machine’s list of excluded locations. You can also override that with any other location. VirtualBuddy is also customisable, but doesn’t help with the list of exclusions.
None of these apps points out the best solution to VM storage. While adding their folder to the backup exclusion list spares backup storage, it does nothing to minimise the size of volume snapshots. By far the most economical solution is to create a new volume on which to keep your VMs; when that’s added to Time Machine’s exclusion list, then snapshots won’t be made of that volume either.
Apple adopted a structured bundle for VMs, and each of these apps follows suit to a degree. While VirtualBuddy and Viable follow Apple’s original layout, and can share VMs, UTM and Parallels are different and unnecessarily incompatible.
VirtualBuddy and Viable are one-trick ponies, and only virtualise macOS, although the latter has a sibling, Liviable, which supports GUI Linux guests but requires Ventura.
UTM is the most versatile, as it’s built on QEMU and can perform full emulation of other architectures as well as virtualising pretty well anything that runs native on ARM. Although emulation appears effective, it won’t deliver sufficient performance to run heavyweight apps like many games.
Parallels is probably the simplest way of gaining access to Windows 11 for ARM or Linux, as it will automatically download and install either for you. It also offers extras including its Toolbox that some find more generally useful.
- For the best macOS virtualisation, VirtualBuddy, particularly if you need to alter Secure Boot settings or turn SIP off.
- For a fuller range of guests, either Parallels or UTM, depending on how extensive that range is.
- Beware, though: none of these supports Apple ID, so none can be used to run old versions of App Store apps.
This is changing rapidly. Hopefully Parallels will soon get around to providing proper controls for its macOS guests. Other features may arrive before Ventura.