Those moving from one operating system to another must get used to a new way of doing things. If you’re a lifetime Windows user, you need to familiarize yourself with the concept of packages, repositories, and more because you come from a world where you download a file from the Internet or external media, double-click it, and install the program. Conversely, moving from Linux to Windows can be equally disorienting because things are done so differently – though I think there’s hardly anyone who doesn’t know how Windows operates.
Winget is Microsoft’s attempt to introduce a package manager to Windows similar to what Linux has with apt, yum, and dnf. As part of its outreach to appeal to developers and power users, Microsoft is attempting to bring the Linux paradigm of package management to Windows. Using Winget Upgrade, you can use the command line to centrally manage all the packages on your Windows system and upgrade them from a single place.
How to Use Winget Upgrade
Winget is a command line tool that allows you to manage your Windows packages from the terminal instead of having to open the add/remove programs dialogue box. You can access it either from the Windows “cmd” command or from the PowerShell – I prefer the latter.
To get a list of all currently installed and supported packages on Windows, type the following:
winget list
Here’s the output on my Windows system:
You can see that it shows a list of all the programs I’ve downloaded and installed on my system. In the list, the “Name” is often what you’re most familiar with, and what you will see in the add/remove programs dialogue box. The “ID”, on the other hand, is a more specific name that identifies differences in the versions of the same software. For example, you might have several versions of Google Chrome or Firefox installed on your system – perhaps you have the main version, a nightly, or a beta version all at the same time. While the name might be similar for all of these, the ID will be different, allowing you to get a handle on individual application variations.
Getting the Upgrade List
Normally in Windows, you have to manually upgrade the software for each package by opening it and selecting the upgrade option. But with Winget, you can do it all from a single command. To see which programs are available for an upgrade, you can use the following command:
winget upgrade
Here’s the output:
The Winget upgrade command goes through the list of all the programs installed on your system and compares the following two headings:
- Version
- Available
The first is the version name reported by the installed application. The second is the latest version available from the repository. In my example, there are a bunch of applications that need updating, including OpenVPN, Audacity, and the e-book management software Calibre.
Now let’s see how to use Winget to upgrade an application. Let’s say I want to upgrade the “Calibre” software. I can do it using the id as shown below:
winget upgrade --id calibre.calibre
The above command will locate the program in the repository, identify the latest version, and download it as shown here:
Once the download is complete, Winget will initiate the upgrade process and complete it. You can see that this is much easier than opening the Calibre program and clicking “Upgrade. To make matters worse, Calibre doesn’t automatically install the upgraded version. Instead, it sends you to their website from where you need to download the latest MSI and install it.
With Winget, all this happens automatically. You don’t need to know the URL of the webpage hosting the upgrade package, there’s no danger of falling for a phishing attack or accidentally downloading the wrong file. You don’t have to wait through several screens – everything happens just the way it does with Linux.
Benefits of Winget Upgrade
From the brief overview above, you can imagine all the ways that Winget can benefit users. It’s strange because for years I wished for Linux to have an installation process as easy as Windows, where you can just download a package and double-click it. It turns out now that Windows wants to emulate the Linux model, and after having used Linux and maintained its packages and dependencies for so long, I’m beginning to see the benefits. So here’s a list of how the new Winget system is an upgrade for Windows, and how everyone should start using it.
Automatic Upgrades
Most applications on Windows don’t upgrade automatically. Some, like browsers such as Chrome and Firefox update in the background, but most don’t. If you’re lucky, they might inform you of the new version, and many of them will make you visit their website and download the package. With Winget, you can automate this process and upgrade your packages on schedule. You can upgrade one of them, or several of them at the same time.
No more working with outdated programs, or letting the same older version persist because you’re too lazy to start the upgrade process each time. Even as I write this, the OpenVPN program that I use to access NameHero is an older version and I haven’t bothered to upgrade it because I need to get down to work.
With Winget, you can create a batch file for upgrading the programs on your computer and run it in the background so that you don’t have to do it manually. It’s a perfect solution to the often haphazard software distribution process that has plagued Windows for so long.
Security of Software Updates
While the publishers of the software themselves might not try and actively download a virus onto your system, there could always be a danger that the source from which you’re downloading the update is mistyped, or that you download the wrong update. Not all software applications have an internal update process and may require you to download a “.msi” file to update.
With Winget, you can be sure that the packages it downloads are secure and the same ones as the publisher intended. Thanks to checksum verification, with Winget, you can rest easy that the file you receive isn’t corrupted. Contributors who submit package manifests to the Winget repository specify a trusted URL, and the new packages are downloaded only from these sources.
Installing New Apps from the Repository
In addition to upgrading apps, you can also search for new ones from the repository. This way, you can be sure that you’re downloading the right software from a trusted source. Let’s say, for example, that I want to download the Brave browser, I can use the following command:
winget search brave
This gives me the following:
You can see that it gives me a list of places from which I can download Brave – I can even choose between the Beta, the Dev, and the Nightly versions. Once I’ve figured out which one I want, I can install the one I want using the command:
winget install Brave.Brave
And that’s it! You can see how easy and convenient it is.
Conclusion
With Winget, you can bring the power of Linux’s installation and software management system to Windows. It lets you upgrade all your software from a central location from trusted sources, on a schedule. Every Windows user should get familiar with this system, given that it’s so much better than what Windows currently has.
I’m a NameHero team member, and an expert on WordPress and web hosting. I’ve been in this industry since 2008. I’ve also developed apps on Android and have written extensive tutorials on managing Linux servers. You can contact me on my website WP-Tweaks.com!
Leave a Reply