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

latest releases: v4.6.0, v4.5.4, v4.5.3...
pre-release15 months ago

Highlights

  • QEMU backend updated to v8.0.2
  • Rewrite of QEMU support internals. Much of the code to support QEMU has been refactored into a new project, QEMUKit, which will make it easier to support QEMU changes as well as support for new platforms. This means that v4.3.1 may contain a lot of UI bugs as testing is needed to make sure the new internals match up with the existing UI. Please help us by reporting any such issue you stumble upon.
  • TPM 2.0 and Secure Boot This is required for Windows 11 updates to 22H2. To enable TPM on an existing virtual machine (only x86_64, i386, and ARM64 architectures are supported), open the VM settings, go to the QEMU page and select "UEFI Boot", "TPM 2.0 Device", and "Reset UEFI Variables." Any new VM created through the wizard will have TPM 2.0 and Secure Boot enabled by default if Windows 10+ support is checked.
  • Download Windows installer with a new utility. We know that creating a Windows installer can be a hassle which is why we are releasing a new free tool called CrystalFetch which can be found on GitHub as well as free on the Mac App Store. This companion to UTM will allow you to generate a Windows 11 ISO with a few clicks (no Terminal, Homebrew, or scripts required). Note that just like before, you still need a valid license from Microsoft to use Windows.

Notes

On i386 and x86_64 machines, HPET is now disabled by default. This improves performance (slightly) on some guests and also addresses boot issues with OpenIndiana. This change means that suspended VM state from previous versions are not compatible, so please shut down those VMs before updating. If you require HPET to be enabled for any reason, go into the VM's settings and under QEMU → QEMU Machine Properties, add the text hpet=on.

Changes (v4.3.3)

  • Fixed a crash when selecting a VM (#5481)
  • Fixed a crash when starting a VM and an error occurred when creating display/serial devices (#5472)
  • Fixed boot issues when trying to load OpenIndiana by disabling HPET timers by default (#2394)
  • Fixed an issue where selected removable drive image and shared directory are not syncing correctly
  • QEMUKit: Fixed race condition when multiple RPC commands are sent (#5477)
  • EDK2: Fixed an issue preventing some versions of Windows 11 from booting (#5495)
  • utmctl: Add a more verbose error message when utmctl fails because it is launched from an SSH session or before logging in (#5499)
  • Wizard: Fixed selected boot ISO not saving (#5471)
  • Wizard: Link to CrystalFetch when Windows is selected
  • (macOS) AVF: Automatically un-capture system keys when VM terminates

Changes (v4.3.2)

  • The last update introduced two units per bus for IDE devices. However, some machines do not support this configuration, so now two units per bus will only be enabled for supported machines. Other machines will retain pre v4.3.1 behaviour.
  • Fixed some state tracking issues leading to various errors when a VM is quickly stopped and started again.
  • Changed the style of the icons on various VM operations in the home screen and context menu (iOS) (thanks @jnsdrtlf) (#5441, #4759)
  • Fixed an issue where serial device hardware was not saved
  • Fixed the error that shows up when trying to rename a VM (#5444)
  • Fixed a crash on startup due to mishandling of VM parsing (#5424)
  • Fixed debug logging not working due to backend changes in v4.3.1
  • Fixed a crash when QEMU tries to output non-printable characters
  • Add support for SWTPM for TPM 2.0 emulation
  • Add Secure Boot firmware for ARM64. Only the Secure Boot firmwares have TPM 2.0 support built in, so when TPM 2.0 and UEFI are enabled, UTM will automatically select the Secure Boot firmware. By default the UTM platform keys and Microsoft key exchange keys are enrolled. You can manually set up your own keys from the UEFI menu.
  • Updated the EDK2 UEFI firmware to the 202305 release
  • Debug logs will no longer be deleted when a VM configuration is saved and debug log is not disabled
  • Fixed an issue where the mouse cursor stopped working due to backend changes in v4.3.1
  • If the Documents directory does not exist in UTM's container, it will now be created automatically. This addresses an error that shows up if the Documents directory does not get created properly by macOS. (#5419)
  • Localization: Updated Japanese (thanks @MMP0)
  • (iOS) Fixed an issue where TSO setting was not saved
  • (macOS) Fixed an issue where every time a VM is started with a terminal window, the width of the window gets a bit larger
  • (macOS) Fixed an issue where starting a stopped VM does not change the display scale
  • (macOS) AVM: System keys will be captured automatically when entering full screen and released when exiting full screen (#3668)
  • (macOS) AVM: Fixed the request stop method in both the GUI and scripting interfaces (#5425)

Changes (v4.3.1)

  • Updated QEMU backend to v8.0.2
  • Refactored QEMU support to a new project: QEMUKit
  • Machines with IDE interface (i44FX/PIIX) will now support two units per bus. Previously, we mapped IDE devices to one unit per bus. This means on some machines, the limit was two devices maximum. Now, we map two units per IDE bus which should increase the limit to four devices. Existing VMs will not get this change automatically in order to maintain compatibility. You can choose to opt-in to this new mapping by pressing the “Update Interface” button on each IDE drive in the VM settings. (#5358)
  • Localization: Updated Japanese (thanks @MMP0 and @studio1a9)
  • (macOS) Fixed crash when AVM window is closed (#5347)
  • (macOS) New option “Automatic” for bridged network connection which will use the bridge the first active connection on the host. Both AVM and QEMU backends are supported. (#5410)
  • (macOS) Fixed trackpad setting not saving (#5369)

Changes (v4.3.0)

  • Updated QEMU backend to v8.0.0
  • Changed audio backend from CoreAudio back to SPICE (as it was before v4.2.x). Clarify that CoreAudio backend does not support microphone (#5253)
  • Add support for mouse buttons 4 and 5 (#5295)
  • Wizard: Properly display an error message when there is a failure writing to disk (#5271)
  • Fixed an issue where ISAPC emulation target cannot be started (#5280)
  • Fixed CoreAudio being instantiated even when audio is disabled
  • Fixed an issue where legacy VMs with AC97 sound card has an empty name in settings
  • Fixed an QEMU issue where the ucomiss instruction causes a crash in some applications (#5294)
  • Fixed an issue preventing VMs with commas in their name from starting (note only new VMs will be fixed) (#5332)
  • (macOS) AVM: Support canceling macOS installation
  • (macOS) utmctl: Added delete command (#5290)
  • (macOS) Fixed an issue creating a shortcut from drag & drop as well as double clicking from Finder (#5310, #5311)
  • (macOS) Added DHCP start/end settings for vmnet (#5301)
  • (macOS) Added automatically syncing of system clock when macOS wakes up from sleep (when QEMU guest agent is installed) (#5252)

Issues

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

Installation

File Description Installation JIT Hypervisor USB
UTM.deb Jailbroken iOS version Open in Cydia, dpkg, or Sileo Yes Yes(1) Yes
UTM.dmg macOS version Mounting and copying UTM.app to /Applications Yes Yes Yes
UTM.ipa Non-jailbroken iOS version (sideloading) AltStore, etc (see guide) Yes(2) No No
UTM.HV.ipa Non-jailbroken iOS version (TrollStore) TrollStore Yes Yes(1) Yes
UTM.SE.ipa Non-jailbroken iOS version (sideloading) AltStore, enterprise signing, etc No No No
  1. Hypervisor on iOS requires an M1 iPad.
  2. Enabling JIT may require a separate JIT enabler such as Jitterbug or Jitstreamer.

Don't miss a new UTM release

NewReleases is sending notifications on new releases.