Convert Figma logo to code with AI

microsoft logowinget-pkgs

The Microsoft community Windows Package Manager manifest repository

8,506
4,396
8,506
1,148

Top Related Projects

20,866

A command-line installer for Windows.

10,206

Chocolatey - the package manager for Windows

1,779

📦 The Extras bucket for Scoop.

40,745

🍺 The missing package manager for macOS (or Linux)

Quick Overview

The microsoft/winget-pkgs repository is the central repository for application manifests used by the Windows Package Manager (winget). It contains metadata and installation information for various software packages that can be installed using the winget command-line tool. This repository serves as a community-driven source for package information, allowing users to contribute and maintain package manifests.

Pros

  • Community-driven: Allows users to contribute and maintain package manifests
  • Wide range of software: Includes manifests for a diverse selection of applications
  • Regularly updated: Frequent updates ensure the latest versions of software are available
  • Microsoft-backed: Supported by Microsoft, ensuring long-term maintenance and reliability

Cons

  • Quality control challenges: With many contributors, maintaining consistent quality across all manifests can be difficult
  • Potential for outdated information: Some package manifests may not be updated as frequently as others
  • Limited to Windows: Only supports Windows operating systems
  • Dependency on community contributions: The completeness and accuracy of the repository rely heavily on community involvement

Getting Started

To contribute a new package manifest to the winget-pkgs repository:

  1. Fork the repository on GitHub
  2. Create a new branch for your changes
  3. Add your package manifest file(s) in the appropriate directory structure
  4. Commit your changes and push to your fork
  5. Create a pull request to the main repository

Example of a basic package manifest (YAML format):

PackageIdentifier: Publisher.AppName
PackageVersion: 1.0.0
PackageName: Application Name
Publisher: Publisher Name
License: License Type
ShortDescription: A brief description of the application.
Installers:
  - Architecture: x64
    InstallerType: exe
    InstallerUrl: https://example.com/app-installer.exe
    InstallerSha256: 1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF
ManifestType: singleton
ManifestVersion: 1.0.0

For more detailed information on creating and submitting package manifests, refer to the Contributing Guide in the repository.

Competitor Comparisons

20,866

A command-line installer for Windows.

Pros of Scoop

  • More user-friendly command-line interface
  • Supports portable installations, allowing for easy transfer between systems
  • Offers a wider range of community-maintained packages

Cons of Scoop

  • Smaller official package repository compared to winget-pkgs
  • Less integration with Windows OS and Microsoft ecosystem
  • May require more manual configuration for some packages

Code Comparison

Scoop installation command:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

winget-pkgs installation command:

Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe

Scoop package installation:

scoop install <package-name>

winget-pkgs package installation:

winget install <package-name>

Both Scoop and winget-pkgs serve as package managers for Windows, but they have different approaches and target audiences. Scoop focuses on providing a more flexible and user-friendly experience for developers and power users, while winget-pkgs aims to be a more integrated and official solution for Windows package management. The choice between the two depends on individual needs and preferences.

10,206

Chocolatey - the package manager for Windows

Pros of choco

  • Mature ecosystem with a large community and extensive package library
  • Supports package creation and hosting on custom repositories
  • Offers more advanced features like package moderation and approval processes

Cons of choco

  • Requires elevated privileges for installation and package management
  • Can be slower to install packages compared to winget
  • Less integrated with Windows OS compared to winget

Code Comparison

choco:

choco install firefox
choco upgrade all
choco uninstall notepad++

winget-pkgs:

winget install Mozilla.Firefox
winget upgrade --all
winget uninstall Notepad++.Notepad++

Both package managers use similar command structures, but winget-pkgs typically requires more specific package identifiers. choco often allows for shorter, more generic package names.

winget-pkgs is directly integrated into Windows, while choco requires separate installation. winget-pkgs focuses on simplicity and OS integration, whereas choco offers more advanced features for package management and creation.

Overall, choco provides a more comprehensive package management solution with a larger ecosystem, while winget-pkgs offers a simpler, native Windows experience with faster installation times and no additional software required.

1,779

📦 The Extras bucket for Scoop.

Pros of Extras

  • More flexible and customizable installation options
  • Supports portable applications and non-standard installations
  • Community-driven with faster updates for niche software

Cons of Extras

  • Smaller package repository compared to winget-pkgs
  • Less official support and potential security concerns
  • May require more user intervention for complex installations

Code Comparison

Extras manifest (JSON):

{
    "version": "1.2.3",
    "url": "https://example.com/app.zip",
    "extract_dir": "AppFolder",
    "bin": "app.exe"
}

winget-pkgs manifest (YAML):

PackageIdentifier: Example.App
PackageVersion: 1.2.3
Installers:
  - Architecture: x64
    InstallerUrl: https://example.com/app.msi
    InstallerType: msi

The Extras manifest is more concise and focuses on portable applications, while the winget-pkgs manifest provides more detailed information for traditional installers. Extras allows for custom extraction and binary paths, whereas winget-pkgs relies on standard installation procedures.

Both repositories serve as package managers for Windows, but cater to different user needs and installation preferences. Extras is more community-driven and flexible, while winget-pkgs offers a larger, officially supported package collection with standardized installation methods.

40,745

🍺 The missing package manager for macOS (or Linux)

Pros of Homebrew

  • Cross-platform support (macOS and Linux)
  • Larger package ecosystem with community-contributed formulae
  • More mature and established project with a longer history

Cons of Homebrew

  • Slower package installation process
  • Requires more system resources and disk space
  • Less integrated with the operating system compared to winget

Code Comparison

winget-pkgs:

PackageIdentifier: Microsoft.VisualStudioCode
PackageVersion: 1.60.0
PackageName: Visual Studio Code
Publisher: Microsoft Corporation
License: MIT
LicenseUrl: https://github.com/microsoft/vscode/blob/main/LICENSE.txt

Homebrew:

class VisualStudioCode < Formula
  desc "Open-source code editor"
  homepage "https://code.visualstudio.com/"
  version "1.60.0"
  url "https://update.code.visualstudio.com/#{version}/darwin/stable"
  sha256 "..."
  
  depends_on macos: ">= :high_sierra"
end

The winget-pkgs repository uses YAML for package manifests, while Homebrew uses Ruby-based formulae. Winget-pkgs focuses on Windows package management, whereas Homebrew supports macOS and Linux. Homebrew's formulae often include more detailed package information and dependencies, while winget-pkgs manifests are generally simpler and more standardized.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Windows Package Manager Community Repository

Gitter Validation Pipeline Badge Publish Pipeline Badge GitHub Status

This repository contains the manifest files for the Windows Package Manager default source. You are highly encouraged to submit manifests for your favorite application.

[!IMPORTANT] At this time installers must be MSIX, MSI, APPX, or .exe application installers. Script-based installers and fonts are not currently supported.

The Windows Package Manager is an open source client designed for command-line usage. If you are interested in exploring private repositories offering private WinGet package hosting, see private repositories.

Documentation

Please check the overview for detailed topics. Common topics for the WinGet Community repository are available below:

Repology

Repology, the packaging hub monitors package repositories comparing package versions and other information.

Repository status

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 do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

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). Follow the instructions provided by the bot. You will only need to do this once across all Microsoft repositories using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. See the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments. More information is available in our Contributing document.

To avoid doubt, you may not make any Submissions linking to third-party materials if such Submission is prohibited by the applicable third party and/or otherwise violates such third party's rights.