Add support for Manifests with No Installers#6157
Draft
Trenly wants to merge 7 commits intomicrosoft:masterfrom
Draft
Add support for Manifests with No Installers#6157Trenly wants to merge 7 commits intomicrosoft:masterfrom
Trenly wants to merge 7 commits intomicrosoft:masterfrom
Conversation
This comment has been minimized.
This comment has been minimized.
Contributor
Author
|
Tagging @hackean-msft as I'm not sure if the install validation would handle this cleanly currently or not; I believe it may be likely that the validation pipeline would need to skip installer validation for |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR introduces support for the
noinstallermanifest type (manifest version 1.29.0), which allows publishers to declare packages that have no downloadable installer. This enables WinGet to correlate against already-installed software even when no installation artifact is available — useful for system components, pre-installed software, and packages distributed through channels outside of WinGet. This also acts as a way to notify clients that a version has been removed for a specific reason, a package has been removed for a specific reason (CVEs, publisher request, moved to a new identifier, etc.), while still providing tools over at winget-pkgs like the duplicates checker a way to enforce removed packages by SHA.What's New
NoInstaller Manifest Type
Publishers can now declare a manifest with
InstallerType: noinstallerto indicate that a package exists and is recognized by WinGet, but has no installer to download or run. WinGet will correctly handle these packages across theinstall,show, andupgradeworkflows.Installer Availability Message
A new optional manifest field,
InstallerAvailabilityMessage, allows publishers to provide a human-readable explanation when an installer is unavailable. This message is surfaced to the user in place of the generic fallback message, giving them actionable context (e.g., a link or explanation of where to obtain the software).This change may require changes to the validation framework, which is why the PR is being created as draft
Microsoft Reviewers: Open in CodeFlow