UTM icon indicating copy to clipboard operation
UTM copied to clipboard

macOS: Add "Check for updates" function

Open LostInCompilation opened this issue 2 years ago • 10 comments

Feature request It would be nice if a "Check for updates" option could be added (for example in the "About" dialog next to the version string). Currently I have no idea, if updates are available or even how to install them. Just downloading a new .dmg image from the official website and replacing the "UTM.App" on my machine should work, but I don't know if this would remove my VMs or reset any settings. What is the preferred way to update UTM for macOS?

Configuration

  • UTM Version: 3.2.4 (58)
  • OS Version: macOS 12.4
  • Device: M1 MacBook Pro 16"

LostInCompilation avatar Jun 18 '22 13:06 LostInCompilation

Replacing UTM.app from the DMG won't remove your VMs as they aren't stored within the app bundle.

ktprograms avatar Jun 18 '22 13:06 ktprograms

I would like this feature too, rather than checking the GitHub page every now and then for a new update.

3DCoded avatar Jun 18 '22 19:06 3DCoded

I think this functionality could be implemented using Sparkle

3DCoded avatar Jun 18 '22 19:06 3DCoded

This is implemented in via Mac App Store release. I agree that Sparkle is a good choice for those who do not wish to use the MAS.

What's the difference in the Mac App Store version?

UTM is and always will be completely free and open source. The Mac App Store version is identical to the free version and there are no features left out of the free version. The only advantage of the Mac App Store version is that you can get automatic updates. Purchasing the App Store version directly funds the development of UTM and shows your support .

p-linnane avatar Jun 19 '22 18:06 p-linnane

You can also use https://formulae.brew.sh/cask/utm

osy avatar Jun 19 '22 18:06 osy

Btw Sparkle doesn’t play well with MAS and since we make one build for everything, it won’t work without some significant refactoring.

osy avatar Jun 19 '22 18:06 osy

The Homebrew community is also very good at quickly updating casks. So there shouldn't be a huge delay between a new release and it showing up under brew.

p-linnane avatar Jun 19 '22 18:06 p-linnane

Hey @osy, do you mean the Sandbox or as an unnecessary dependency?

I haven't tested myself, but Sparkle 2 is Sandbox-friendly.

As for unnecessary dependency it's possible to use CocoaPods for to include dependency per configuration. I.e. 1 target has 2 configs (for MAS and for self-host).

2 configs with 1 target allow to keep things nice and tidy as much as possible – I think this is the neatest way of doing it.

iby avatar Jun 19 '22 20:06 iby

@osy I think it would be enough to add a simple update check using something like curl and maybe download the .dmg image directly inside UTM. Just any indicator that a new version is available would be a good thing.

LostInCompilation avatar Jun 20 '22 02:06 LostInCompilation

Duplicate of #3378

conath avatar Jun 20 '22 21:06 conath