macOS virtualisation is leaping forward in Golden Gate

Buried beneath many layers of AI improvements, macOS Golden Gate is bringing major enhancements to virtualising macOS, as already described at WWDC and in its beta documentation. These come in three main areas:

  • USB accessory access, including external storage,
  • guest provisioning,
  • layered ASIF disk images.

These are each explained by Ronnie Misra in his session in WWDC26.

USB accessories

One of the most frequently requested features in macOS virtualisation is support for external storage and other peripherals connected to the host Mac via USB. The code required to support this is relatively trivial, and its implementation is neat: if you’re running a macOS VM when a suitable peripheral is connected, there’s a menu bar addition to allow you to declare that to the VM. If you approve that, it should become accessible within the VM immediately.

Apple provides all the details here.

Guest provisioning

Currently the primary admin user account has to be set up during the initial run of each VM. When configuring a macOS 27 VM to be run on a macOS 27 host for the first time, it will be possible to configure that first user automatically. This includes their full and short user names, password, whether that user logs in automatically when the VM is started up, and whether remote login using SSH is enabled. This only works when that VM is being set up for the first time.

This should make initial configuration much simpler for those who create VMs more frequently. Documentation is here.

Disk images

The most complex changes are in disk images used by VMs, which now support layering. This is a feature already used in similar situations, such as Docker layers and in Citrix app layering.

Currently, each VM has a single disk image, either in traditional raw format, or using Apple’s recent ASIF. While raw disk images work well with self-contained local VMs, and APFS maintains them as sparse files, those hosted on other file systems or made available over a network aren’t flexible enough.

In a layered disk image, the base layer contains a read-only foundation for the VM, such as its System volume and SSV. That can be shared across multiple VMs, and stored on slower media like a hard disk. To cope with a base layer on slower storage, there can then be a cache layer over that, to improve performance. On top of those is a read-write overlay layer to store additional files, such as the Data volume, and modifications to those stored in the base layer. This is also ideal for snapshots. Overlay layers can change size as needed, although that doesn’t itself change the size of the file system within them.

For those who currently create single independent VMs on SSDs, layering is unlikely to offer much. However, it offers flexibility for those wanting multiple VMs with a common base, particularly if that is stored on a hard disk. There are performance penalties with layering that may make it unsuitable for every VM, though.

These layered ASIF disk images are also available for more general use, where they could prove more widely applicable. Documentation for the new DiskImageKit is here. It remains to be seen whether these features are also made accessible in command tools.

One more elephant

Sadly, not only is there still one elephant in the room, that of App Store access, for which there has been no announcement, but virtualisation now has another, improvements in AI and the new Siri.

Finally, these new features are only available in Golden Gate, which looks to be something of a watershed in macOS virtualisation.