mamba を macOS に導入してみた備忘録です.
mamba とは?
元サイトは,多分,
だと思いますが,その説明によると,
conda package manager を C++ で再実装したもので,conda と全く同様に使えるけど,conda よりも動作が速い
らしい.Python と R のパッケージである Anaconda のデフォルトパッケージマネージャーである conda の代わりに使えるものって理解で良さそうです.
推奨の導入方法
前節の通り,mamba は conda の代わりに使えるみたいですが,実際に導入する場合は,Mambaforge Distribution
からはじめることが推奨のようです.
Mambaforge Distribution は conda-forge
チャンネル(conda パッケージのあつまり,Ubuntu で言う PPA のような感じですね)を組み込み済みのコレクションらしい.もちろん,他のチャンネルを組み込むこともできるみたいですが,Anaconda チャンネルは conda-forge と一般には非互換のため,混ぜちゃダメらしいです.
導入の実際
と言うことで,Mambaforge Distribution のインストール方法ですが,
$ curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh" $ bash Mambaforge-$(uname)-$(uname -m).sh
として,あとは,その指示に従っていけば良いだけです.ただし,私の場合は /Opt 以下にインストールしたかったので,少し改変して,
$ curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh" $ sudo bash Mambaforge-$(uname)-$(uname -m).sh
としました.
インストール時に聞かれる内容は以下の通り.
Welcome to Mambaforge 23.3.1-1 In order to continue the installation process, please review the license agreement. Please, press ENTER to continue >>> #ENTERを押すとライセンス同意書が表示される Do you accept the license terms? [yes|no] [no] >>> yes #ライセンスに同意するか否か Mambaforge will now be installed into this location: /Users/hyt/mambaforge - Press ENTER to confirm the location - Press CTRL-C to abort the installation - Or specify a different location below /Users/hyt/mambaforge] >>> /opt/mambaforge #mambaforge の導入場所 ... Do you wish the installer to initialize Mambaforge by running conda init? [yes|no] [no] >>> yes #Mambaforgeの初期化をするか否か .... If you'd prefer that conda's base environment not be activated on startup, set the auto_activate_base parameter to false: conda config --set auto_activate_base false Thank you for installing Mambaforge!
これでインストールは完了しましたが,最後のメッセージに書かれている通り,起動時に conda の基本環境がいきなり有効になるのを防ぎたい場合は,
$ conda config --set auto_activate_base false
とすれば良いようです.
ただし私の場合は /opt 以下に入れたせいなのか,それとも zsh 環境だからなのか,きちんと初期化されず,.bash_profile 以下に以下の内容が追加されました.
# >>> conda initialize >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="$('/opt/mambaforge/bin/conda' 'shell.bash' 'hook' 2> /dev/null)" if [ $? -eq 0 ]; then eval "$__conda_setup" else if [ -f "/opt/mambaforge/etc/profile.d/conda.sh" ]; then . "/opt/mambaforge/etc/profile.d/conda.sh" else export PATH="/opt/mambaforge/bin:$PATH" fi fi unset __conda_setup if [ -f "/opt/mambaforge/etc/profile.d/mamba.sh" ]; then . "/opt/mambaforge/etc/profile.d/mamba.sh" fi # <<< conda initialize <<<
仕方がないので,この内容をそのまま .zshrc に追加してシェルを起動すると,
(base) ~ $
のようなプロンプトに変化し,各種 mamba コマンドが使えるようになりました.あと,/opt/mambaforge 以下は個人的に使うだけですし,conda の base 環境にいきなりするのもちょっとどうかと思いましたので,
$ sudo chown -R hyt:admin /opt/mambaforge $ conda config --set auto_activate_base false
として,conda の base 環境にしたい場合は,毎回,
$ mamba activate
のようにすることにしました.また,なぜか ~/.conda の所有権が root になってしまっていて WARNING が出たので,
$ sudo chown -R hyt:staff ~/.conda
としました.
最後に,
$ mamba update mamba
として mamba を最新にアップデートして終了です.
以上!