Repository navigation
New Manifest Schema and Structure #646
Replies: 8 comments 27 replies
I'd be happy to walk you through some examples offline (we can codify them here). I was one of the original devs on WiX's burn installer and the architect on the Visual Studio setup engine for Dev15+ and we handled very diverse first- and third-party installers by taking all this into account. |
|
YAML was originally chosen to be "easier" for humans to write. We're aware of the tooling challenges with it. We're building support for both YAML and JSON in the REST API that's currently in development with the "same" YAML keys. |
|
There has been some discussion about "reboot required". What is the scenario related to overrides you have in mind? |
|
Upgrade includes a pair of behaviors. One of them is "Install" which essentially just installs the new version, the other is "UninstallPrevious" which would uninstall the previous version before installing the new version. |
|
For applications like VS that have optional features (since I imagine someone will create unofficial installers for it), will there be support in winget for it, or at least a way to pass additional command line parameters? In winget v0.2.2521 Preview I see an winget install vs_buildtools --silent -- --add Microsoft.Component.MSBuild |
|
https://github.com/microsoft/winget-cli/tree/master/schemas/JSON/manifests/v1.0.0 We've got an initial version of the new schemas checked in. They may still change, but this should give an overview of what we're looking at for the next version of the manifest schemas. |
|
Can we also get custom messages (after successful installs)? Sometimes users asks particular questions about particular programs (like this: microsoft/winget-pkgs/issues/656) and telling users that "this problem still exist and in order to fix this issue, you can do these..." is a good way to reduce issues number on the winget-pkg repo. Also, can we get after install requirements? Some installers calls driver installers (microsoft/winget-pkgs/pull/8521) after they finish initial install process and this is cause stalls/timed outs. |
|
tristanbarcelon, yes. |

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
All,
We have been working through several of the features on the backlog, and looking towards the future. Several new and some existing features would be greatly improved by updating our manifest schema. We’ve looked at some inconsistencies in terminology as well as some issues with Pascal casing identifiers. The list below should help to identify the key names, the field descriptions, some data type information and constraints/hints to the constraints. Several of the new fields are required for new features or they help with pulling a bit more of the meta-data from packages/Apps in the Microsoft Store so we can get closer to parity for displaying meta-data and supporting install for all packages in the store. In addition we’re looking to begin partitioning the directories under “manifests” by the (lower case) first letter of the publisher. GitHub.com has some limitations on the number of entries rendered on the website. The table below shows our current thinking. We're also looking into the possibility of splitting a manifest into multiple files to separate installers from localized meta-data.
Feedback is welcome.
Edited
Initial table deleted in favor of JSON schemas:
https://github.com/microsoft/winget-cli/tree/master/schemas/JSON/manifests/v1.0.0
All reactions