github utmapp/UTM v4.0.2
v4.0.2 (Beta)

latest releases: v4.1.0, v4.0.9, v4.0.8...
pre-release3 months ago

Remember to back up your VMs before running a beta release of UTM!

Installation

iOS: Visit https://getutm.app/install/ for the most up to date installation instructions.
macOS: Download "UTM.dmg" below and copy the contents to your /Applications directory.

Highlights

  • Multiple display and headless display is now supported for QEMU machines. You can configure 0 or more displays as well as 0 or more builtin terminal consoles. On macOS, a new window will be created for each display and builtin terminal. On iOS, you can create multiple windows (iPad) as well as plug in an external display or AirPlay (iPad or iPhone) and assign outputs to each window.
  • Ventura updates to Virtualization. macOS Ventura introduces new features to Virtualization.framework that is now integrated into UTM. You can now create GUI Linux VMs with EFI boot. Clipboard sharing and directory sharing now works with macOS Ventura guests. Rosetta x86_64 emulation is supported for Linux VMs on Apple Silicon.
  • Virtiofs sharing for QEMU. This can be enabled in the VM settings under Sharing. You can mount the tag "share" in the VM. Note that macOS UID are numbered differently than Linux so you may need to set up your guest to have permission to access the shared directory.

Notes

  • iOS 14 and macOS 11.3 are the new minimum supported systems. Please use UTM v3.x for support down to iOS 11 and macOS 11
  • The configuration backend has been massively rewritten. Please backup all VMs prior to updating as you will not be able to re-open VMs saved by UTM v4 on older versions of UTM if you decide to downgrade.

