6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

winget (Windows Package Manager) 本体をコマンドラインからインストール

Last updated at Posted at 2020-09-15

Microsoft 謹製のパッケージマネージャ winget が気になっていたのでインストールしてみました。
インストール時に(心情的に)引っかかったのでメモします。

2021/09/23 自動で最新版をインストールする方法に更新しました。

winget 公式のインストール方法

GitHub - microsoft/winget-cli: Windows Package Manager CLI (aka winget)
公式ページより、インストール方法は以下のいずれかです。

  1. Microsoft Store からダウンロード:Windows 10 Insider build が必要
  2. 自分でファイルをダウンロード:アップデートはマニュアル
  3. 自分でビルドする:アップデートは当然マニュアル

『1.』は Windows 10 自体がプレビュー版になってしまうので簡単にはおすすめできません。
『3.』は普通の人にはハードルが高すぎます。
簡単に試せるものが『2.』くらいしかありません。ブラウザでファイルをダウンロードしてインストールするだけなので、まだ敷居は低いかと思います。

はい。。。そもそもコマンドラインからのインストール方法がありません。
winget コマンドは CLI で使うもの、でも winget をインストールする方法は GUI で行ってくださないなんて、ちょっとした禅問答のよう。。。

コマンドラインでインストール

『2. 自分でファイルをダウンロード』、こちらの方法をコマンドラインでインストールできるようにしました。
こちらは上記で書いてある通り、手動アップデートになります。

自動で最新版(latest release)の実行ファイルを取得しますので、新規インストールもアップデートも下記コマンドで実行できるかと思います。
※ 2021/09/23 時点のインストール方法です。

PowerShell
Invoke-WebRequest -Uri https://github.com/microsoft/winget-cli/releases/latest/download/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle -OutFile winget.msixbundle -UseBasicParsing
Add-AppxPackage -Path winget.msixbundle
rm winget.msixbundle

もし winget のインストール時にエラーが発生したら、必要なランタイムが足りていないので追加でインストールしてください。
下記は x86 64bit 用のコマンドです。

Invoke-WebRequest -Uri https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx -OutFile vclibs.appx -UseBasicParsing
Add-AppxPackage -Path vclibs.appx
rm vclibs.appx

旧方法

バージョン指定したい場合は、こちらの対応どうぞ。
kkdd さんよりコメントで頂いているとおり、最新版はインストーラーの拡張子が変わっていますのでご注意ください。
※ 2020/09/15 時点のインストール方法です。

PowerShell

Invoke-WebRequest -Uri https://github.com/microsoft/winget-cli/releases/download/v.0.2.2521-preview/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.appxbundle -OutFile winget.appxbundle -UseBasicParsing
Add-AppxPackage -Path winget.appxbundle
rm winget.appxbundle


> #### 最新版のダウンロードへ変更方法

> 1. https://github.com/microsoft/winget-cli/releases/latest にアクセスします。
2. リストの中で拡張子が ~~`.appxbundle`~~ `.msixbundle` のリンクをコピーします。
3. コマンドライン1行目の `-Uri` の引数をコピーしたリンクに書き換えます。

### インストール確認方法

バージョン情報が表示されればOKです。

```powershell:PowerShell
winget -v
v1.0.11692

自分の感想

winget はコマンドラインベースのパッケージマネージャです。
アプリケーションをインストールするのに、GUI を使いたくない人が使うツールがコマンドラインベースのパッケージマネージャかと思います。
ところが、winget はコマンドラインでインストールする方法が公式ではサポートされていません。

winget はまだプレビュー版のため、コマンドラインからのインストールがサポートされていないものと思っています。
正式版の発表時には、コマンドラインから簡単にインストールできるようになっていてほしいです。

Microsoft に未だ思い届かず。。。

パッケージマネージャは Scoop をメイン、Chocolatey をサブに運用していますが、winget も少しずつ試してみようかと思います。

6
5
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?