Hi all,
I believe the behavior we're seeing is explained in the documentation "Using iCloud with macOS virtual machines"
https://developer.apple.com/documentation/virtualization/using-icloud-with-macos-virtual-machines
From the article:
If someone moves a VM to a different Mac host and restarts it...
Additionally, the Virtualization framework detects attempts to start multiple copies of the same VM simultaneously on the same Mac host...
My interpretation of this is:
The Virtualization framework will assign a new Secure Enclave-derived UDID if a VM is started on a different host.
It will also assign a new UDID if a cloned VM is started on the same host while the original VM is running at the same time.
Given these constraints, I don't think it's possible to reliably preserve a Secure Enclave-derived UDID across multiple cloned environments.
However, at least for now, it's still possible to install macOS 15/26 using the older ChipID=0000FE00 style UDID.
In my UTM workflow, the process looks like this:
Locate en existing VM that uses the old UDID format (with the expected UDID),
Create a new VM in UTM, but do not install macOS yet, quit UTM,
Edit the new VM's config.plist, copy HardwareModel and MachineIdentifier from the old VM,
I hope future versions of macOS will remain compatible with this old UDID format (DataRepresentationVersion=1), as it's currently the only practical method I'm aware of for preserving UDIDs.
Shay
Topic:
App & System Services
SubTopic:
Core OS
Tags: