🔔

miseでnpm製cliツールを管理する

2024/09/29に公開

対象読者

対象読者は既に mise を使っている人です。そのため mise の基本的な機能の説明は割愛します。
mise を一言で説明すると、「複数の開発言語やツールのバージョンを一元管理できる cli ツール」です。[1]

npm パッケージを管理する

npm install -g zenn-cli でグローバルにインストールしていたパッケージを mise を使って管理することができます。
npm製のパッケージを管理する場合、以下のように設定します。

~/.config/mise/config.toml
[tools]
node = "22.9.0"
# 常に最新バージョンを使用
"npm:zenn-cli" = "latest"
# 特定のバージョンを使用
"npm:vite" = "5.4.8"

上記のように記述したあと、

mise install

でインストールできます。これで以下のようなコマンドを実行できます。

zenn preview
vite dev

おまけ

まだ experimental なのですが、Go 製のツールも管理できます。
実験的機能なので、設定ファイルに以下のように設定する必要があります。

~/.config/mise/config.toml
[tools]
go = "1.23.1"
# Vim, Neovim の起動時間を計測できる便利なツール
"go:github.com/rhysd/vim-startuptime" = "latest"

[settings]
# experimental な機能を有効にする
experimental = true

その他にも以下のようなバックエンドが使えます。

  • Cargo
  • Pipx
  • SMP
  • Ubi
  • Vfox

詳細な設定方法や他のバックエンドツールのサポート状況については、以下で確認できます。
Backends | mise-en-place

感想

aqua で管理できない cli ツールは、環境が変わるたびにコマンドを実行してインストールしていたのですが、mise のバックエンド機能のおかげで dotfiles に記述しておくだけでインストールできるようになりました。

参考資料

脚注
  1. もちろん言語のバージョン管理だけでなく、便利な機能がたくさんあります。 ↩︎

GitHubで編集を提案

Discussion