Aktifkan lingkungan conda di pintasan desktop Ubuntu
Saya memiliki pintasan desktop yang memiliki Execbaris berikut :
Exec=conda activate my_env && my_command
Namun, pintasan ini tidak diluncurkan. Untuk mencoba men-debug ini, saya menjalankan perintah yang sama di bash prompt tanpa .bashrc(karena .bashrctidak bersumber untuk pintasan desktop),
user@pc:~$ bash --norc bash-4.4$ conda activate my_env
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
Masalahnya adalah bahwa conda tidak mendeteksi bahwa itu sudah dijalankan. conda initmembuat entri di .bashrc:
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/user/anaconda/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then eval "$__conda_setup"
else
if [ -f "/home/user/anaconda/etc/profile.d/conda.sh" ]; then
. "/home/user/anaconda/etc/profile.d/conda.sh"
else
export PATH="/home/user/anaconda/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
Saya mencoba untuk menyalin entri ini ke saya .profiledan masuk kembali, tetapi masih tidak berhasil. Mencoba masuk ke conda initdalam .profilehanya menduplikasi entri di atas .bashrc.
Apakah mungkin untuk mengaktifkan lingkungan conda dari pintasan desktop linux?
Jawaban
Dengan asumsi bahwa baris inisialisasi conda sudah ada di .bashrcfile seseorang, seseorang dapat menjalankan perintah di lingkungan yang diaktifkan dengan memulai sesi bash baru:
Exec=bash -c "source ~/.bashrc && conda activate matlab_env && matlab"