3 ms·
I write software for Mac and Windows (in C++/Qt). I put each new release out as a separate application for the user to install. Is there some equivalent to Spar
by hermitcrab 3y ago
I write software for Mac and Windows (in C++/Qt). I put each new release out as a separate application for the user to install. Is there some equivalent to Sparkle that runs on both Mac AND Windows, so I don't have to integrate a separate system on each OS?
Also I worry about update frameworks as way for bad guys to do bad things via my software. Should I be worried?
- hermitcrab 3y agoAh, I see https://winsparkle.org/ https://winsparkle.org/ is a thing.
- gwbas1c 3y agoWindows installation system is so fundamentally different that it's hard to have a 1-size-fits-all update mechanism. When I shipped a cross-platform application, we used Sparkle on Mac, and a simple utility that downloaded and ran an MSI file for Windows. In general, I wouldn't worry too much about Sparkle being a vulnerability. It requires that your download servers are hacked: https://9to5mac.com/2017/05/08/handbrake-trojan-mac-malware-infected/ https://9to5mac.com/2017/05/08/handbrake-trojan-mac-malware-...
- hermitcrab 3y agoCurrently I used Inno Setup to create a .exe installer on Windows and DropDMG to create a .dmg image on Mac. Presumably Sparkle and Winsparkle both use a similar update mechanism and that doesn't involve full Windows or Mac installers (otherwise, what would be the point?).
- gwbas1c 3y agoSparkle works with a .dmg file, so you'd probably continue using DropDMG. I can't speak much for Winsparkle; I remember looking at it and immediately concluding that it wouldn't work for us. (FWIW: I ended up slipping in a few hacks so we could pop open browser windows on specific versions and commits, and even remotely kill them if needed.)
- Deadpikle 3y agoThere is one that is .NET and cross platform (incl. Linux) here: https://github.com/NetSparkleUpdater/NetSparkle https://github.com/NetSparkleUpdater/NetSparkle (disclaimer: I am the primary maintainer of this repository). For C++, WinSparkle works too: https://github.com/vslavik/winsparkle/ https://github.com/vslavik/winsparkle/
- hermitcrab 3y agoPresumably that means having to install .Net? I guess that makes sense if your software requires .Net, but mine doesn't.