github utmapp/UTM v2.4.1

latest releases: v4.1.5, v4.1.4, v4.1.3...
15 months ago


Visit for the most up to date installation instructions.


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 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 to Default 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 to Default.
  • 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 to e1000 for Q35 machines and virtio-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 (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.


  • (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


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

Don't miss a new UTM release

NewReleases is sending notifications on new releases.