Skip to content

Instantly share code, notes, and snippets.

@denvernine
Last active January 30, 2024 07:24
Show Gist options
  • Save denvernine/c594ba1d4b8be18f42237ae603dc0898 to your computer and use it in GitHub Desktop.
Save denvernine/c594ba1d4b8be18f42237ae603dc0898 to your computer and use it in GitHub Desktop.
miseで始めるバージョン管理

miseで始めるバージョン管理

mise (ミーズ)は anyenvasdf などと同じバージョン管理ツールです。少し前はrtxと呼ばれていました。

インストール手順

ワンライナーを実行すればインストール完了です。

curl https://mise.jdx.dev/install.sh | sh

インストール後、miseのセットアップを行います。カレントシェルが変わるたびに実行が必要らしいので、 ~/.bashrc に追記する形で設定しておきます。

cat <<MISE >> ~/.bashrc
if command -v mise $>/dev/null; then
  . <(mise activate bash)
fi
MISE

つかいかた

mise help と公式ドキュメントがよくまとまっているので、詳細はそちらをみてください。……とするとあまりに寂しいので、筆者が実行する頻度が高いコマンドを載せておきます。

cat <<CONFIG > ~/.config/mise/config.toml
[tools]
python = {version='3', virtualenv='.venv'}
terraform = '1.7'
packer = '1'
ansible-base = '*'
CONFIG

mise upgrade

困ったときは

miseコマンドが実行できない/見つからない

実体は ~/.local/bin/ にあるので、 .bashrc などでPATHに追加する。

if [ -d "$HOME/.local/bin" ]; then
    PATH="$HOME/.local/bin:$PATH"
fi

Pythonがインストールできない

https://mise.jdx.dev/lang/python.html#requirements にあるように、python-buildを利用するらしいので、ビルドに必要なあれこれをインストールしてから再度Pythonのインストールを行う。

sudo apt update; sudo apt install build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment