asdf互換の外部プラグインを明示的に使いたい
miseはツールごとにコアやaquaなど複数のバックエンドを内蔵しており、mise useでツール名を指定すると、レジストリに登録された優先順位に従って自動的にバックエンドが選ばれる。レジストリに登録されていないツールを使いたい場合や、既定のバックエンドではなくasdf互換の外部プラグインを明示的に使いたい場合は、mise pluginsでプラグインを管理する。
mise plugins installの基本
gitのURLを指定して、GitHub Actionsをローカルでシミュレートするツールactのasdf-act
プラグインをインストールする。
$ mise plugins install act https://github.com/gr1m0h/asdf-act.git
mise plugin:act clone https://github.com/gr1m0h/asdf-act.git
mise plugin:act ✓ https://github.com/gr1m0h/asdf-act.git#1fca84f
指定したGitリポジトリがcloneされ、プラグインとして登録される。後述のasdf:プレフィックス付きでバージョンを指定するだけでも、レジストリに登録済みのasdfプラグインは自動的にcloneされる。特定のフォークを使いたい場合や、ローカルでのプラグイン名を自分で決めたい場合に、この明示的なインストール手順が役立つ。
asdf:プレフィックスで外部プラグイン経由のバージョンを使う
プラグインをインストールしただけでは、mise use act@latestのようにツール名だけを指定すると、レジストリの優先順位に従って別のバックエンド(このケースではaqua)が使われてしまう場合がある。インストールした外部プラグインを明示的に使いたい場合は、asdf:プレフィックスを付ける。
$ mise use asdf:act@latest
mise asdf:act@0.2.89 [1/3] bin/install
mise asdf:act@0.2.89 ✓ installed
mise.tomlにもasdf:actのままバックエンドが明示されて記録される。
[tools]
"asdf:act" = "latest"
インストール済みプラグインを確認する
mise plugins lsで、インストール済みの外部プラグインを一覧できる。
$ mise plugins ls
act
--urlsを付けると、プラグインが参照しているGitリポジトリのURLも合わせて表示される。
$ mise plugins ls --urls
act https://github.com/gr1m0h/asdf-act.git HEAD 1fca84f
nodeやgoのようなコアバックエンドのツールは、既定では一覧に表示されない。コアバックエンドのツールも含めて確認したい場合は--coreを付ける。
プラグインを更新・削除する
プラグインのGitリポジトリを最新の状態に更新するにはmise plugins updateを使う。
$ mise plugins update act
mise plugin:act update git repo
mise plugin:act ✓ https://github.com/gr1m0h/asdf-act.git#1fca84f
不要になったプラグインはmise plugins uninstallで削除する。
$ mise plugins uninstall act
mise plugin:act uninstall
mise plugin:act remove ~/.local/share/mise/plugins/act
mise plugin:act ✓ uninstalled
