winget-cli

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

settings.md (5022B)


      1 ---
      2 title: winget settings command
      3 description: Provides customizations for the Windows Package Manager.
      4 ms.date: 05/05/2021
      5 ms.topic: article
      6 ms.localizationpriority: medium
      7 ---
      8 
      9 # settings command (winget)
     10 
     11 The **settings** command of the [winget](index.md) tool allows you to customize your Windows Package Manager client experience.  You can change defaults and try out experimental features that are enabled in your client.
     12 The **settings** command will launch your default JSON editor. Windows by default will launch Notepad as an option. We recommend using a tool like [Visual Studio code](https://code.visualstudio.com/).
     13 
     14 > You can easily install Visual Studio Code, by typing `winget install Microsoft.VisualStudioCode`
     15 
     16 ## Usage
     17 
     18 Launch your default JSON editing tool: `winget settings`
     19 
     20 ![Screenshot of the Windows Package Manager Settings.](images/settings.png)
     21 
     22 When you launch the settings for the first time, there will be no settings specified. At the top of the JSON we provide a link to [https://aka.ms/winget-settings](https://aka.ms/winget-settings) where you can discover the latest experimental features and settings.
     23 
     24 We have also defined a schema for the settings file.  This allows you to use TAB to discover settings and syntax if your JSON editor supports JSON schemas.
     25 
     26 ## Updating Settings
     27 
     28 The following settings are available for the 1.0 release of the Windows Package Manager.
     29 
     30 ### Source
     31 
     32 The `source` settings involve configuration to the WinGet source.
     33 
     34 ```json
     35     "source": {
     36         "autoUpdateIntervalInMinutes": 3
     37     },
     38 ```
     39 
     40 #### autoUpdateIntervalInMinutes
     41 
     42 A positive integer represents the update interval in minutes. The check for updates only happens when a source is used. A zero will disable the check for updates to a source. Any other values are invalid.
     43 
     44 - Disable: 0
     45 - Default: 5
     46 
     47 To manually update the source use `winget source update`
     48 
     49 ### Visual
     50 
     51 The `visual` settings involve visual elements that are displayed by WinGet
     52 
     53 ```json
     54     "visual": {
     55         "progressBar": "accent"
     56     },
     57 ```
     58 
     59 #### progressBar
     60 
     61 Color of the progress bar that WinGet displays when not specified by arguments.
     62 
     63 - accent (default)
     64 - retro
     65 - rainbow
     66 
     67 ### Install Behavior
     68 
     69 The `installBehavior` settings affect the default behavior of installing and upgrading (where applicable) packages.
     70 
     71 #### Preferences and Requirements
     72 
     73 Some of the settings are duplicated under `preferences` and `requirements`. `preferences` affect how the various available options are sorted when choosing the one to act on.  For instance, the default scope of package installs is for the current user, but if that is not an option then a machine level installer will be chosen. `requirements` filter the options, potentially resulting in an empty list and a failure to install. In the previous example, a user scope requirement would result in no applicable installers and an error.
     74 
     75 Any arguments passed on the command line will effectively override the matching `requirement` setting for the duration of that command.
     76 
     77 #### Scope
     78 
     79 The `scope` behavior affects the choice between installing a package for the current user or for the entire machine. The matching parameter is `--scope`, and uses the same values (`user` or `machine`).
     80 
     81 ```json
     82     "installBehavior": {
     83         "preferences": {
     84             "scope": "user"
     85         }
     86     },
     87 ```
     88 
     89 #### Locale
     90 
     91 The `locale` behavior affects the choice of installer based on installer locale. The matching parameter is `--locale`, and uses bcp47 language tag.
     92 
     93 ```json
     94     "installBehavior": {
     95         "preferences": {
     96             "locale": [ "en-US", "fr-FR" ]
     97         }
     98     },
     99 ```
    100 
    101 ### Telemetry
    102 
    103 The `telemetry` settings control whether winget writes ETW events that may be sent to Microsoft on a default installation of Windows.
    104 
    105 See [details on telemetry](https://github.com/microsoft/winget-cli/blob/master/README.md#datatelemetry), and our [primary privacy statement](https://github.com/microsoft/winget-cli/blob/master/PRIVACY.md).
    106 
    107 #### disable
    108 
    109 ```json
    110     "telemetry": {
    111         "disable": true
    112     },
    113 ```
    114 
    115 If set to true, the `telemetry.disable` setting will prevent any event from being written by the program.
    116 
    117 ### Network
    118 
    119 The `network` settings influence how winget uses the network to retrieve packages and metadata.
    120 
    121 #### Downloader
    122 
    123 The `downloader` setting controls which code is used when downloading packages. The default is `default`, which may be any of the options based on our determination.
    124 `wininet` uses the [WinINet](https://docs.microsoft.com/windows/win32/wininet/about-wininet) APIs, while `do` uses the
    125 [Delivery Optimization](https://support.microsoft.com/windows/delivery-optimization-in-windows-10-0656e53c-15f2-90de-a87a-a2172c94cf6d) service.
    126 
    127 ```json
    128    "network": {
    129        "downloader": "do"
    130    }
    131 ```
    132 
    133 ## Enabling Experimental features
    134 
    135 To discover which experimental features are available, go to [https://aka.ms/winget-settings](https://aka.ms/winget-settings) where you can see the experimental features available to you.
    136