utmapp / UTM

Virtual machines for iOS and macOS
https://getutm.app
Apache License 2.0
26.32k stars 1.32k forks source link

Apple Rosetta emulation for QEMU backend #6465

Open freebrowser1 opened 2 months ago

freebrowser1 commented 2 months ago

Describe the issue
Not an issue, but a question. After trying to convert an existing VM (Ubuntu x86-64 emulated on M1) I could not find the option 'Rosetta emulation' in the settings of the VM.

Configuration

Upload VM
config.plist.zip

UrkiMimi commented 2 months ago

Rosetta x86_64 emulation only works for ARM64 Virtual Machines using Apple Virtualization. You can't use Rosetta with x86_64 VMs.

Behinder commented 2 months ago

Yes you can, if you use Qemu you may launch qemu-aarch-x86_64 in rosetta mode first changing environment in terminal env /usr/bin/arch -x86_64 /opt/local/bin/zsh --login so same behaviour should be available on UTM.

freebrowser1 commented 2 months ago

Rosetta x86_64 emulation only works for ARM64 Virtual Machines using Apple Virtualization. You can't use Rosetta with x86_64 VMs.

No, that is not how it works. Rosetta is meant to run x86-64 apps on ARM architecture and Apple now supports even Linux VMs on an ARM powered Mac. This documentation : https://docs.getutm.app/advanced/rosetta/ tells about this, but what I don't know and want to know is how to convert an existing VM to Rosetta.

osy commented 3 weeks ago

In macOS 15, hypervisor.framework should support this but we'll have to add it to QEMU

freebrowser1 commented 3 weeks ago

In macOS 15, hypervisor.framework should support this but we'll have to add it to QEMU

What does that mean ? That UTM should be updated to a new, yet to release, version when I update my Mac to Sequoia ?

osy commented 3 weeks ago

Yeah it'll need to be added to QEMU first and then UTM. So probably in the next release.