winget-cli

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

settings.schema.0.2.json (11115B)


      1 {
      2   "$id": "https://aka.ms/winget-settings.schema.json",
      3   "$schema": "https://json-schema.org/draft/2019-09/schema#",
      4   "title": "Microsoft's Windows Package Manager Settings Profile Schema",
      5   "definitions": {
      6     "Source": {
      7       "description": "Source repository settings",
      8       "type": "object",
      9       "properties": {
     10         "autoUpdateIntervalInMinutes": {
     11           "description": "Number of minutes before source update",
     12           "type": "integer",
     13           "default": 5,
     14           "minimum": 0,
     15           "maximum": 43200
     16         }
     17       }
     18     },
     19     "Visual": {
     20       "description": "Visual settings",
     21       "type": "object",
     22       "properties": {
     23         "progressBar": {
     24           "description": "Progress bar display style",
     25           "type": "string",
     26           "enum": [
     27             "accent",
     28             "rainbow",
     29             "retro",
     30             "sixel",
     31             "disabled"
     32           ]
     33         },
     34         "anonymizeDisplayedPaths": {
     35           "description": "Replaces some known folder paths with their respective environment variable",
     36           "type": "boolean",
     37           "default": true
     38         },
     39         "enableSixels": {
     40           "description": "Enables output of sixel images in certain contexts",
     41           "type": "boolean",
     42           "default": false
     43         }
     44       }
     45     },
     46     "Logging": {
     47       "description": "Logging settings",
     48       "type": "object",
     49       "properties": {
     50         "level": {
     51           "description": "Preferred logging level",
     52           "type": "string",
     53           "enum": [
     54             "verbose",
     55             "info",
     56             "warning",
     57             "error",
     58             "critical"
     59           ]
     60         },
     61         "channels": {
     62           "description": "The logging channels to enable",
     63           "type": "array",
     64           "items": {
     65             "uniqueItems": true,
     66             "type": "string",
     67             "enum": [
     68               "fail",
     69               "cli",
     70               "sql",
     71               "repo",
     72               "yaml",
     73               "core",
     74               "test",
     75               "config",
     76               "default",
     77               "all"
     78             ],
     79             "maxLength": 20
     80           },
     81           "minItems": 0,
     82           "maxItems": 20
     83         }
     84       }
     85     },
     86     "InstallPrefReq": {
     87       "description": "Shared schema for preferences and requirements",
     88       "type": "object",
     89       "properties": {
     90         "scope": {
     91           "description": "The scope of a package install",
     92           "type": "string",
     93           "enum": [
     94             "user",
     95             "machine"
     96           ],
     97           "default": "user"
     98         },
     99         "locale": {
    100           "description": "The locales of a package install",
    101           "type": "array",
    102           "items": {
    103             "type": "string",
    104             "pattern": "^([a-zA-Z]{2}|[iI]-[a-zA-Z]+|[xX]-[a-zA-Z]{1,8})(-[a-zA-Z]{1,8})*$",
    105             "maxLength": 20
    106           },
    107           "minItems": 1,
    108           "maxItems": 10
    109         },
    110         "architectures": {
    111           "description": "The architecture(s) to use for a package install",
    112           "type": "array",
    113           "items": {
    114             "uniqueItems": true,
    115             "type": "string",
    116             "enum": [
    117               "neutral",
    118               "x64",
    119               "x86",
    120               "arm64",
    121               "arm"
    122             ],
    123             "minItems": 1,
    124             "maxItems": 4
    125           }
    126         },
    127         "installerTypes": {
    128           "description": "The installerType(s) to use for a package install",
    129           "type": "array",
    130           "items": {
    131             "uniqueItems": true,
    132             "type": "string",
    133             "enum": [
    134               "inno",
    135               "wix",
    136               "msi",
    137               "nullsoft",
    138               "zip",
    139               "msix",
    140               "exe",
    141               "burn",
    142               "msstore",
    143               "portable"
    144             ],
    145             "minItems": 1,
    146             "maxItems": 9
    147           }
    148         }
    149       }
    150     },
    151     "InstallBehavior": {
    152       "description": "Install settings",
    153       "type": "object",
    154       "properties": {
    155         "preferences": { "$ref": "#/definitions/InstallPrefReq" },
    156         "requirements": { "$ref": "#/definitions/InstallPrefReq" },
    157         "skipDependencies": {
    158           "description": "Controls whether package dependencies and Windows Features are skipped during installation",
    159           "type": "boolean",
    160           "default": false
    161         },
    162         "disableInstallNotes": {
    163           "description": "Controls whether installation notes are shown after a successful install",
    164           "type": "boolean",
    165           "default": false
    166         },
    167         "portablePackageUserRoot": {
    168           "description": "The default root directory where packages are installed to under User scope. Applies to the portable installer type.",
    169           "type": "string",
    170           "default": "%LOCALAPPDATA%/Microsoft/WinGet/Packages/"
    171         },
    172         "portablePackageMachineRoot": {
    173           "description": "The default root directory where packages are installed to under Machine scope. Applies to the portable installer type.",
    174           "type": "string",
    175           "default": "%PROGRAMFILES%/WinGet/Packages/"
    176         },
    177         "defaultInstallRoot": {
    178           "description": "Default install location to use for packages that require it when not specified",
    179           "type": "string",
    180           "maxLength": 32767
    181         },
    182         "maxResumes": {
    183           "description": "The maximum number of resumes allowed for a single resume id. This is to prevent continuous reboots if an install that requires a reboot is not properly detected.",
    184           "type": "integer",
    185           "default": 3,
    186           "minimum": 1
    187         },
    188         "archiveExtractionMethod": {
    189           "description": "Controls the behavior how the installer extracts archives. The current two supported values are 'shellApi' and 'tar'. 'shellApi' uses the Windows Shell API to extract archives. 'tar' uses the tar command to extract archives.",
    190           "type": "string",
    191           "enum": [
    192             "shellApi",
    193             "tar"
    194           ],
    195           "default": "shellApi"
    196         }
    197       }
    198     },
    199     "UninstallBehavior": {
    200       "description": "Uninstall settings",
    201       "type": "object",
    202       "properties": {
    203         "purgePortablePackage": {
    204           "description": "Controls whether the default behavior for uninstall removes all files and directories relevant to this package. Only applies to the portable installerType.",
    205           "type": "boolean",
    206           "default": false
    207         }
    208       }
    209     },
    210     "ConfigureBehavior": {
    211       "description": "Configure settings",
    212       "type": "object",
    213       "properties": {
    214         "defaultModuleRoot": {
    215           "description": "The default root directory where PowerShell modules are installed to when applying a configuration.",
    216           "type": "string",
    217           "maxLength": 32767,
    218           "default": "%LOCALAPPDATA%/Microsoft/WinGet/Configuration/Modules/"
    219         }
    220       }
    221     },
    222     "DownloadBehavior": {
    223       "description": "Download settings",
    224       "type": "object",
    225       "properties": {
    226         "defaultDownloadDirectory": {
    227           "description": "The default directory where installers are downloaded to.",
    228           "type": "string",
    229           "default": "%USERPROFILE%/Downloads/"
    230         }
    231       }
    232     },
    233     "Telemetry": {
    234       "description": "Telemetry settings",
    235       "type": "object",
    236       "properties": {
    237         "disable": {
    238           "description": "Controls whether telemetry events are written",
    239           "type": "boolean",
    240           "default": false
    241         }
    242       }
    243     },
    244     "Network": {
    245       "description": "Network settings",
    246       "type": "object",
    247       "properties": {
    248         "downloader": {
    249           "description": "Control which download code is used for packages",
    250           "type": "string",
    251           "enum": [
    252             "default",
    253             "wininet",
    254             "do"
    255           ],
    256           "default": "default"
    257         },
    258         "doProgressTimeoutInSeconds": {
    259           "description": "Number of seconds to wait without progress before fallback",
    260           "type": "integer",
    261           "default": 60,
    262           "minimum": 1,
    263           "maximum": 600
    264         }
    265       }
    266     },
    267     "Interactivity": {
    268       "description": "Interactivity settings",
    269       "type": "object",
    270       "properties": {
    271         "disable": {
    272           "description": "Controls whether interactive prompts are shown by the Windows Package Manager client",
    273           "type": "boolean",
    274           "default": false
    275         }
    276       }
    277     },
    278     "Experimental": {
    279       "description": "Experimental Features",
    280       "type": "object",
    281       "properties": {
    282         "experimentalCMD": {
    283           "description": "Reference implementation for an experimental command",
    284           "type": "boolean",
    285           "default": false
    286         },
    287         "experimentalARG": {
    288           "description": "Reference implementation for an experimental argument",
    289           "type": "boolean",
    290           "default": false
    291         },
    292         "directMSI": {
    293           "description": "Enable use of MSI APIs rather than msiexec for MSI installs",
    294           "type": "boolean",
    295           "default": false
    296         },
    297         "fonts": {
    298           "description": "Enable support for managing fonts",
    299           "type": "boolean",
    300           "default": false
    301         }
    302       }
    303     }
    304   },
    305   "allOf": [
    306     {
    307       "properties": {
    308         "source": { "$ref": "#/definitions/Source" }
    309       },
    310       "additionalItems": true
    311     },
    312     {
    313       "properties": {
    314         "visual": { "$ref": "#/definitions/Visual" }
    315       },
    316       "additionalItems": true
    317     },
    318     {
    319       "properties": {
    320         "logging": { "$ref": "#/definitions/Logging" }
    321       },
    322       "additionalItems": true
    323     },
    324     {
    325       "properties": {
    326         "installPrefReq": { "$ref": "#/definitions/InstallPrefReq" }
    327       },
    328       "additionalItems": true
    329     },
    330     {
    331       "properties": {
    332         "installBehavior": { "$ref": "#/definitions/InstallBehavior" }
    333       },
    334       "additionalItems": true
    335     },
    336     {
    337       "properties": {
    338         "uninstallBehavior": { "$ref": "#/definitions/UninstallBehavior" }
    339       },
    340       "additionalItems": true
    341     },
    342     {
    343       "properties": {
    344         "configureBehavior": { "$ref": "#/definitions/ConfigureBehavior" }
    345       },
    346       "additionalItems": true
    347     },
    348     {
    349       "properties": {
    350         "downloadBehavior": { "$ref": "#/definitions/DownloadBehavior" }
    351       },
    352       "additionalItems": true
    353     },
    354     {
    355       "properties": {
    356         "telemetry": { "$ref": "#/definitions/Telemetry" }
    357       },
    358       "additionalItems": true
    359     },
    360     {
    361       "properties": {
    362         "network": { "$ref": "#/definitions/Network" }
    363       },
    364       "additionalItems": true
    365     },
    366     {
    367       "properties": {
    368         "interactivity": { "$ref": "#/definitions/Interactivity" }
    369       },
    370       "additionalItems": true
    371     },
    372     {
    373       "properties": {
    374         "experimentalFeatures": { "$ref": "#/definitions/Experimental" }
    375       },
    376       "additionalItems": true
    377     }
    378   ],
    379   "additionalProperties": true
    380 }