Type object
File match **/manifests/?/*/*/*/*.*.installer.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/windows-package-manager-installer-manifest/latest.json
Source https://www.schemastore.org/winget-pkgs-installer-1.0.0.json

Validate with Lintel

npx @lintel/lintel check
Type: object

A representation of a single-file manifest representing an app installers in the OWC. v1.0.0

Properties

PackageIdentifier string required

The package unique identifier

maxLength=128pattern=^[^\.\s\\/:\*\?"<>\|\x01-\x1f]{1,32}(\.[^\.\s\\/:\*\?"<>\|\x01-\x1f]{1,32}){1,3}$
PackageVersion string required

The package version

maxLength=128pattern=^[^\\/:\*\?"<>\|\x01-\x1f]+$
Installers Installer[] required
minItems=1maxItems=128
ManifestType string required

The manifest type

Default: "installer"
Constant: "installer"
ManifestVersion string required

The manifest syntax version

Default: "1.0.0"
pattern=^(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])(\.(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])){2}$
Channel string | null

The distribution channel

minLength=1maxLength=16
InstallerLocale string | null

The package meta-data locale

minLength=1maxLength=20
Platform array | null

The installer supported operating system

maxItems=2uniqueItems=true
MinimumOSVersion string | null

The installer minimum operating system version

pattern=^(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])(\.(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])){0,3}$
InstallerType string | null

Enumeration of supported installer types

Values: "msix" "msi" "appx" "exe" "zip" "inno" "nullsoft" "wix" "burn" "pwa"

Scope indicates if the installer is per user or per machine

Values: "user" "machine"
InstallModes array | null

List of supported installer modes

maxItems=3uniqueItems=true
InstallerSwitches object
7 nested properties
Silent string | null

Silent is the value that should be passed to the installer when user chooses a silent or quiet install

minLength=1maxLength=512
SilentWithProgress string | null

SilentWithProgress is the value that should be passed to the installer when user chooses a non-interactive install

minLength=1maxLength=512
Interactive string | null

Interactive is the value that should be passed to the installer when user chooses an interactive install

minLength=1maxLength=512
InstallLocation string | null

InstallLocation is the value passed to the installer for custom install location. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Log string | null

Log is the value passed to the installer for custom log file path. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Upgrade string | null

Upgrade is the value that should be passed to the installer when user chooses an upgrade

minLength=1maxLength=512
Custom string | null

Custom switches will be passed directly to the installer by winget

minLength=1maxLength=2048
InstallerSuccessCodes array | null

List of additional non-zero installer success exit codes other than known default values by winget

maxItems=16uniqueItems=true
UpgradeBehavior string | null

The upgrade method

Values: "install" "uninstallPrevious"
Commands array | null

List of commands or aliases to run the package

maxItems=16uniqueItems=true
Protocols array | null

List of protocols the package provides a handler for

maxItems=16uniqueItems=true
FileExtensions array | null

List of file extensions the package could support

maxItems=256uniqueItems=true
Dependencies object | null
4 nested properties
WindowsFeatures array | null

List of Windows feature dependencies

maxItems=16uniqueItems=true
WindowsLibraries array | null

List of Windows library dependencies

maxItems=16uniqueItems=true
PackageDependencies array | null

List of package dependencies from current source

maxItems=16uniqueItems=true
ExternalDependencies array | null

List of external package dependencies

maxItems=16uniqueItems=true
PackageFamilyName string | null

PackageFamilyName for appx or msix installer. Could be used for correlation of packages across sources

maxLength=255pattern=^[A-Za-z0-9][-\.A-Za-z0-9]+_[A-Za-z0-9]{13}$
ProductCode string | null

ProductCode could be used for correlation of packages across sources

minLength=1maxLength=255
Capabilities array | null

List of appx or msix installer capabilities

maxItems=1000uniqueItems=true
RestrictedCapabilities array | null

List of appx or msix installer restricted capabilities

maxItems=1000uniqueItems=true

Definitions

PackageIdentifier string

The package unique identifier

PackageVersion string

The package version

Locale string | null

The package meta-data locale

Channel string | null

The distribution channel

Platform array | null

The installer supported operating system

MinimumOSVersion string | null

The installer minimum operating system version

InstallerType string | null

Enumeration of supported installer types

Scope string | null

Scope indicates if the installer is per user or per machine

InstallModes array | null

List of supported installer modes

InstallerSwitches object
Silent string | null

Silent is the value that should be passed to the installer when user chooses a silent or quiet install

minLength=1maxLength=512
SilentWithProgress string | null

SilentWithProgress is the value that should be passed to the installer when user chooses a non-interactive install

minLength=1maxLength=512
Interactive string | null

Interactive is the value that should be passed to the installer when user chooses an interactive install

minLength=1maxLength=512
InstallLocation string | null

InstallLocation is the value passed to the installer for custom install location. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Log string | null

Log is the value passed to the installer for custom log file path. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Upgrade string | null

Upgrade is the value that should be passed to the installer when user chooses an upgrade

minLength=1maxLength=512
Custom string | null

Custom switches will be passed directly to the installer by winget

minLength=1maxLength=2048
InstallerSuccessCodes array | null

List of additional non-zero installer success exit codes other than known default values by winget

UpgradeBehavior string | null

The upgrade method

Commands array | null

List of commands or aliases to run the package

Protocols array | null

List of protocols the package provides a handler for

FileExtensions array | null

List of file extensions the package could support

Dependencies object | null
WindowsFeatures array | null

List of Windows feature dependencies

maxItems=16uniqueItems=true
WindowsLibraries array | null

List of Windows library dependencies

maxItems=16uniqueItems=true
PackageDependencies array | null

List of package dependencies from current source

maxItems=16uniqueItems=true
ExternalDependencies array | null

List of external package dependencies

maxItems=16uniqueItems=true
PackageFamilyName string | null

PackageFamilyName for appx or msix installer. Could be used for correlation of packages across sources

ProductCode string | null

ProductCode could be used for correlation of packages across sources

Capabilities array | null

List of appx or msix installer capabilities

RestrictedCapabilities array | null

List of appx or msix installer restricted capabilities

Installer object
Architecture string required

The installer target architecture

Values: "x86" "x64" "arm" "arm64" "neutral"
InstallerUrl string required

The installer Url

pattern=^([Hh][Tt][Tt][Pp][Ss]?)://.+$
InstallerSha256 string required

Sha256 is required. Sha256 of the installer

pattern=^[A-Fa-f0-9]{64}$
InstallerLocale string | null

The package meta-data locale

minLength=1maxLength=20
Platform array | null

The installer supported operating system

maxItems=2uniqueItems=true
MinimumOSVersion string | null

The installer minimum operating system version

pattern=^(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])(\.(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])){0,3}$
InstallerType string | null

Enumeration of supported installer types

Values: "msix" "msi" "appx" "exe" "zip" "inno" "nullsoft" "wix" "burn" "pwa"

Scope indicates if the installer is per user or per machine

Values: "user" "machine"
SignatureSha256 string | null

SignatureSha256 is recommended for appx or msix. It is the sha256 of signature file inside appx or msix. Could be used during streaming install if applicable

pattern=^[A-Fa-f0-9]{64}$
InstallModes array | null

List of supported installer modes

maxItems=3uniqueItems=true
InstallerSwitches object
7 nested properties
Silent string | null

Silent is the value that should be passed to the installer when user chooses a silent or quiet install

minLength=1maxLength=512
SilentWithProgress string | null

SilentWithProgress is the value that should be passed to the installer when user chooses a non-interactive install

minLength=1maxLength=512
Interactive string | null

Interactive is the value that should be passed to the installer when user chooses an interactive install

minLength=1maxLength=512
InstallLocation string | null

InstallLocation is the value passed to the installer for custom install location. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Log string | null

Log is the value passed to the installer for custom log file path. token can be included in the switch value so that winget will replace the token with user provided path

minLength=1maxLength=512
Upgrade string | null

Upgrade is the value that should be passed to the installer when user chooses an upgrade

minLength=1maxLength=512
Custom string | null

Custom switches will be passed directly to the installer by winget

minLength=1maxLength=2048
InstallerSuccessCodes array | null

List of additional non-zero installer success exit codes other than known default values by winget

maxItems=16uniqueItems=true
UpgradeBehavior string | null

The upgrade method

Values: "install" "uninstallPrevious"
Commands array | null

List of commands or aliases to run the package

maxItems=16uniqueItems=true
Protocols array | null

List of protocols the package provides a handler for

maxItems=16uniqueItems=true
FileExtensions array | null

List of file extensions the package could support

maxItems=256uniqueItems=true
Dependencies object | null
4 nested properties
WindowsFeatures array | null

List of Windows feature dependencies

maxItems=16uniqueItems=true
WindowsLibraries array | null

List of Windows library dependencies

maxItems=16uniqueItems=true
PackageDependencies array | null

List of package dependencies from current source

maxItems=16uniqueItems=true
ExternalDependencies array | null

List of external package dependencies

maxItems=16uniqueItems=true
PackageFamilyName string | null

PackageFamilyName for appx or msix installer. Could be used for correlation of packages across sources

maxLength=255pattern=^[A-Za-z0-9][-\.A-Za-z0-9]+_[A-Za-z0-9]{13}$
ProductCode string | null

ProductCode could be used for correlation of packages across sources

minLength=1maxLength=255
Capabilities array | null

List of appx or msix installer capabilities

maxItems=1000uniqueItems=true
RestrictedCapabilities array | null

List of appx or msix installer restricted capabilities

maxItems=1000uniqueItems=true