This week, Microsoft has released their first native package manager for Windows 10. If you ever worked with a package manager for Linux (e.g. apt, pacman) you know the benefits. Or, if you are a developer, you surely heard about nuget, maven, npm or similar. Easy install, uninstall or update of one or up to all installed applications on your system.
Now you will say, that’s a old hat, it already exists Chocolatey. You are right - and at the moment it’s even more advanced.
Anyways, WinGet is official supported and developed by guidance of Microsoft and will be integrated in future Windows releases. So, for me that’s the way to go.
Installation
Prerequisites
The client requires Windows 10 1809 (build 17763) or later at this time.
Automatic by MS-Store
The client is distributed within the App Installer package. While this package is pre-installed on Windows, the client will not be made generally available during the Preview period.
Manual install
Until the Preview period is over, the straightforward way ist to install it - yes - manually. You get the same package here. Download and execute the Microsoft.DesptopAppInstaller_xxx.appxbundle. See the official Readme.md for more information.
Recommendations
After installation open the windows command line (cmd.exe
) or a powershell.
If you start it as an administrator, you don’t have to accept the elevation dialogs later on.
Before you install your applications, I recommend to modify some settings first.
Permanent Settings
Customize some basic settings before you first install or upgrade applications with WinGet.
Edit the settings file by with executing
winget settings
In the opened settings.json file, setup your preferred language priority list (e.g. to German) and your installation scope to machine (instead of user local)
{
"installBehavior": {
"preferences": {
"locale": ["de-DE", "en-US"],
"scope": "machine"
}
}
}
A complete list of settings can be found here
Usage
As an example, let us search for PeaZip, a nice open source compress and decompress application for the most compress algorithms out there.
Just run the following command.
winget search PeaZip
If you are unsure if the result is the application you searched for, you can run the winget show
command with one of the found application IDs.
winget show Giorgiotani.Peazip
You should get more information about the package to be installed.
If you got the right package, install the found Giorgiotani.Peazip package.
winget install PeaZip -h
The parameter -h
is used to hide the installer assistent and just install the application silently to the program files folder. If you used the scope local
in the settings preferences above, then the installed application is placed in your user accounts AppData
folder.
To upgrade an installed application to the latest version, run the upgrade
option. As always, if unsure about the application name, use its ID instead.
winget upgrade PeaZip -h
And finally one of my favorites, like the Linux command apt-get upgrade
you can just run
winget upgrade --all -h
To update all installed applications which can be found in the repository to their latest version. Because we also set the -h
parameter, it’s done silently again.
Final words
Here it is, a native package manager for Windows applications. Yes, it’s version 1.0 and you can’t expect that you found your lovely package or get a fancy UI. But, for found applications, the repeated sessions to search, download and update are gone. Just run an upgrade --all
from time to time (or automate it) and your are done.
This tool, saves you a lot of time. Have fun.
Please leave a comment if something is wrong or missing. Or if you have any questions.
Have fun!
If you like, buy me a coffee
freakyDude