wingetでインストールしたアプリをアップグレードする
Windowsのパッケージ管理ツールであるWingetは、リリースされたばかりで普段brewなどを利用していると足りない機能がいくつかあります
その中でも、インストール済みのアプリをバージョンアップする機能がないため中々導入に踏み切れないこともあるのですが、実験的機能としてアップグレードが存在したので、それの使い方を説明します
wingetのバージョンとfeaturesの確認
バージョンの確認
> winget Windows Package Manager v0.2.3162 プレビュー Copyright (c) Microsoft Corporation. All rights reserved. WinGet コマンド ライン ユーティリティを使用すると、コマンド ラインからアプリケーションやその他のパッケージをインストールできます。 使用状況: winget [<コマンド>] [<オプション>] 使用できるコマンドは次のとおりです: install 指定されたパッケージをインストール show パッケージに関する情報の表示 source パッケージのソースの管理 search アプリの基本情報を見つけて表示 hash インストーラー ファイルをハッシュするヘルパー validate マニフェスト ファイルを検証 settings 設定を開く features 試験的な機能の状態を表示
実験的機能の確認
> winget features 次の試験的な機能が進行中です。 これらの設定は、設定ファイル ' winget settings ' を使用して構成できます。 機能 状態 プロパティ リンク ------------------------------------------------------------------------------- Command Sample 無効 experimentalCmd https://aka.ms/winget-settings Argument Sample 無効 experimentalArg https://aka.ms/winget-settings Microsoft Store Support 無効 experimentalMSStore https://aka.ms/winget-settings List Command 無効 list https://aka.ms/winget-settings Upgrade Command 無効 upgrade https://aka.ms/winget-settings
Upgrade Commandの有効化
winget settings
上記コマンドを実行すると、JSONに紐付けられたエディが開き、setting.jsonが表示されます
それを、以下のように修正すれば有効になります
{ "$schema": "https://aka.ms/winget-settings.schema.json", // For documentation on these settings, see: https://aka.ms/winget-settings // "source": { // "autoUpdateIntervalInMinutes": 5 // }, "experimentalFeatures": { "upgrade": true } }
確認
以下のコマンドで有効になっていることを確認する
> winget Windows Package Manager v0.2.3162 プレビュー Copyright (c) Microsoft Corporation. All rights reserved. WinGet コマンド ライン ユーティリティを使用すると、コマンド ラインからアプリケーションやその他のパッケージをインストールできます。 使用状況: winget [<コマンド>] [<オプション>] 使用できるコマンドは次のとおりです: install 指定されたパッケージをインストール show パッケージに関する情報の表示 source パッケージのソースの管理 search アプリの基本情報を見つけて表示 upgrade 指定されたパッケージを更新する hash インストーラー ファイルをハッシュするヘルパー validate マニフェスト ファイルを検証 settings 設定を開く features 試験的な機能の状態を表示
あとは、以下のように使う
winget upgrade --name python
これでアップデートできるはず