All Projects → microsoft → Winget Cli

microsoft / Winget Cli

Licence: mit
Windows Package Manager CLI (aka winget)

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
C#
18002 projects
CMake
9771 projects
powershell
5483 projects
HTML
75241 projects

Projects that are alternatives of or similar to Winget Cli

winget-create
The Windows Package Manager Manifest Creator command-line tool (aka wingetcreate)
Stars: ✭ 228 (-98.56%)
Mutual labels:  package-manager, winget
Sampctl
The Swiss Army Knife of SA:MP - vital tools for any server owner or library maintainer.
Stars: ✭ 149 (-99.06%)
Mutual labels:  command-line, package-manager
Xonotic Map Manager
A command line package manager for Xonotic community maps
Stars: ✭ 5 (-99.97%)
Mutual labels:  command-line, package-manager
Pack
📦 The missing vim8 package manager.
Stars: ✭ 238 (-98.5%)
Mutual labels:  command-line, package-manager
Macports Base
The MacPorts command-line client
Stars: ✭ 502 (-96.83%)
Mutual labels:  command-line, package-manager
Nve
Run any command on specific Node.js versions
Stars: ✭ 531 (-96.65%)
Mutual labels:  command-line, package-manager
Macports Ports
The MacPorts ports tree
Stars: ✭ 891 (-94.38%)
Mutual labels:  command-line, package-manager
Bashacks
Set of functions to increase productivity while hacking with Bash
Stars: ✭ 138 (-99.13%)
Mutual labels:  command-line
Node Promptly
Simple command line prompting utility for nodejs
Stars: ✭ 140 (-99.12%)
Mutual labels:  command-line
Pacaptr
Pacman-like syntax wrapper for many package managers.
Stars: ✭ 138 (-99.13%)
Mutual labels:  package-manager
Fblog
Small command-line JSON Log viewer
Stars: ✭ 137 (-99.14%)
Mutual labels:  command-line
Marketplace Partners
Image validation, automation, and other tools for DigitalOcean Marketplace partners and Custom Image users
Stars: ✭ 139 (-99.12%)
Mutual labels:  command-line
Nami
A decentralized binary package manager.
Stars: ✭ 141 (-99.11%)
Mutual labels:  package-manager
Gossed
Push the standard output of ANY program to browsers as Server Sent Events
Stars: ✭ 138 (-99.13%)
Mutual labels:  command-line
Laravel Paket
Composer GUI. Manage Laravel dependencies from web interface without switching to command line!
Stars: ✭ 143 (-99.1%)
Mutual labels:  package-manager
Reapack
📦 Package manager for REAPER
Stars: ✭ 137 (-99.14%)
Mutual labels:  package-manager
Paket.visualstudio
Manage your Paket (http://fsprojects.github.io/Paket/) dependencies from Visual Studio!
Stars: ✭ 144 (-99.09%)
Mutual labels:  package-manager
Swift For Scripting
📋A hand-curated collection of useful and informative Swift Scripting materials.
Stars: ✭ 142 (-99.1%)
Mutual labels:  command-line
Gitman
Language-agnostic dependency manager using Git.
Stars: ✭ 139 (-99.12%)
Mutual labels:  command-line
Paket
A dependency manager for .NET with support for NuGet packages and Git repositories.
Stars: ✭ 1,787 (-88.72%)
Mutual labels:  package-manager

Welcome to the Windows Package Manager Client (aka winget.exe) repository

This repository contains the source code for the Windows Package Manager Client (aka winget.exe).

winget install wingetcreate

The packages available to the client are in the Community repo.

Installing The Client

The client requires Windows 10 1809 (build 17763) or later at this time. Windows Server 2019 is not supported as the Microsoft Store is not available nor are updated dependencies. It may be possible to install on Windows Server 2022, this should be considered experimental (not supported), and requires dependencies to be manually installed as well.

Microsoft Store [Recommended]

The client is distributed within the App Installer package.

Development Releases

There are two methods to get development releases:

Note: it may take a few days to get the updated App Installer after you receive e-mail confirmation from joining the Windows Package Manager Insider program. If you decide to install the latest release from GitHub, and you have successfully joined the insider program, you will receive updates when the next development release has been published in the Microsoft Store.

Once you have received the updated App Installer from the Microsoft Store you should be able to execute winget features to see experimental features. Some users have reported issues with the client not being on their PATH.

Manually Update

The same Microsoft Store package will be made available via our Releases. Note that installing this package will give you the WinGet client, but it will not enable automatic updates from the Microsoft Store if you have not joined the Windows Package Manager Insider program.

You may need to install the VC++ v14 Desktop Framework Package. This should only be necessary on older builds of Windows 10 and only if you get an error about missing framework packages.

Troubleshooting

Please read our troubleshooting guide.

Administrator Considerations

Installer behavior can be different depending on whether you are running winget with administrator privileges.

  • When running winget without administrator privileges, some applications may require elevation to install. When the installer runs, Windows will prompt you to elevate. If you choose not to elevate, the application will fail to install.

  • When running winget in an Administrator Command Prompt, you will not see elevation prompts if the application requires it. Always use caution when running your command prompt as an administrator, and only install applications you trust.

Build your own

You can also build the client yourself. While the client should be perfectly functional, we are not ready to provide full support for clients running outside of the official distribution mechanisms yet. Feel free to file an Issue, but know that it may get lower prioritization.

Build Status

Build Status

Windows Package Manager Release Roadmap

The plan for delivering next Windows Package Manager release is described here, and will be updated as the project proceeds.

Overview of the Windows Package Manager

The Windows Package Manager is a tool designed to help you quickly and easily discover and install those tools that make your PC environment special. By using the Windows Package Manager, from one command, you can install your favorite tool: winget install <tool>

Overview

Client Repository

This winget-cli repository includes the source code designed to build the client. You are encouraged to participate in the development of this client. We have plenty of backlog features in our Issues. You can upvote the ones you want, add more, or even get started on one.

Sources

The client is built around the concept of sources; a set of packages effectively. Sources provide the ability to discover and retrieve the metadata about the packages, so that the client can act on it.

The default source reflects that data available from the Community repo.

We plan to better support additional sources, and additional types of sources, in the future. For now, additional sources can be configured, but only one used at a time.

Package Manager Service

The Package Manager Service is responsible for approving Pull Requests. It validates the YAML and manifest spec for spec compliance.

Building the client

Prerequisites

Building

We currently only build using the solution; command line methods of building a VS solution should work as well.

Credit

We would like to thank Keivan Beigi (@kayone) for his work on AppGet which helped us on the initial project direction for Windows Package Manager.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com. More information is available in our CONTRIBUTING.md file.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, please refer to the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Data/Telemetry

The winget.exe client is instrumented to collect usage and diagnostic (error) data and sends it to Microsoft to help improve the product.

If you build the client yourself the instrumentation will not be enabled and no data will be sent to Microsoft.

The winget.exe client respects machine wide privacy settings and users can opt-out on their device, as documented in the Microsoft Windows privacy statement here.

In short to opt-out, go to Start, then select Settings > Privacy > Diagnostics & feedback, and select Basic.

See the privacy statement for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].