winget とは
Windows 10 用のパッケージ マネージャです。
# 中の人なわけでも、知り合いが作っているわけでもなく、Build での発表で知ったレベルです
何をもってして "パッケージ マネージャ" なのか (この辺で盛り上がってます) 、Chocolatey や Scoop との違いは、など分からないことばかりですが、試してみました。
導入方法
ここに書いてある通りで、winget
のインストール方法はいくつかあります。
- Microsoft Store から
App Installer
をインストール - Release ページから
App Installer
パッケージをダウンロード、手動インストール - ソースから
App Installer
をビルド
1 の Microsoft Store からのインストールは、下記のページから Microsoft Store を開いてインストールするだけですが、Windows 10 Insider Build を使うか、Preview flight ring
へのサイン アップが必要です。
今回は、2. のパッケージの手動インストールを試しました。
手動インストールに挑戦!
と言っても、Release ページからダウンロードしてきて、
パッケージをダブルクリックするだけです。
コマンドプロンプトから winget
が実行できると思います。
注意!
GitHub の Release にあるパッケージを使って、手動でパッケージを更新すると、今後 Microsoft Store からの自動更新が受けられなくなるそうです。
Note that installing this package will give you the WinGet client, but it will not enable automatic updates from the Microsoft Store.
なので、App Installer
のロールバック方法も書いておきます。
# 自分が試した範囲なので、自己責任でお試しください
まず PowerShell を管理者権限で開いて、下記コマンドを実行します。
Get-AppxPackage *Microsoft.DesktopAppInstaller* | remove-appxpackage -AllUsers
これで winget
もきれいさっぱりなくなっているはずです。
App Installer
もなくなっているので、必要な人は、改めて Microsoft Store より、リリース版の App Installer
を入れてください。
パッケージ管理
winget
でインストールできるアプリは、こっちのリポジトリで管理されています。
github.com
You are highly encouraged to submit manifests for your favorite application.
て書いてあるので、試しに Windows 用 Node.js バージョン管理アプリの Nodist を追加してみました。
microsoft/winget-pkgs
を fork するmanifests
に追加したいアプリに関するマニフェスト ファイルを追加する- 追加したマニフェスト ファイルを
winget validate
で検証する microsoft/winget-pkgs
に Pull Request を送る
翻訳前ですが、Microsoft Docs 上にもドキュメントがありました。
マニフェスト ファイルの作り方:
docs.microsoft.com登録方法:
docs.microsoft.com
出した Pull Request はこちら。 github.com マージされるでしょうか。
余談
ちなみに、最初は Deno を追加しようとしましたが、プレビュー版でサポートしているインストールは、 exe
, msi
msix
のみです。
winget ツールの現在のプレビューでは、次の種類のインストーラーがサポートされています。
- EXE
- MSIX
- MSI
なので、ps1
一発でインストールできる Deno は追加できませんでした。
# そもそも Chocoratey でも、Scoop でもインストールできるしね。
ps1
でのインストールも検討されているようです。
以上です。