⚒️
【管理ツール】mise-en-place 導入録
この記事について
多くのツールを一元的に管理できるmise-en-placeを導入してみたので備忘録として共有します。
私の環境では以下を各バージョン管理ツールを使用して使用していました。
タスクランナーに関しても基本的には Makefileを使用することが多かったのでこれを機に一元管理したいと考えています
言語 | バージョン管理 |
---|---|
node | nodebrew |
dart(Flutter) | FVM |
Rust | Rustup |
Ruby | rbenv |
... |
インストール方法
管理ツールの削除
※ brew 経由で削除しています
Nodebrew の削除
brew uninstall nodebrew
FVM(Flutter Version管理) の削除
fvm destroy
dart pub global deactivate fvm
brew uninstall fvm
brew untap leoafarias/fvm
rbenv の削除
brew uninstall rbenv ruby-build
rustup の削除
brew uninstall rustup rustup-init
brew install mise
今回はHomebrew 経由で入れていますが他にも導入方法があります。
## 過去の記事と変更している為注意
## Path を通す(zsh)
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc
導入確認
- バージョン確認
mise -v
_ __
____ ___ (_)_______ ___ ____ ____ / /___ _________
/ __ `__ \/ / ___/ _ \______/ _ \/ __ \______/ __ \/ / __ `/ ___/ _ \
/ / / / / / (__ ) __/_____/ __/ / / /_____/ /_/ / / /_/ / /__/ __/
/_/ /_/ /_/_/____/\___/ \___/_/ /_/ / .___/_/\__,_/\___/\___/
/_/ by @jdx
2025.4.11 macos-arm64 (2025-04-27)
- doctor実行
- No problems foundが表示されることを確認
mise doctor
...
env_vars:
MISE_SHELL=zsh
settings:
No problems found
各コマンド
mise 自体のアップデート
- brew 経由だと上記のコマンドは実行不可?
mise self-update
## mise ERROR mise is installed via a package manager, cannot update
## brew 経由
brew upgrade mise
利用可能なツール及びバージョンの確認
- 一覧取得
mise ls-remote --all
- 各ツールの取得は
mise ls-remote <言語/ツール>
で取得可能
## 各ツール取得
mise ls-remote ruby
mise ls-remote flutter
mise ls-remote node
ツールのインストール及び使用
mise install
コマンドも存在するが、有効化にはmise use
で対応可能?
mise use
mise unuse
コマンドで有効化・非有効化を行うことが可能
- グローバル環境
-
-g
オプションを付けることでグローバルへの適応が可能 -
~/.config/mise/config.toml
以下に設定値が反映されます
-
## 追加
mise use -g node@23.10.0
node -v
## v23.10.0
## 削除
mise unuse -g node@23.10.0
- リポジトリ環境
- リポジトリのルートで
mise use <ツール>@<バージョン>
を叩くとmise.toml
が作成されます
- リポジトリのルートで
## 追加
mise use flutter@3.29.3
flutter doctor
## Flutter (Channel stable, 3.29.3, on macOS 15.4.1 24E263 darwin-arm64, locale ja-JP)
インストール済みのツール確認
mise list
## Tool Version Source Requested
## flutter 3.29.3-stable ~/.config/mise/config.toml 3.29.3
## node 23.10.0 ~/.config/mise/config.toml 23.10.0
## ...
エラーが起きた箇所
-
ERROR Permission denied (os error 13)
が表示されました-
関連issue
- 私の環境では
rbenv
を使用していた事で 既に~/.local/state/
が存在していた事が原因の可能性が高い -
~/.local/state/
を削除し,miseを再インストールすることで 解消
- 私の環境では
-
関連issue
...
mise ERROR failed create_dir_all: ~/.local/state/mise/trusted-configs
mise ERROR Permission denied (os error 13)
mise ERROR Run with --verbose or MISE_VERBOSE=1 for more information
拡張機能
- VSCode/Cursor
- 便利な拡張機能のmise-vscodeが存在します
- 公式ドキュメント推奨
CI での活用
- CI での使用も想定されている為、Github Actions などでも使用可能
- Step が用意されていなくても容易にインストールできる
参考
Discussion