今回困ったこと
- PowerShellの
winget
コマンドに不具合があって動けない。 -
winget
コマンドをアップデートして対処しようにも、社内プロキシとセキュリティポリシーでMicrosoft Storeが使えない。
俺の顔も青くなった。
PowerSellにおけるパッケージ管理コマンドとしてwinget
がありますが、アプリのキッティングを実行しようとすると、下記の画像のようにシェルの文字色が青くなるだけで何も応答しないという不具合がありました。
PowerShellのアイコンもぐるぐる回転して、なんらかの処理がずっと走るようになります。ろくでもないことが起きてることは確かですね。
環境
- Windows11
- PowerShell 5系
なんでなん?
調べて回った結果、どうやらWindows11 22H2のリリースからwinget
のCDNの参照先が無効化される不具合が発生してた模様です。
バージョン1.2
系のみに見られる現象とのことで、アップデートすれば改善できるとのことです。
>winget -v
v1.2.10691
winget
のバージョンを確認してみたら、ちょうど不具合の対象になっていました。
またしてもプロキシが邪魔をする。
wingetコマンド自体はMicrosoft Storeでアップデートが可能ですが、残念ながらここは職場。セキュリティポリシーによってMicrosoft Storeが使えません。なんてこったい。
というわけでPowerShell上でMicrosoftのリポジトリから最新版を引っ張ってきてサイレントインストールを敢行します。
PowerShellのプロキシ認証は既に設定済みとします。設定方法はこちら。
作業手順
- リポジトリから最新版のwingetをダウンロード
上記リポジトリから最新安定版のMicrosoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
をダウンロードします。
今回はバージョン1.6です。
- PowerShellを管理者で起動
- ダウンロードしたmsibundleファイルのパスをコピー
-
Add-AppPackage
コマンドでインストール
Add-AppPackage -Path "msibundleのファイルパス"`
- 問題無くインストールできたかバージョン確認
winget -v
v1.6.3482
やりましたね。
あとはアプリのキッティングを行って想定通りの挙動をするか確認しましょう。