Microsoft公式のパッケージ管理システム登場

Linuxディストリビューションには、ディストリビューションごとに異なるパッケージ管理システムが導入されている。ユーザーから見ればパッケージ管理システムの違いがシステムの違いに見えるかもしれないくらいだ。

Linuxで簡単にソフトウエアの導入やアップデートができるのは、このパッケージ管理システムのおかげだ。Macにもいくつかパッケージ管理システムが存在している。現在最も代表的なものの一つが、「Homebrew」だ。Appleが提供する公式のパッケージ管理システムではないのだが、実質的にMacでのデファクトスタンダートになっている。

似たような状況はWindowsにも存在している。Microsoftはこれまで公式のパッケージ管理システムを提供してこなかった。このため、必要なユーザーはサードパーティ製のパッケージ管理システムなどで代替するしかなかっtあ。

しかし、今年の5月にMicrosoftが「Windows Package Manager 1.0」を公開したことで状況は大きく変わった。ついにMicrosoft公式のパッケージ管理システムが登場したのだ。まだインストール可能なソフトウエアの数は限定されているが、これから公式なインストール方法として広く使われていく可能性が強い。Linux管理者としてもWindowsのこの新しいパッケージ管理システムは使えるようになっておいたほうがよいのだ。

Wingetセットアップ

この新しいパッケージ管理システムは「Windows Package Manager」と呼ばれているが、操作に使われるコマンドが「winget」であるため、こちらの名前で呼ばれることも多い。名称も短く扱いやすいので、以降はWingnetという名称を使っていくことにする。

Wingetは、将来的にはWindows 10およびWindows 11でデフォルトで使えるコマンドになる予定だが、現時点では手動で有効化する必要がある。Wingetを使うには、まずMicrosoft Storeで「App Installer」を検索してインストールする。

Microsoft Storeから「App Installer」をインストール

次に、Wingetのコマンドをダウンロードしてインストールする。WingetはGitHub.comでホストされているので、ここから最新のリリース版をダウンロードしてきてインストールしよう。

microsoft/winget-cli: Windows Package Manager CLI (aka winget)


拡張子が「msixbundle」のものをダウンロード/インストールする。

拡張子が「msixbundle」のファイルをダウンロードしてインストール

インストールが完了すると、次のようにwingetコマンドが使用できるようになる。

wingetコマンドの使用を確認

Ubuntuでaptコマンドなどを使っているなら、wingetコマンドの使い方に悩むことはまずないと思う。使い方はほぼ同じだ。後発のパッケージ管理システムだけのことはあり、操作はとても簡単なレベルまで仕上げられている。

既存のアプリケーション管理と融合

winget listでインストール済みソフトウェアの一覧を確認することができる。

winget listの実行結果

この一覧は設定アプリケーションで「アプリ」→「アプリと機能」を選択した場合に表示されるインストール済みアプリケーション一覧と同じだ。

Wingetがサードパーティー製のパッケージ管理システムと大きく異なるのは、Microsoftが提供する公式のパッケージ管理システムだけあって、Windowsプラットフォームとうまく融合している点にる。既存のアプリケーション管理機能とちゃんと連携しているのだ。そのため、アプリケーションの導入もアンインストールもアップデートも、これまでよりも簡単になる。

Winget実行サンプル

Wingetの使用例を見てみよう。次のスクリーンショットはWingetから「Visual Studio Code」を検索した上で、インストール/アンインストールしている。

Visual Studio Codeのパッケージを検索し、インストールを実行

アプリケーションのインストールは従来のインストーラが起動するものが多い。例えばVisual Studio Codeをインストールするようにコマンドを実行すると、Visual Studio Codeの従来のインストーラが起動してインストールが実行される。

Visual Studio Codeのインストーラが起動してくる

インストールされたVisual Studio Codeを実行

インストールしたアプリケーションはいつでもアンインストールできる。

Visual Studio Codeをアンインストール

Wingetで便利になるのはアプリケーションのアップグレードだ。「winget upgrade」でアップグレード可能なアプリケーションの一覧が表示され、「winget upgrade —all」でそれらをまとめてアップグレードできる。

アップグレード可能なプリケーションをまとめてアップグレード

Winget自体の改善やアプリケーションの登録数など、まだまだこれから発展の余地はあるが、Microsoftが公式でこうしたパッケージ管理システムを開発/リリースしたことには大きな意味がある。Windowsの管理にかかる労力をこれまでよりも大きく減らせる可能性があるだろう。

結局、Windowsも使うならWingetも使おう

今回、このタイミングでWingetを取り上げたのには理由がある。Windows 10やWindows 11はLinuxのプラットフォームとしての重要度が増している。どの方法でLinuxを使うにせよ、Windowsそのものの操作もしなければならないという事実には代わりがないのだ。

Wingetが使えると、Windowsの操作を効率化することができる。結局Windowsも使うのであれば、効率の良い操作方法を覚えておきたい。連載では次回以降、WindowsでLinuxのツールを使う方法をいくつか取り上げるが、その最初の段階はWingetでアプリケーションのインストールを行うことになるので、先にWingetの説明をしておく必要もあった。

Wingetは、今後のWindowsにおいてデフォルトのソフトウエア導入方法として使われるケースが増えると予測される。まだ使ったことがないのであれば、このタイミングで取り組んでみるのは悪くないだろう。