settings コマンド (winget)
winget ツールの settings コマンドを使用すると、Windows パッケージ マネージャーのクライアント エクスペリエンスをカスタマイズできます。 既定値を変更し、クライアントで有効になる試験的機能を試すことができます。
settings コマンドを実行すると、既定のテキスト エディターが起動します。 Windows では、既定のオプションとしてメモ帳が起動します。 Visual Studio Code のようなツールを使用することをお勧めします。
Note
「winget install Microsoft.VisualStudioCode
」と入力すると、Visual Studio Code をインストールできます
winget settings コマンドを使用する
既定の JSON 編集ツールを起動します: winget settings
settings の初回起動時には、設定は指定されていません。 JSON ファイルの上部には、最新の試験的な機能と設定を確認できるリンクが表示されます。
下のコード スニペットは、これらの試験的な機能と設定の一部を有効にするまたは変更する場合の設定ファイルの例を示しています。
{
"$schema": "https://aka.ms/winget-settings.schema.json",
// For documentation on these settings, see: https://aka.ms/winget-settings
"experimentalFeatures": {
"dependencies": true,
"directMSI": false,
"zipInstall": false,
},
"visual": {
"progressBar": "rainbow"
},
"source": {
"autoUpdateIntervalInMinutes": 5
},
}
設定ファイルのスキーマも定義されています。 そのため、JSON エディターで JSON スキーマがサポートされていれば、TAB を使用して設定と構文を検出できます。
注意
試験的な機能は、プレビュー ビルドでのみ使用できます。 プレビュー ビルドを取得する手順については、GitHub リポジトリを参照してください。
更新の設定
以下の設定は、Windows パッケージ マネージャーの 1.0 リリースで利用できます。
source の設定
source
の設定では、WinGet ソースに対する構成を操作します。
"source": {
"autoUpdateIntervalInMinutes": 3
},
autoUpdateIntervalInMinutes
正の整数で、更新の間隔 (分単位) を表します。 更新プログラムの確認は、ソースが使用されている場合にのみ行われます。 0 を指定すると、ソースに対する更新のチェックは無効になります。 その他の値はすべて無効です。
- 無効: 0
- 既定値は5
ソースを手動で更新するには、winget source update
を使用します。
visual の設定
visual
の設定では、WinGet によって表示されるビジュアル要素を操作します
"visual": {
"progressBar": "accent"
},
progressBar
引数で指定されていない場合に、WinGet に表示される進行状況バーの色。
- accent (既定値)
- retro
- rainbow
installBehavior の設定
installBehavior
の設定は、パッケージのインストールとアップグレード (該当する場合) の既定の動作に影響を与えます。
disableInstallNotes
disableInstallNotes
の動作は、インストールが正常に完了した後にインストール ノートが表示されるかどうかに影響します。 値を指定しない場合や値が無効な場合は、既定値 false
が使用されます。
"installBehavior": {
"disableInstallNotes": true
},
portablePackageUserRoot の設定
portablePackageUserRoot
の設定は、User
スコープの下でパッケージがインストールされる既定のルート ディレクトリに影響します。 この設定は、インストーラーの種類が portable
のパッケージにのみ適用されます。 値を指定しない場合や値が無効な場合は、既定値 %LOCALAPPDATA%/Microsoft/WinGet/Packages/
が使用されます。
注: この設定値は絶対パスである必要があります。
"installBehavior": {
"portablePackageUserRoot": "C:/Users/FooBar/Packages"
},
portablePackageMachineRoot の設定
portablePackageMachineRoot
の設定は、Machine
スコープの下でパッケージがインストールされる既定のルート ディレクトリに影響します。 この設定は、インストーラーの種類が portable
のパッケージにのみ適用されます。 値を指定しない場合や値が無効な場合は、既定値 %PROGRAMFILES%/WinGet/Packages/
が使用されます。
注: この設定値は絶対パスである必要があります。
"installBehavior": {
"portablePackageMachineRoot": "C:/Program Files/Packages/Portable"
},
preferences と requirements の設定
一部の設定は、preferences
と requirements
で複製されます。
preferences
の設定は、操作対象のオプションを選択する際の、使用可能な各種オプションの並び方に影響します。 たとえば、パッケージ インストールの既定のスコープは現在のユーザーですが、該当するユーザーがいない場合は、マシン レベルのインストーラーが選択されます。requirements
の設定によってオプションが絞り込まれると、結果として一覧が空になり、インストールが失敗する可能性があります。 前述の例で言うと、ユーザーのスコープ要件によって該当するインストーラーがなくなり、エラーが発生します。
コマンド ラインで引数が渡された場合は、そのコマンドが実行されている間、対応する requirement
設定が実質的にオーバーライドされます。
scope
scope
の動作は、パッケージのインストール対象として、現在のユーザーとマシン全体のどちらが選択されるかに影響します。 対応するパラメーターは --scope
で、同じ値 (user
または machine
) が使用されます。
"installBehavior": {
"preferences": {
"scope": "user"
}
},
locale
locale
の動作は、インストーラー ロケールに基づくインストーラーの選択に影響します。 対応するパラメーターは --locale
で、bcp47 言語タグが使用されます。
"installBehavior": {
"preferences": {
"locale": [ "en-US", "fr-FR" ]
}
},
architectures
architectures
の動作は、パッケージのインストール時に選択されるアーキテクチャに影響します。 対応するパラメーターは --architecture
です。 システムと互換性のあるアーキテクチャのみを選択できることに注意してください。
"installBehavior": {
"preferences": {
"architectures": ["x64", "arm64"]
}
},
uninstallBehavior
uninstallBehavior
の設定は、パッケージのアンインストール (該当する場合) の既定の動作に影響を与えます。
purgePortablePackage
purgePortablePackage
の動作は、ポータブル パッケージをアンインストールする場合の既定の動作に影響します。 true
に設定すると、アンインストールによって portable
パッケージに関連するすべてのファイルとディレクトリが削除されます。 この設定は、インストーラーの種類が portable
のパッケージにのみ適用されます。 値を指定しない場合や値が無効な場合は、既定値 false
が使用されます。
"uninstallBehavior": {
"purgePortablePackage": true
},
telemetry の設定
telemetry
の設定は、winget によって ETW イベントが書き込まれるかどうかを制御します。これらのイベントは、Windows の既定のインストールで Microsoft に送信される可能性があります。
テレメトリの詳細と、主なプライバシー ステートメントを参照してください。
無効化 (disable)
"telemetry": {
"disable": true
},
telemetry.disable
を true に設定すると、一切のイベントがプログラムによって書き込まれなくなります。
ネットワーク設定
network
の設定は、winget で、パッケージとメタデータがネットワークを使ってどのように取得されるかに影響します。
downloader
downloader
の設定では、パッケージのダウンロード時に使用されるコードを制御します。 既定値は default
です。これは、Microsoft の決定に基づく任意のオプションとなります。
wininet
の場合は wininet
API が使用され、do
の場合はdo
サービスが使用されます。
"network": {
"downloader": "do"
}
logging の設定
logging
設定は、ログ ファイルの詳細のレベルを制御します。 --verbose-logs
は、この設定をオーバーライドし、詳細ログを常に作成します。
"logging": {
"level": "verbose"
}
レベル
設定できるログ記録レベルは次のとおりです。 値を指定しない場合や値が無効な場合は、既定値 info
が使用されます。
- verbose
- info
- warning
- error
- critical
試験的な新機能の有効化
どのような試験的機能が利用可能かを確認するには、 https://aka.ms/winget-settings にアクセスしてください。ここで、利用可能な試験的機能を確認できます。