cocoon-macos

VM Boot & Firmware

How a macOS guest boots, and the current desktop/GUI status. Display, GPU, and Setup-Assistant limitations are in Known issues.

Boot recipe

Every VM boots the same way on Intel and AMD:

GUI renders; Setup-Assistant skip is WIP

The full Tahoe desktop does render over VNC — testbed-verified: boot → login window (the cocoon user) → type cocoon → Finder + Dock + menu bar + desktop widgets, all repainting normally.

What’s left for a fully unattended boot-to-desktop is auto-skipping the first-run Setup Assistant plus auto-login. The post-SA recipe is validated on a testbed VM: complete home + com.apple.SetupAssistant DidSee*/LastSeen* markers + auto-login (autoLoginUser + /etc/kcpassword written via perl pack) + keyboard-wizard suppress + pmset no-sleep.

The blocker: a fresh macOS 26 (Tahoe) clone boots to the system Setup Assistant (_mbsetupuser / SetupAssistantSpringboard) and it resists every marker-based skip tried (.AppleSetupDone, complete home from the User Template, .skipbuddy, DidSee*, auto-login, a killsa daemon, removing /var/db/ConfigurationProfiles [SIP-blocked]). macOS 14+ broke the classic .AppleSetupDone skip, and the keyboard does not register at the SA — so the only reliable automated skip is a mouse/OCR click-through of the SA wizard (the install-stage OCR machinery), not yet implemented. Until then, :26 is SSH/VNC-login-usable but the GUI lands at the Setup Assistant.