Releases: utmapp/UTM
v3.0.0 (Beta)
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
Highlights
- Wizard for VM creation: Easily create a new VM with the correct default settings with a guided step-by-step wizard. Preview: https://twitter.com/UTMapp/status/1475606159428046854
- QEMU v6.2.0: Updated QEMU backend to the latest release. Full changelog: https://wiki.qemu.org/ChangeLog/6.2
- (iOS 13+) New toolbar: The new toolbar is much more compact and friendly for smaller displays. It is also now movable and does not interfere with the iOS 15 multitasking button on the top center of the screen. Preview: https://twitter.com/UTMapp/status/1407350167494443023
- (macOS 12+, ARM64) Virtualize macOS 12: New integration with Apple's Virtualization.framework backend allows native hardware accelerated virtualization of macOS 12 (supporting both CPU and GPU virtualization). UTM can also download the latest macOS IPSW directly from Apple. (This is only supported on macOS 12+ running on an ARM64 Mac.)
- (macOS 11+) Virtualize Linux with Apple backend: You now have the option to use Apple's Virtualization.framework to virtualize Linux. Note that while there are some performance benefits, it is still recommended to use the QEMU backend as it is more stable, has more device support (including graphical display), and is easier to configure.
Notes
- The default CPU for ARM64 virtual machine has changed from
cortex-a72
todefault
. This is the recommended option and you should change your existing VMs to use it. When using virtualization on M1(X) macOS, thecortex-a72
CPU is known to have compatibility issues which causes the VM to sometimes freeze (including during Windows install).default
will use thehost
CPU model when virtualization is used andcortex-a72
when emulation is used. - The GL hardware acceleration support is now marked experimental to highlight that it is not stable. It is also no longer the default option. If you are experiencing lots of crashes, make sure that you chose a display hardware that is not marked as "GPU Supported".
Changes (v3.0.0)
- Added VM creation wizard
- Updated QEMU to v6.2.0
- Updated ANGLE to latest commit
- Updated virglrenderer to latest commit (this may fix #2743)
- Added
default
andhost
CPU option for ARM64 virtual machines. This will be the default for newly created VMs. - The downloader will no longer perform CRC checks on the ZIP file and this will significantly speed up extraction.
- (iOS 13+) Redesigned toolbar (#496)
- (macOS) Redesigned VM settings
- (macOS) Fix crash moving drives (#3117)
- (macOS) Make HVF per-VM configurable (#2493)
- (macOS) Add Apple Virtualization.framework backend
- (macOS) New Terminal frontend with SwiftTerm, currently only used with Apple backend on macOS
- (macOS) Apple Virtualization supports virtual serial port through PTY device
Issues
Please check the full list on Github and help report any bug you find that is not listed.
v2.4.1
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
Notes
Note that some changes require updates to your VM configuration so please read this part carefully.
- Cursor disappearing on Windows 10/11 has been fixed with an updated VirtIO GPU driver. Additionally, dynamic resolution (auto-change resolution when VM window is resized) and more fixed resolutions (matching all the screen resolutions of the latest Mac computers) were added to the driver. This requires you to download the latest SPICE tools ISO from https://mac.getutm.app/support/ and run the installer again (or manually updating your GPU driver from the ISO if you know how).
- In v2.4.0, newly created Q35 and PC machine (x86 and x86_64) defaulted to the
Skylake-Client
CPU model. Subsequently, it was discovered that the change caused performance regressions. v2.4.1 reverted the default CPU model toDefault
but if you created a new Q35/PC VM in v2.4.0, it is recommended that you manually change the CPU in System settings toDefault
. - Since v1.0.0, UTM used the RTL8139 network card as the default for Q35 VMs (x86 and x86_64) and Virt VMs (ARM64). There is a bug in the device implementation that causes the Windows driver to freeze the system and many users reported Windows Installer freezing as well as random freezes through normal use. In v2.4.0, we changed the default network card for Virt machines to
virtio-net-pci
and in v2.4.1, we changed the default network card for Q35 machines to E1000. However, this change only applies to newly created VMs, and any existing VMs may still suffer from the random freeze issues. It is recommended that you change your network card toe1000
for Q35 machines andvirtio-net-pci
for Virt machines. Windows 7 and above should have the Intel E1000 network card drivers already installed, but the VirtIO Network card requires drivers in the SPICE tools ISO from https://mac.getutm.app/support/ (if you previously installed this, you should have the drivers already on your system). - (macOS) Since v2.1.2, UTM provided an option (Cmd+,) to "Use only performance cores by default" which defaulted to off. When on, any VM which does not have a manually configured CPU count (> 0) will set the CPU count to the number of performance cores on the system. In v2.4.1, we have made this option on by default which means if you previously have not modified this option, then it will now be on. If you turned the option on, it should not change and if you turned the option on and later off again, it should still be off. The reason for this change was because users may not be aware of this option which can result in degraded performance when left off and we believe the default should reflect the best possible performance. Note that as before, if you manually set a VM's CPU count > 0, then this option does not change anything.
Changes
- (iOS) Integrated AltKit for automatically triggering AltJIT when installed with AltStore (1.5b2+) and AltServer (1.5b8+) (thanks @JoeMatt)
- (iOS) Fixed sandbox issues (cannot select file) on jailbroken devices (thanks @Halo-Michael)
- Improved zh-Hans translation (thanks @js-john)
- Fixed inverted mouse cursor colour in Windows
- New VMs will only use PCores by default (unless manually overridden with Preferences or per-VM config), this also fixes #3180
- Changed default Q35 audio card to intel-hda
- Changed default Q35 network card to E1000 and Virt network card to virtio-net (#3130)
- Removed default CPU for Q35 and PC configurations because the Skylake-Client CPU resulted in performance regression (#3249)
- Fixed downloadVM URL action when the ZIP name collides with the .utm name (thanks @conath)
- Fixed a race condition leading to crash when a VM is shut down suddenly
Issues
Please check the full list on Github and help report any bug you find that is not listed.
v2.4.0
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (Summary)
- Improved support for SPARC and S390x
- Updated macOS icon thanks to a real designer (@jackhinkle)
Changes
- Fixed crash when trying to pause a GL accelerated VM (#3207)
- Configuration should reset more settings when changing architecture
- Fixed UTM exit when deleting a VM
- Fixed an incorrect mapping of removable drives causing an error "device not removable" when drives are moved around.
- On ARM64 virt systems, use the virtual USB 3.0 bus for the virtual DVD drive, should improve read times and fix some Windows installer issues (#3194) (thanks @conath)
- Fixed a crash booting OpenBSD (#3197) (thanks @agraf)
- Fixed a crash caused by a race condition when an error occurs during VM launch
- (macOS) Keyboard mapping accidentally swapped left/right Cmd and Option (#3175) (thanks @zeldin)
- (macOS) Removed "beep" when pressing Cmd+key while mouse is not captured (#3217)
- (macOS) Pass Ctrl+Tab to VM even when not captured because it is a common shortcut. VoiceOver users can use VO+Arrow to navigate.
- (macOS) Unhide cursor when alert prompt shows up
- (macOS) Fixed crash when trying to share a VM (#3208)
Known Issues
Please check the full list on Github and help report any bug you find that is not listed.
v2.3.1
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (Summary)
- URL automation and VM downloading (#2670) (thanks @conath) Allows for controlling and downloading VMs with
utm://
URL. Check out #2670 for more information. - (macOS) Improved cursor/keyboard capturing and handling: permit macOS shortcuts (minimize, full-screen) when not captured, fix various cursor bugs, basic support for VoiceOver and capturing, and more.
- (macOS) Various UI enhancements: export log/args to file (#3056), title bar changes (#3125), exit confirmation works beyond Cmd+Q/W (#3154) (thanks @ktprograms and @conath)
Changes (v2.3.1)
- Fixed crash when Fn key is pressed (thanks @ktprograms) (#3179)
- Fixed Unicode support in terminal mode (thanks @tie)
- Added additional Windows icons (thanks @conath)
- (macOS) Fixed numpad issues
- (macOS) Correct key mapping for ISO keyboards (#3175)
Changes (v2.3.0)
- Fixed DNS resolution on IPv6
- Updated zh-Hans localization (thanks @ty-yqs)
- Ensure temporary files are deleted when VM creation is canceled (#3012)
- Support re-generating and customizing MAC address (#2724)
- On PC/Q35 devices, USB mouse and keyboard will be disabled in order to prevent interference with the PS/2 keyboard and mouse that is always added to the machines. Some software such as Windows Installer will not work with the second mice.
- (macOS) Move VM name in main window from title to subtitle, reduces confusion when switching windows (#3099) (thanks @conath)
- (macOS) Show confirmation alert when closing/quitting with the menu or the button (#3103) (thanks @ktprograms)
- (macOS) Error alert (instead of crash) when trying to use unsupported features on < macOS 11.3 (#3118)
- (macOS) Support starting input capture with Ctrl+Opt (#3119)
- (macOS) Reduced UI thread blocking in terminal mode with lots of output spewing (#2404, #2555)
- (macOS) Add alternative hotkey for capture (Cmd+Opt) (#2710)
- (macOS) Unhide cursor when popup alert shows (#3101)
Known Issues
- Networking can be broken in some instances, we are still investigating the cause. (#3051, #3094)
- Windows 11 installation may randomly freeze and be corrupted (#3130)
Please check the full list on Github and help report any bug you find that is not listed.
v2.3.0 (Beta)
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (Summary)
- URL automation and VM downloading (#2670) (thanks @conath) Allows for controlling and downloading VMs with
utm://
URL. Check out #2670 for more information. - (macOS) Improved cursor/keyboard capturing and handling: permit macOS shortcuts (minimize, full-screen) when not captured, fix various cursor bugs, basic support for VoiceOver and capturing, and more.
- (macOS) Various UI enhancements: export log/args to file (#3056), title bar changes (#3125), exit confirmation works beyond Cmd+Q/W (#3154) (thanks @ktprograms and @conath)
Changes
- Fixed DNS resolution on IPv6
- Updated zh-Hans localization (thanks @ty-yqs)
- Ensure temporary files are deleted when VM creation is canceled (#3012)
- Support re-generating and customizing MAC address (#2724)
- On PC/Q35 devices, USB mouse and keyboard will be disabled in order to prevent interference with the PS/2 keyboard and mouse that is always added to the machines. Some software such as Windows Installer will not work with the second mice.
- (macOS) Move VM name in main window from title to subtitle, reduces confusion when switching windows (#3099) (thanks @conath)
- (macOS) Show confirmation alert when closing/quitting with the menu or the button (#3103) (thanks @ktprograms)
- (macOS) Error alert (instead of crash) when trying to use unsupported features on < macOS 11.3 (#3118)
- (macOS) Support starting input capture with Ctrl+Opt (#3119)
- (macOS) Reduced UI thread blocking in terminal mode with lots of output spewing (#2404, #2555)
- (macOS) Add alternative hotkey for capture (Cmd+Opt) (#2710)
- (macOS) Unhide cursor when popup alert shows (#3101)
Known Issues
Please check the full list on Github and help report any bug you find that is not listed.
v2.2.4
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (Summary)
- (macOS 11.3+ Only) Bridged networking and shared networking support. You can configure it in the Network settings for your VM.
- (macOS 11+ and iOS 13+) GPU acceleration for OpenGL on Linux. Use
virtio-ramfb-gl
orvirtio-vga-gl
display device and compatible Linux drivers (most modern Linux distros will have it already installed). Windows is not supported because there is currently no virtio-gpu driver for Windows that supports 3D acceleration. Note that newly created VMs will default to a "GPU Supported" display device on supported architectures but existing VMs must manually change the display device in Display settings. GPU acceleration is still an experimental feature, so it may not work in some situations (including many 3D use cases). - EFI Boot. By default new VMs created for pc, q35, and virt* machines will have EFI enabled. In previous versions, EFI is only enabled for virt* machines. Due to compatibility with boot, existing pc and q35 VMs will NOT have EFI enabled and must be manually turned on in Settings -> System -> Advanced Configuration -> UEFI Boot. This may also require you to re-install the bootloader on your VM. As part of this change, EFI variables will also be properly handled (on both ARM and x86 VMs). Note that if you've configured a custom pflash device for your VM, the new UEFI Boot option will take no effect (same as before).
- QEMU v6.1.0 is now used for the backend.
Changes (v2.2.1)
- Fix crash when setting custom VM icon (#2387) (thanks @ktprograms)
- Disable Port Forwarding feature for bridged networking (thanks @conath)
- Fixed memory leak (#2720)
Changes (v2.2.2)
- (iOS) Enable OpenGL acceleration for iOS 11-12
- (iOS 15+) Increased memory limit for supported devices (M1 iPads currently)
- (macOS) Fix layout issues in settings on macOS Monterey (#2644)
- (macOS) Fix capturing of hotkeys (such as Cmd+Tab) (#2677)
- Disable port forwarding options for shared & bridged networking
- Fixed crash when PPC screamer is selected on iOS (currently this is still not supported)
- Refactored non-OpenGL rendering code, fixing some random crashes seen in TestFlight reports.
Changes (v2.2.3)
- (iOS) When a mouse/trackpad is already connected when UTM starts up, it will now be properly detected (#3013)
- (iOS) Handle touch and Apple Pencil input while the mouse is captured (#2669)
- Windows BSOD on boot/setup due to
PAGE_FAULT_IN_NONPAGED_AREA
(#2721)
Changes (v2.2.4)
- (macOS) Settings no longer crash when an error occurs while saving a new VM
- (iOS) GL rendering now works on EFI startup (black screen during boot) (#3076)
Known Issues
- v2.2.4 is built with Xcode 12.5.1 instead of Xcode 13.0 beta due to Apple's strict requirements in submitting apps built on beta SDKs. As a result, the layout issues in settings on macOS Monterey are back in v2.2.4. This will be resolved when Xcode 13 is released.
- Networking can be broken in some instances, we are still investigating the cause. (#3051, #3094)
Please check the full list on Github and help report any bug you find that is not listed.
v2.2.3 (Beta)
Note: this beta build has breaking changes. Please read the notes below for more information.
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (v2.2.0)
- (macOS 11.3+ Only) Bridged networking and shared networking support. You can configure it in the Network settings for your VM.
- (macOS 11+ and iOS 13+) GPU acceleration for OpenGL on Linux. Use
virtio-ramfb
orvirtio-gpu-gl-pci
display device and compatible Linux drivers (most modern Linux distros will have it already installed). Windows is not supported because there is currently no virtio-gpu driver for Windows that supports 3D acceleration.
Changes (v2.2.2)
- (iOS) Enable OpenGL acceleration for iOS 11-12
- (iOS 15+) Increased memory limit for supported devices (M1 iPads currently)
- (macOS) Fix layout issues in settings on macOS Monterey (#2644)
- (macOS) Fix capturing of hotkeys (such as Cmd+Tab) (#2677)
- Disable port forwarding options for shared & bridged networking
- Fixed crash when PPC screamer is selected on iOS (currently this is still not supported)
- Refactored non-OpenGL rendering code, fixing some random crashes seen in TestFlight reports.
Changes (v2.2.3)
- (iOS) When a mouse/trackpad is already connected when UTM starts up, it will now be properly detected (#3013)
- (iOS) Handle touch and Apple Pencil input while the mouse is captured (#2669)
- Windows BSOD on boot/setup due to
PAGE_FAULT_IN_NONPAGED_AREA
(#2721) - EFI Boot is now a configurable option: by default new VMs created for pc, q35, and virt* machines will have EFI enabled. In previous versions, EFI is only enabled for virt* machines. Due to compatibility with boot, existing pc and q35 VMs will NOT have EFI enabled and must be manually turned on in Settings -> System -> Advanced Configuration -> UEFI Boot. This may also require you to re-install the bootloader on your VM. As part of this change, EFI variables will also be properly handled (on both ARM and x86 VMs). Note that if you've configured a custom pflash device for your VM, the new UEFI Boot option will take no effect (same as before).
- Added
virtio-ramfb-gl
device to support GPU Acceleration. On previous beta builds, GL is enabled automatically forvirtio-ramfb
. Now, that display device will not get GPU acceleration. This is to be more consistent with the other-gl
display devices. By default, new VMs created will havevirtio-ramfb-gl
selected forvirt
devices (ARM) andvirtio-vga-gl
selected forq35
andpc
devices (x86). If you wish to use GPU acceleration on an existing VM, you need to change your display device to one of these two recommended devices (or any device with-gl
in the name).
Please check the full list on Github and help report any bug you find that is not listed.
v2.2.2 (Beta)
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (v2.2.0)
- (macOS 11.3+ Only) Bridged networking and shared networking support. You can configure it in the Network settings for your VM.
- (macOS 11+ and iOS 13+) GPU acceleration for OpenGL on Linux. Use
virtio-ramfb
orvirtio-gpu-gl-pci
display device and compatible Linux drivers (most modern Linux distros will have it already installed). Windows is not supported because there is currently no virtio-gpu driver for Windows that supports 3D acceleration.
Changes (v2.2.2)
- (iOS) Enable OpenGL acceleration for iOS 11-12
- (iOS 15+) Increased memory limit for supported devices (M1 iPads currently)
- (macOS) Fix layout issues in settings on macOS Monterey (#2644)
- (macOS) Fix capturing of hotkeys (such as Cmd+Tab) (#2677)
- Disable port forwarding options for shared & bridged networking
- Fixed crash when PPC screamer is selected on iOS (currently this is still not supported)
- Intel Macs will use EFI boot if virtio-* graphics card is selected (fixes black screen on boot)
- Refactored non-OpenGL rendering code, fixing some random crashes seen in TestFlight reports.
Please check the full list on Github and help report any bug you find that is not listed.
v2.2.1 (Beta)
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features (v2.2.0)
- (macOS 11.3+ Only) Bridged networking and shared networking support. You can configure it in the Network settings for your VM.
- (macOS 11+ and iOS 13+) GPU acceleration for OpenGL on Linux. Use
virtio-ramfb
orvirtio-gpu-gl-pci
display device and compatible Linux drivers (most modern Linux distros will have it already installed). Windows is not supported because there is currently no virtio-gpu driver for Windows that supports 3D acceleration.
Changes (v2.2.1)
- GPU acceleration is now using OpenGL instead of Metal due to compatibility issues. Please report anything that works on v2.2.0 (Metal) but fails on v2.2.1 (OpenGL). If there are many cases of these, then we will add an option to switch between the two backends. From experience though, it seems like the OpenGL backend is more stable and more compatible. However, compatibility is not perfect and you may experience crashes when trying to launch an unsupported app in the guest. As before, GPU acceleration only works on Linux with the correct Mesa drivers installed for virtio.
- QEMU is updated to v6.1.0 (release)
- Fix crash when setting custom VM icon (#2387) (thanks @ktprograms)
- Disable Port Forwarding feature for bridged networking (thanks @conath)
- Fixed memory leak (#2720)
Known Issues
- On Intel Macs,
virtio-ramfb
andvirtio-gpu-pl-pci
does not work with BIOS boot. You need to boot from UEFI which currently requires you to manually add a PC Flash device with the UEFI image. In the future, there will be an option to boot from UEFI instead of BIOS. - On macOS 12, some UI elements are laid out incorrectly due to changes in SwiftUI apis.
Please check the full list on Github and help report any bug you find that is not listed.
v2.2.0 (Beta)
Installation
Visit https://getutm.app/install/ for the most up to date installation instructions.
New Features
- (macOS 11.3+ Only) Bridged networking and shared networking support. You can configure it in the Network settings for your VM.
- (macOS 11+ and iOS 13+) GPU acceleration for OpenGL on Linux. Use
virtio-ramfb
orvirtio-gpu-gl-pci
display device and compatible Linux drivers (most modern Linux distros will have it already installed). Windows is not supported because there is currently no virtio-gpu driver for Windows that supports 3D acceleration. - QEMU is updated to v6.1.0-rc1
Known Issues
- On Intel Macs,
virtio-ramfb
andvirtio-gpu-pl-pci
does not work with BIOS boot. You need to boot from UEFI which currently requires you to manually add a PC Flash device with the UEFI image. In the future, there will be an option to boot from UEFI instead of BIOS. - On macOS 12, some UI elements are laid out incorrectly due to changes in SwiftUI apis.
Please check the full list on Github and help report any bug you find that is not listed.