microsoft / microsoft/winget-cli

`winget export` supports `--scope machine`

Open
#4,942 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Command-Export Issue-Feature
Dominant language
C++
Stars
26.4k
Forks
1.8k
Avg merge
1d 11h
Merged PRs (30d)
15

Description

Description of the new feature / enhancement

This request is to add a feature to allow winget export to support passing --scope machine. This would only list applications installed machine wide, and APPX packages provisioned for all users.

Proposed technical implementation details

When running winget export --scope machine -o export.json, as well as Export-WinGetPackage -Scope System, the output should only contain applications installed with scope machine. For APPX in particular, this would use the code here to call packageManager.FindProvisionedPackages() rather than packageManager.FindPackagesForUserWithPackageTypes({}, PackageTypes::Main | PackageTypes::Framework).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/AppInstallerRepositoryCore/Microsoft/PredefinedInstalledSourceFactory.cpp at the linked package-discovery code, then trace how winget export --scope machine and Export-WinGetPackage -Scope System select installed packages. Done means both commands output only machine-wide applications, including APPX packages provisioned for all users; run the relevant export tests if available.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, powershell
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.