だいたいColabで十分なので、ローカルに環境作りたくないのだけれど、たまに必要な時があってpipenv面倒と思って調べたら、pyenv + direnv + venvがよさそうだった。
前提
Pythonはインストール済みとする。
環境構築
公式通りにdirenvをインストールして設定する。 公式通りだが一応メモ。
direnv インストール
aptでできる。
sudo apt install direnv
.bashrcに追記する。
eval "$(direnv hook bash)"
面倒なのでbashは立ち上げなおしておく。
プロジェクト作成
mkdir py_project cd py_project python -m venv .venv direnv allow echo "source ./.venv/bin/activate" > .envrc echo "unset PS1" >> .envrc
これで、一応、グローバルな環境変数を汚さなくてよくなる。
cd ..
すればvenvはdeactivateされるし、
cd py_project
すればvenvは自動でactivateされる。
ただ、これだとpipでインストールものは構成管理ができない。。。 今回の構成ではなく、Poetryというのがあるらしいので、そちらを試すなどする必要がありそう。