Squirrel
wixsharp
Our great sponsors
Squirrel | wixsharp | |
---|---|---|
37 | 12 | |
7,155 | 1,024 | |
0.8% | - | |
6.0 | 5.5 | |
3 months ago | 15 days ago | |
C++ | C# | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Squirrel
-
ClickOnce
I never had much luck with ClickOnce, so I was using Squirrel.Windows. I've recently switched to the Clowd.Squirrel fork, since I needed support for AzureSignTool in the build process.
-
Any sufficiently advanced uninstaller is indistinguishable from malware
As soon as Office 2007 didn't use MSI the format was doomed.
I assume the Here in NIH refers to an individual team, not MS as a whole.
Teams is entirely NIH https://github.com/Squirrel/Squirrel.Windows for updates to the Electron app.
I would use winget, but MS made it weirdly hard to run as a script on multiple computers, it installs per user, because... who knows.
So still using chocolatey
-
Thanks, log
Back in the day, wasn't Discord installed using Squirrel?
- C# Windows desktop app - Best way to create an installer and auto-updater?
-
In the year 2023, what is the best way to deploy/distribute a WPF Application?
Originally, we used to use Squirrel.Windows for our internal applications but we had a few issues with it before we finally dropped it.
-
WinForms Application Updater
The most viable option with the path of least resistance would be Squirrel.Windows as it is both and installer and updater but has some caveats (SemVer pattern must be followed).
-
[ClickOnce] How to get rid of this message?
Maybe someone has a better ide, but this is one of many reasons why I'm trying to get all our old ClickOnce installers migrated to something else (I've heard good things about Squirrel.
-
Compose Multiplatform 1.2 Is Out: New Mouse and Keyboard APIs, ProGuard Support, Online Updates
Electron does have auto-update built in (Squirrel), but it comes with severe non-price related caveats. Squirrel is only intermittently maintained and goes through long periods in which the different versions are abandoned (see for Windows, macOS). People have requested a switch to Sparkle on macOS, which is what Conveyor uses, but with no response. There's also the issue that their update solutions require interactive servers but the only free one is restricted to open source projects, and isn't itself open source. The Electron website points you towards a variety of projects if you want to run your own server but all of them are (again) abandoned for years.
-
What is currently a good way to provide an installer for WPF application?
We replaced clickonce with https://github.com/Squirrel/Squirrel.Windows and are generally happy with the choice
-
How to disable discord from trying to update after reboot?
Discord in the Task Manager can sometimes show up as "Update", made by GitHub, because Discord uses a program, that GitHub / their devs were/are involved with making, to update the app, and some kind of bug happens that means it doesn't display as 'Discord'.
wixsharp
-
Twenty years maintaining the WiX Toolset
I can recommend Wixsharp (https://github.com/oleg-shilo/wixsharp), you no longer have to learn the insane wix xml syntax to create an installer.
-
In the year 2023, what is the best way to deploy/distribute a WPF Application?
Also try wix# (https://github.com/oleg-shilo/wixsharp) - it makes things much easier
-
Best option for getting a binary to cross-platform customers?
Windows: The Microsoft-recommended way is .msi files but, if you're not willing to pay for something like InstallShield or a professional "How to use WiX XML course", making them is going to be painful even with something like WiXSharp, so my advice is to offer a Zip file and an Inno Setup installer. (Which things like Chocolatey can build on)
-
Looking for easy way for distribution of crates
Wix# is better, but still not as easy, and it depends on .NET, which makes it a hassle to get set up in Wine compared to how, being written in Delphi and using itself as an installer, Inno Setup is practically Rust-like in how easy it is to set up in Wine.
-
How do I intergret cargo in Rust code
If you really want to bundle a compiler, my advice would be to just use an installer like Inno Setup or NSIS or the WiX Toolset via WixSharp and have it either download or bundle the installer for the compiler.
-
Forced static linking?
Speaking of MSI, I'd suggest using Wix# instead of WiX directly.
-
PEP 594 “Removing dead batteries from the standard library” accepted
The functionality in the msilib module is somewhat low-level anyway (it basically just opens the database for you and leaves the arcane incantations required for doing anything as an exercise for the reader) so it probably wouldn't be hugely difficult to replace it with ctypes calling msi.dll directly.
If I were to replace my msilib-based installer, I would migrate to Wix# [1], a fantastic high-level wrapper for WiX that lets you express your installer in a few lines of C# (and then generates the thousands of lines of XML that WiX needs, but you don't need to touch it). I wouldn't have used msilib if I had known about Wix# at the time.
[1] https://github.com/oleg-shilo/wixsharp
- What's the best way to deploy a desktop application?
- WinGet is terrible. I want AppGet back
-
Creating an installer for your app is super easy! Quick video showing how to create a setup file
Adding that folks should look into using WixSharp especially if there is a need to create a more customizable UI for the installer. The instructions for building the installer is all written in C# including any custom actions required by your installer project.
What are some alternatives?
AutoUpdater.NET - AutoUpdater.NET is a class library that allows .NET developers to easily add auto update functionality to their classic desktop application projects.
wix3 - WiX Toolset v3.x
Wix Toolset
oneget - PackageManagement (aka OneGet) is a package manager for Windows
Chocolatey - Chocolatey - the package manager for Windows
api-ms-win-core-path-HACK - Implementation of api-ms-win-core-path-l1-1-0.dll for Windows 7 based on Wine code
Clowd.Squirrel - Quick and easy installer and automatic updates for cross-platform dotnet applications
winget-cli - WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface).
NetSparkle - NetSparkle is a C# cross-platform software update framework for .NET developers compatible with .NET 4.6.2/.NET 6+, WinForms, WPF, and Avalonia; uses Ed25519 or DSA signatures! View basic usage here in the README or visit our website for code docs.
Versions - 📦 A Scoop bucket for alternative versions of apps.
Onova - Unintrusive auto-update framework
Main - 📦 The default bucket for Scoop.