Windows Package Manager

Official open-source package manager for Windows 10/11 From Wikipedia, the free encyclopedia

The Windows Package Manager (also known as winget) is a free and open-source package manager designed by Microsoft for Windows 10, Windows 11, and Windows Server 2025[4] with Desktop Experience. It consists of a command-line utility and a set of services for installing applications.[5][6] Independent software vendors can use it as a distribution channel for their software packages.

Initial release13 May 2020; 5 years ago (13 May 2020)
Stable release
1.11.510[1] Edit this on Wikidata / 26 September 2025; 5 months ago (26 September 2025)
Preview release
1.12.250-preview[2] Edit this on Wikidata / 7 October 2025; 5 months ago (7 October 2025)
Quick facts Developer, Initial release ...
Windows Package Manager
DeveloperMicrosoft
Initial release13 May 2020; 5 years ago (13 May 2020)
Stable release
1.11.510[1] Edit this on Wikidata / 26 September 2025; 5 months ago (26 September 2025)
Preview release
1.12.250-preview[2] Edit this on Wikidata / 7 October 2025; 5 months ago (7 October 2025)
Written inC++, C#, PowerShell
Operating systemWindows 10, Windows Server 2025, or later
Platformx86, x86-64, ARM32, ARM64
Size~23 MB
Available inChinese (Simplified), Chinese (Traditional), English, French, German, Italian, Japanese, Korean, Portuguese (Brazil), Russian
Typepackage manager, installation Edit this on Wikidata
LicenseMIT License[3] Edit this on Wikidata
Websitelearn.microsoft.com/en-us/windows/package-manager/
Repositorygithub.com/microsoft/winget-cli
Close

History

Windows Package Manager was first announced at the Microsoft Build developer conference in May 2020.[7][6]

Before deciding to develop Windows Package Manager, the team behind it explored Chocolatey, Scoop, Ninite, AppGet, Npackd and the PowerShell-based OneGet.[6] After the announcement of winget, the developer of AppGet, Keivan Beigi, claimed that Microsoft interviewed him in December 2019 under the pretense of employment and acquiring AppGet.[8] After talking with Beigi, Microsoft allegedly ceased communication with him until confirming one day before the launch of winget that they would not be hiring him. Beigi was dismayed at Microsoft's lack of attribution of AppGet. The release of winget led Beigi to announce that AppGet would be discontinued in August 2020.[8][9][10] Microsoft responded with a blog post crediting a number of winget's features to AppGet.[11][12][13]

Microsoft released version 1.0 of Windows Package Manager on May 27, 2021. The Microsoft Community Repository included over 1,400 packages at that date.[14] By May 2025 it had reached 9,000 packages.

The ARM32 client was discontinued after version 1.10.390 in April 2025.[15]

Overview

The winget tool supports installers based on EXE, MSIX, and MSI.[16] The public Windows Package Manager Community repository hosts manifest files for supported applications in YAML format.[17] In September 2020, Microsoft added the ability to install applications from the Microsoft Store and a command auto-completion feature.[18]

To reduce the likelihood of non-Microsoft-approved software, including malicious software, making its way into the repository and onto the target machine, Windows Package Manager uses Microsoft SmartScreen, static analysis, SHA256 hash validation and other processes.[19][20]

Various limitations apply to which packages that are added to the winget manifest repository. Among them as of 1.10 is that the software must support silent installations (unless it is a fully portable software), cannot be a .tar.gz, .7z, or .rar compressed folder, cannot wholly require hardwares (e.g. NVIDIA drivers), cannot be a self-extracting archive, cannot solely support ARM32,[21] and the software host cannot return HTTP 403 or time out when downloading through winget.

The winget client source code and the community manifest repository are licensed under MIT License and hosted on GitHub.[22][17]

It does not support automatic package updates on timed schedules. Various third-party tools like Winget-AutoUpdate are designed to fill those gaps. Winget also does not support building from programs' source codes.

Commands

More information Name, Description ...
Name[16] Description
configure Configures the system into a desired state
export Exports a list of the installed applications
features Show status of experimental features
hash Hash installer files
import Install all the applications in a file
install Install the given application
list Display installed applications
pin Manage package upgrade pins
show Show information about the given application
search Search and show basic information of applications
settings Open winget configuration settings
source Manage application sources
upgrade Upgrades the given application
uninstall Uninstall the given application
validate Validate a manifest file
Close

Examples

Search for and installs variable $PKG_ID:

winget install --id=$PKG_ID -e

List all installed packages:

winget list

Update all packages:

winget upgrade --all

Search for all available packages:

winget search .

Package ID examples

See also

References

Related Articles

Wikiwand AI