Documentation Index
Fetch the complete documentation index at: https://docs.macstadium.com/llms.txt
Use this file to discover all available pages before exploring further.
MacStadium VDI is a separate product from Orka Cluster. These release notes cover VDI-specific features only. They do not apply to standard Orka cluster deployments.
MacStadium VDI 1.0
Release summary
MacStadium VDI 1.0 is the initial production release of MacStadium’s virtual desktop platform. This release delivers a Semaphore-based management UI, automated Citrix VDA provisioning, OCI image support, Android Virtual Device capabilities, and a full set of VM lifecycle management tools.Requirements
- Valid MacStadium VDI license
- Apple Silicon Mac nodes (Intel is not supported)
- macOS 13 (Ventura), 14 (Sonoma), 15 (Sequoia), or 26 (Tahoe) on host nodes
- Ansible control node with
sshpassinstalled andDockerinstalled - Each physical Mac supports a maximum of two concurrent macOS VMs (Apple EULA)
- Active Citrix DaaS or CVAD subscription
- Citrix Workspace app 2402 or later
- Network configured per Citrix VDA requirements
New features
Semaphore UI for VDI management
MacStadium VDI ships with a MacStadium-branded Semaphore instance (an open-source Ansible GUI) that runs via Docker Compose. The Semaphore UI is distributed as a prebuilt Docker image maintained by MacStadium, so end users do not need to build it themselves. It comes with all task templates pre-loaded, so IT administrators can manage VDI deployments through a web interface without invoking Ansible directly. After initial setup, operators only need to update SSH credentials in the key store. Available task templates cover the full VM lifecycle: deploy, list, manage VM state (running, stopped, absent), delete, create and push images, pull images, install the Orka Engine, Citrix VDA installation and enrollment, and Android AVD management.
Prerequisites: Docker and uv must be installed.
Automated Citrix VDA installation and enrollment
Citrix VDA installation and registration are fully automated via Ansible playbooks. The provisioning flow handles VDA agent download, TCC permission setup (required for remote access on macOS), and enrollment against a Citrix Cloud token, all without manual steps on the VM. A SIP-disabled base image is required for TCC automation (for example,ghcr.io/macstadium/orka-images/sequoia:latest-no-sip).
OCI image support
VDI deployments can push and pull VM images to and from OCI registries, including private registries with rotating credentials (ECR supported). When deploying a VM, you can specify whether the image is public or private; private images trigger automatic registry authentication before the pull. This brings VDI image management in line with standard Orka OCI storage workflows.VM provisioning and management
- Deployments accept RAM, CPU, and network interface as parameters, giving operators direct control over VM resource allocation and networking configuration (including bridge networking) at deploy time.
- VM IP addresses are displayed in both deploy and list outputs, eliminating the need to look up IPs separately after provisioning.
provision_user.ymlcreates macOS admin user accounts on running VMs via SSH. It is available as the VM: Provision User to VM task template in Semaphore, or can be run directly via Ansible.- Image
listanddeleteoperations are available as Semaphore tasks. - VMs can be managed and deleted by name prefix, making bulk operations across groups of VMs simpler.
Android Virtual Device support
MacStadium VDI supports running Android Virtual Devices (AVDs) alongside macOS desktop sessions. Android emulators cannot run inside a macOS VM due to Apple Virtualization Framework limitations that prevent nested virtualization. Orka’s solution runs the emulator directly on the physical host node and sets up asocat relay. Once an AVD is provisioned, the system outputs an IP address and port that you use to connect from your macOS VM session:
- Setup:
install_android_sdk.ymlinstalls Homebrew, the Android SDK, and supporting tools on the host node.sdkmanager_install.ymlinstalls additional SDK platforms and system images.list_avd_profiles.ymllists available device profiles before creating an AVD. - Lifecycle: Deploy and create AVDs scoped to specific VMs (
deploy_avd.yml), list running AVDs (list_avds.yml), and delete a specific AVD (delete_avd.yml). - State management:
avd.ymlmanages ongoing AVD state via adesired_stateparameter:running,stopped, orabsent.
VM configuration requirements
macOS VMs that connect to AVDs must havescrcpy and adb installed. The simplest installation path is Homebrew:
Prerequisites
- MacStadium VDI deployed and operational
- Contact MacStadium support to enable AVD provisioning for your environment

