WSLからのboxマウント
できないと思ってたら、普通にできる模様。
wsl起動時にboxが自動マウントされるように設定する (zenn.dev)
仮想環境の設定
Mambaforgeをインストールして、仮想環境を作ってactivateしたらbaseのパスがみえなくなっていた。(Condaの場合もそうだったっけ?)
そこで、以下のようにした。
mkdir -p /home/[ユーザ名]/mambaforge/envs/[仮想環境名]/etc/conda/activate.d/add_base_path.sh
emacs -nw /home/[ユーザ名]/mambaforge/envs/[仮想環境名]/etc/conda/activate.d/add_base_path.sh
#!/usr/bin/sh
export PATH=/home/[ユーザ名]/mambaforge/bin:$PATH
パスが通った。
mambaのインストール
condaからのインストールは非推奨らしい...
Existing conda install (not recommended)
Mamba Installation — documentation
とな…
GitHub - conda-forge/miniforge: A conda-forge distribution.
にあるとおりMambaforgeをインストールしたら使えるようになった。
やっぱり快適...
Condaパッケージの作成(meta.yamlの作成)
sourceでは、ソースの置き場所をいろいろな方法で指定できる。
Defining metadata (meta.yaml) — conda-build 3.23.0+3.g32ac010d.dirty documentation
GitHubでの置き場所を指定したい場合はgit_urlを使うことになるけど、認証方法が変わったのでそれに従う必要がある。
アクセストークンを発行して、それを使ってURLを作成すればOK。
source:
git_url: https://[アクセストークン]@github.com/XXXX/YYYY.git
アクセストークンの作り方は以下等を参照。
GitHubのAccess token認証方法とは?Password認証の廃止 | ポテパンスタイル (potepan.com)
Githubでアクセストークンを使う - GitHub - [SMART] (rfs.jp)
Fine-grained personal access tokens [Beta]を使ったけどうまくいった。
Condaパッケージの作成(build.shの作成)
Condaパッケージの作成(mambaの利用)
Condaパッケージの作成に悪戦苦闘...
mambaを導入することでなんとかなったのでメモ。
【失敗】
- 依存するパッケージが複数あるような独自パッケージを作成しようとしたところ、conda buildが終わらなくなってしまった。
- Anacondaを全削除してインストールしなおしたところ、conda buildは最後まで動き、パッケージは作れた。
- ただし、.condarcからchannel以外の記述を削除(channel_priority等の記述を削除)する必要があった。なぜだろう...
- しかしながら、出来上がったパッケージがうまくインストールできない...
- Anacondaにアップロードして、conda install -c XXXX YYYYとしても、依存関係解決が永遠に終わらない。
※XXXXは独自のチャンネル、YYYYはパッケージ名
- tarボールをインストールしても依存するパッケージは自動的にインストールはされない。(conda install YYYY.tar.bz2では、ダメ。)
- Anacondaにアップロードして、conda install -c XXXX YYYYとしても、依存関係解決が永遠に終わらない。
【成功:mambaによるパッケージの作成】
- Anacondaの全削除、再インストール、アップデート(conda update --all)
- mambaのインストール
$ conda install -c conda-forge mamba
- Condaパッケージの作成
$ mamba build [meta.yaml, build.shが置かれているディレクトリ名]
- Condaパッケージのアップロード
$ anaconda upload /home/[ユーザ名]/anaconda3/conda-build/linux-64/YYYY.tar.bz2
【成功:mambaによるパッケージのインストール】
※ここから別マシン
- Anacondaの全削除、再インストール、アップデート(conda update --all)
- mambaのインストール
- mambaによるパッケージのインストール
- まず、素朴にコマンドを打つと、依存関係を解決できないとエラーメッセージ。
$ mamba install -c XXXX YYYY
~メッセージ省略~
Encountered problems while solving: - package libgrpc-1.49.1-h05bd8bd_1 requires openssl >=1.1.1q,<1.1.2a, but none of the providers can be installed - エラーメッセージ中に、適合するライブラリのバージョンが表示されていたので、そのバージョンで仮想環境を構築。
$ conda create -n [仮想環境名] openssl=1.1.1q
$ conda activate [仮想環境名] - mambaでパッケージのインストール
$ mamba install -c XXXX YYYY
- 成功!
- まず、素朴にコマンドを打つと、依存関係を解決できないとエラーメッセージ。