microsoft / microsoft/winget-cli
[Feature Request] Allow winget manifests to use realitive paths.
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 26.4k
- Forks
- 1.8k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 15
Description
Description of the new feature/enhancement
The manifest should support local paths so winget can install from local packages.
User Scenario:
I want to place a winget manifest in a zip file with the msi. Then deliver that zip to that system using any method I want and unpack it. Then I want to programmatically have winget use that manifest to install that msi.
This would make winget a useful tool for anyone that is already using a package manager that they are happy with. The biggest pain point is usually repackaging everything with the right command to work with that package manager. winget can solve that problem. If they could drop the binaries and a winget manifest in a package, they could use a universal install script in the package manager that unpacks and executes winget.
I could also see this used in Azure DevOps as an action for deploying dynamic or just built packages.
Proposed technical implementation details (optional)
- I am not proposing that winget unzip the package and execute the manifest (but that would also be great)
- I am not proposing that the winget binary get delivered with the package.
winget installshould allow you to pass it a manifest to installwingetshould allow relative paths in the manifest.- relative as in relative to the location of the manifest
- should work on local system and UNC paths
- I'm not proposing that it support retaliative paths in the repository or on https endpoints at this time.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the winget install command and manifest path handling described in the issue. Verify how manifest-relative paths should resolve for local and UNC locations, then confirm installation works from an unpacked manifest and local MSI without adding repository or HTTPS relative-path support.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli, operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100