Skip to content

qemu: use DXMT when Rosetta is not installed - #7972

Merged
osy merged 1 commit into
mainfrom
fix/d3dmetal-requires-rosetta
Oct 16, 2026
Merged

osy merged 1 commit into
mainfrom
fix/d3dmetal-requires-rosetta

Conversation

@osy

@osy osy commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

D3DMetal.framework is x86_64 only, so on Apple Silicon the Neptune render worker that loads it runs under Rosetta. The default DirectX driver picks D3DMetal whenever the framework is bundled, so on a Mac without Rosetta the worker never starts and Windows guests with the 3D drivers boot to "Display output is not active".

This falls back to DXMT when Rosetta is not installed (using the existing VZLinuxRosettaDirectoryShare.availability check), and only offers D3DMetal in Settings once Rosetta is installed. Intel Macs and iOS are unchanged.

Testing: Tested by a human on macOS 27.0, MacBook Air (M3).
The author acknowledges that this change has been tested and/or reviewed by a human in accordance with UTM's AI contribution guidelines.

D3DMetal.framework is x86_64 only, so on Apple Silicon the Neptune render
worker that loads it runs under Rosetta. The default DirectX driver picks
D3DMetal whenever the framework is bundled, so on a Mac without Rosetta the
worker can never start and Windows guests with the 3D drivers boot to
"Display output is not active".

Fall back to DXMT when Rosetta is not installed, and only offer D3DMetal in
Settings once it is.

Assisted-by: Claude:claude-opus-5-5
@osy osy added this to the v5.0 milestone Oct 16, 2026
@osy
osy merged commit 8453cb1 into main Oct 16, 2026
27 checks passed
@osy
osy deleted the fix/d3dmetal-requires-rosetta branch October 16, 2026 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant