Sparkle
troz.net
troz.net
A better solution in most cases would be to integrate some kind of "update available" affordance into the window chrome, as many interfaces now do. And (with user consent) most apps should simply update themselves when they are not in active use. That is (again, with user consent), desktop apps should simply behave like SaaS apps.
At least for me, you've certain done it better than almost any other updater.
God, I still miss Quinn. For years after its official demise I still had a copy, which I kept playing, until the 32bitocalypse made that impossible.
Actually we use a fork of Sparkle that adds support for forced updates on start, which is useful for apps that need to stay in sync with a rapidly changing server protocol. It gives you a more web-like approach.
A couple years ago I built https://replay.software/bump to automate into the cloud the entire Sparkle process, and it's made it much more idiot-proof to create the changelog, do signing and release.