winget tips


Windows Package Manager Client (winget)

Windows Package Managerは、Windows 10/11 にアプリケーションをインストールするためのコマンド ラインツール(winget)と一連のサービスで構成される。ここでは、wingetコマンドに関する使い方を説明する。

How to Install winget

Windows 10 1809 (build 17763) 以降 or Windows 11で使用可能。
Microsoft Storeでwingetで検索して、インストール。ただし下記のようにアプリインストーラーという名前になっているので注意。

これにwingetが入っているとわからなかった私は、Microsoft Storeからインストールできるようになってからも、GitHubのRepoから最新版をダウンロードしてインストールしていた・・・

How to use winget

Search Packages

インストールできるアプリケーションを検索する

C:\>winget search Git
Name                             Id                                Version      Matched
---------------------------------------------------------------------------------------------------
Git                              Git.Git                           2.26.2
Logitech Harmony Remote          Logitech.Harmony                  1.0.1.308
GitHub Desktop                   GitHub.GitHubDesktop              2.5.0
GitHub CLI                       GitHub.cli                        0.8.0
Atom                             GitHub.Atom                       1.45.0
AdobeDigitalEditions             Adobe.AdobeDigitalEditions        4.5.11
MicrosoftGitCredentialManager... Microsoft.GitCredentialManager... 1.20.0
Git Large File Storage           GitHub.GitLFS                     2.11.0
Git Extensions                   GitExtensionsTeam.GitExtensions   3.3.1
MaxTo                            DigitalCreations.MaxTo            2.0.1
Gitter IM                        Gitlab.Gitter.IM                  4.1.0
GitKraken                        Axosoft.GitKraken                 7.0.0
TortoiseGit                      TortoiseGit.TortoiseGit           2.10.0.2
GitLFS                           Git.GitLFS                        2.11.0
NeoLoad                          Neotys.NeoLoad                    7.3          Moniker: neoloadgit
AppInstallerFileBuilder          Microsoft.AppInstallerFileBuilder 1.2020.211.0 Tag: GitHub
Sublime Merge                    SublimeHQ.SublimeMerge            1119         Tag: git
TortoiseSVN                      TortoiseSVN.TortoiseSVN           1.13.1       Tag: git

Show Package Information

アプリケーションの詳細情報を表示。-eオプションで完全一致のアプリケーションを表示。

C:\>winget show -e Git
Found Git [Git.Git]
Version: 2.26.2
Publisher: Git
Description: Git version control system.
Homepage: https://git-scm.com/
License: GNU General Public License, version 2
License Url: https://github.com/git-for-windows/git/blob/master/COPYING
Installer:
  SHA256: cdf76510979dace4d3f5368e2f55d4289c405e249399e7ed09049765489da6e8
  Download Url: https://github.com/git-for-windows/git/releases/download/v2.26.2.windows.1/Git-2.26.2-64-bit.exe
  Type: Inno

--versionsオプションでインストール可能なバージョンを表示。

C:\>winget show -e Git --versions
Found Git [Git.Git]
Version
--------
2.26.2
2.25.1
2.24.1.2

Install Package

アプリケーションをインストール。-vオプションをつけなければ、最新版がインストールされる。

winget install -e Git -v 2.25.1

Upgrade Package

upgradeの後にパッケージ名を指定する。なお、パッケージ名を省略するとアップグレード可能なパッケージの一覧が表示される。

winget upgrade -e "Windows Terminal"

Uninstall Package

uninstallの後にパッケージ名を指定する。なお、パッケージ名を省略するとUninstall可能なパッケージの一覧が表示される。

winget uninstall Node.js

Export & Import Package

インストールされているパッケージのリストをexportコマンドでファイルに出力し、出力したファイルに記載されているパッケージをimportコマンドでインストールできる。PCを新規にセットアップするようなときに役に立つ。

winget export -o packages.json
winget import -i packages.json

Update package list

利用可能なパッケージリストの更新。デフォルトで5分間隔でチェックするので、あえて実行する機会は無いかも。

winget source update

Settings

wingetの設定。まだ、設定できる項目は少しだけ。下記のコマンドを実行することで、settings.jsonファイルをエディタで開く。

winget settings

Progress barの変更

settings.jsonに下記の設定を入れると、wingetコマンド実行時に表示されるプログレスバーの見た目を変更できる。

settings.json
    "visual": {
        "progressBar": "rainbow" // accent(default)/retro/rainbow
    }

rainbowにするとこんな感じ。

Link