Chocolateyで特定のパッケージを更新対象から除外する

Windows PC起動時に、Chocolateyでインストールしたパッケージを更新するため cup all -y を実行している。

特定のパッケージを更新したくないと相談されたので、除外する方法をメモ。

環境

Windows 10 Pro 64bit、Chocolatey v0.10.13で確認。

除外方法

upgrade 前に pin コマンドで固定する方法と、upgrade 時に --except オプションで除外する方法がある。

pinコマンド

chocolatey.org

choco pin add -n=${パッケージ名} で、パッケージを更新対象外にできる。

--version=${バージョン} でバージョン指定できるが、インストールしているバージョンと異なるバージョンを指定すると、以下のエラーが発生する。

Unable to find package named '${パッケージ名}' (version '${バージョン}') to pin. Please check to ensure it is installed.

バージョン指定は複数バージョンをインストールしているときに使用する模様、通常はバージョン不要。

更新対象外としたパッケージ一覧は choco pin list で確認可能。

更新対象に戻す場合、 choco pin remove -n=${パッケージ名}

exceptオプション

chocolatey.org

cup all -y --except"'${除外するパッケージ名},...'" で、指定したパッケージを更新対象外にできる。

どうでもいい話

毎回更新が updateupgrade か忘れて、 cup にしてしまう...

逆にアンインストールは cuninst ということを忘れて、 choco uninstall とフルでタイプしてしまう...