It’s « just » a tool which will fetch installation manifests on a centralized Microsoft GitHub repository and execute it. Exactly like brew or chocolatey. It’s fine for a third party « package manager » but it feels pretty weak for an official system tool.
Also, if I’m not wrong, it’s only available as a CLI tool which makes it pretty useless for 95 percent of Windows users and for developers to distribute software with it.
The thing is useful for sure but it’s far from a Linux package manager.
Back in my day this would be seen as an exercise left for the user, and thus a new junior dev was born building a front end.
UniGetUI looks really cool.
https://github.com/marticliment/UniGetUI - 16.2k stars
If you have the ability to financially support them or contribute code somehow, do it.
Devs aren’t usually the best UX people and end up making great code but with menus and radio buttons everywhere, and UX people aren’t necessarily devs. And, at the time, I noticed there was a disconnect. So I figured I’d encourage people more to meet in the middle.
But, again, that was only a few months before the Covid lockdowns. I think the advice still rings true, but with all the tech layoffs happening I think our field is becoming really lost overall lately. We seem to have based way too much of our self identities on our day jobs, and obviously lost those identities when people got laid off or fired.
(And I should really update that bio for 2025 now that I’m back more regularly.)
The winget repo has a ton of useful installation manifests, sure, but isn't "just" a tool to fetch manifests from that one repo. (Also, it doesn't fetch the data directly from GitHub, even though that is the source of truth, it has a light REST service in between which does a lot of caching and DDoS management and what have you.) Winget also by default installs Windows Store apps, too. It's also configurable so you can add your own installation manifest repos if you wish (such as on-premise private feeds).
I find that behavior incredibly annoying. I mainly use Chocolatey, so every once in a while when a package is heavily outdated or missing from the repo I end up using Winget instead for convenience's sake. That means Winget keeps trying to update or manage Chocolatey packages, and as far as I know, there's no easy way to stop that.
Hence WinGet, a Microsoft owned and operated alternative that those firms may feel less jittery about.
WinGet is more or less just downloading the installers and running them, and doesn't properly track the installed applications and isn't always able to update them.
How so? I’ve been using it for years and haven’t had a problem yet updating all applications at once.
Things can get tricky with applications that are installed with WinGet but come with mechanisms to update themselves. If this self-update skips adjusting the right knobs and values in the registry, WinGet will assume that the application is still on the initial version.
For example, this is the case with Obsidian.
That, of course, imposes some limits WRT package visibility and other policies you might want to enforce - you can't easily limit a certain set of users to a subset of your repo.