Changes (v4.0.2)

  • Removed "view.plist" for host-specific configuration settings (i.e. bookmarks to removable drives and window options) and replaced it with a new "registry" that is stored outside of the .utm bundle. Old "view.plist" settings and bookmarks will be migrated to the registry on first launch and the file will be deleted from the .utm bundle. For Apple VMs, the bookmarks will no longer be stored in config.plist and the settings will be migrated to the registry as well.
  • Virtiofs no longer requires SPICE to be enabled (thanks @tie)
  • Fixed an issue with PPC VMs not showing 256 colours correctly (#4277)
  • Fixed incorrect parsing of CPU flags (#4282)
  • Do not save screenshots when running in disposable mode
  • Translation: Added Spanish (Latin America) (thanks @JezerM)
  • Translation: Added Finnish (thanks @marcusziade)
  • Translation: Updated Japanese (thanks @MMP0)
  • Translation: Updated Chinese (Simplified) (thanks @ty-yqs)
  • Translation: Updated French (thanks @FRtranslator)
  • (iOS) Per-display window settings (zoom, position, keyboard visibility, etc) will be stored in the new registry
  • (iOS) Prefer JitStreamer over AltJit when both are available (thanks @ktprograms)
  • (macOS) Fixed saving removable drives and shared directories for Apple VMs
  • (macOS) Fixed missing audio entitlements (#4342)
  • (macOS) Fixed QEMULauncher process not terminating when a VM is force quit
  • (macOS) Fixed issue selecting text in SwiftTerm (#4297)

Changes (v4.0.1)

  • Fixed an issue where an UEFI BIOS error was reported when the target does not use UEFI (#4265)
  • Added Elementary OS icon (thanks @Unbinilium)
  • Updated ja localization (thanks @MMP0)
  • Updated fr localization (thanks @FRtranslator)
  • Changed the icon for "Serial" so it appears on iOS 14 and macOS 11 as well
  • Fixed custom icon not showing up for "legacy" configurations
  • Fixed an error trying to migrate "legacy" configuration when "Images" does not exist (#4266)
  • Fixed USB redirection (#4263)
  • (iOS) Fixed a toolbar issue where USB button overflowed on screen.
  • (iOS) Fixed resume button not appearing on < iOS 16
  • (iOS) Attempt to close the download progress pop-up after download completes (#4261)
  • (iOS) "Open" popover refuses to show up again after swiping down (#4260)
  • (iOS) Hide "Add" text on iOS 14 settings
  • (iOS) Fixed crash on iOS 14 settings when attempting to use the picker (#4270)
  • (iOS) Fixed an issue on iOS 14 where picker selection was being reset
  • (iOS) Fixed an issue where the USB icon is stuck on busy after a device disconnects
  • (macOS) Fixed a crash trying to change shared directory for Apple VM (#4271)
  • (macOS) Wizard created invalid target configuration for virtualized targets (#4274)

Changes (v4.0.0)

  • USB redirection support in terminal mode
  • Configuration file format changed, newly saved VMs will not be compatible with older versions of UTM
  • Newly imported disk images will be converted to QCOW2 automatically
  • Settings: new layout with support for multiple {Display, Serial, Network, Sound} devices (#3585)
  • Support multiple displays (#220)
  • Added Japanese localization (thanks @MMP0)
  • Support adding PTTY (macOS only), TCP client, and TCP server serial connections for QEMU machines (address should show up in the home screen) (#3546)
  • Support headless display (remove all displays and built-in serial ports in the settings) (#2280)
  • Support redirecting QEMU monitor and GDB stub to a serial port
  • Support zstd compression for QCOW2 images and use zstd as default for image compression (#4211)
  • Update ANGLE (GL backend) to latest git commit
  • Added French localization (thanks @FRtranslator)
  • Fixed microphone recording silence (#219)
  • Fixed a crash when attempting to delete a QEMU additional argument
  • Option in VM settings to use virtfs/9pfs for file sharing (#2184)
  • Option in VM settings to change VGA RAM size (#4034)
  • Option in VM settings to enable virtio-balloon driver (#4136)
  • Invert mouse scrolling is now a global setting rather than a per-vm configuration option
  • (iOS) Replaced hterm.js with SwiftTerm for terminal mode (#3473)
  • (iOS) Attach to JitStreamer (set IP address in Settings app and UTM will try to connect automatically on launch) (thanks @ktprograms)
  • (iOS) Automatically resize the display to fit the screen when the resolution changes if the resize toolbar option is used
  • (iOS) Reimplemented the USB and Drives menu with a better UI
  • (iOS) On iPadOS 16, show the menu bar when holding Cmd on the keyboard. On previous versions, an on-screen help will show supported commands
  • (iOS) Improved audio handling including: output when on silence, mixing with other apps, working when both recording and outputting (including with another app) (#3996)
  • (iOS) Added a global setting to always prefer the built-in microphone to a bluetooth microphone
  • (macOS) Fixed running from shortcut in Apple VMs (no longer need to re-import after each launch)
  • (macOS) Improved IPSW selection interface and support drag and drop (thanks @pointum)
  • (macOS) Fixed running unsigned builds
  • (macOS) Removed some deprecated global settings
  • (macOS) Fixed an error when trying to download an IPSW and the Caches directory does not exist (thanks @LostInCompilation)
  • (macOS) Fixed an issue where a VM could be started twice if the home screen's toolbar is used leading to data corruption (#4166)
  • (macOS 13+) Boot into recoveryOS (to disable SIP, etc) by right clicking on the VM and selecting "Run in recovery..." (#3526)
  • (macOS 13+) Option in VM settings to enable Rosetta for x86_64 emulation (#4100)
  • (macOS 13+) Option in VM settings to enable clipboard sharing (SPICE support needed on the guest) (#4121)
  • (macOS 13+) GUI display for Linux VMs (#4120)
  • (macOS 13+) Add removable drives, will show up as USB mass storage

Issues

Please check the full list on Github and help report any bug you find that is not listed.

Known Issues

  • Automation URL commands currently do not work completely
  • (macOS) GUI Linux boot may not be compatible with all distros. Ubuntu Server 22.04 does not install.
  • (macOS) You cannot reopen a window for additional displays after you close them

Don't miss a new UTM release

NewReleases is sending notifications on new releases.