I have come across a bug on conda, installed via guix, that does notseem to be present when conda is installed via the process athttps://conda.io/docs/install/quick.html#linux-miniconda-install The issue---------Conda (on guix) does not activate environments Command ran-----------source activate test-env Expected result---------------The envinment should be activated, and the prompt changes from`frederick@localhost:/tmp$` to `(test-guix-conda)frederick@localhost:/tmp$` Actual result-------------The terminal window is exited. Additional information----------------------This behaviour is not present on conda installed via the processpresented in the conda documentation. The environment(s) created by conda on guix are available on, and canbe activated by conda installed via the process in the condadocumentation. I ran `bash -c "source activate test-env"` and the following errormessage was displayed: /gnu/store/f2dr9xbimg93pljm7xgmqb4cm5bxy98r-conda-4.3.16/bin/.deactivate-real:line 59: return: can only `return' from a function or sourced script/gnu/store/f2dr9xbimg93pljm7xgmqb4cm5bxy98r-conda-4.3.16/bin/.deactivate-real:line 94: return: can only `return' from a function or sourced script I would appreciate any help that would help in resolving this issue.
1) Install conda into a profile: guix package --install=conda --profile=$HOME/guix_profiles/conda 2) Activate the profile: source $HOME/guix_profiles/conda/etc/profile 3) Create an environment with conda and install biopython conda create --name test-env biopython 4) Try to activate the environment (here's where it fails) source activate test-env
(name . Frederick Muriithi)(address . firstname.lastname@example.org)
Hello, Frederick Muriithi <email@example.com> writes:
Toggle quote (16 lines)> 1) Install conda into a profile:>> guix package --install=conda --profile=$HOME/guix_profiles/conda>> 2) Activate the profile:>> source $HOME/guix_profiles/conda/etc/profile>> 3) Create an environment with conda and install biopython>> conda create --name test-env biopython>> 4) Try to activate the environment (here's where it fails)>> source activate test-env
I had never used conda before, so I was a bit surprised that it sneekedthat into my ~/.bashrc:
Toggle diff (44 lines)diff --git a/bash/.bashrc b/bash/.bashrcindex d0635bc..169b2c8 100644--- a/bash/.bashrc+++ b/bash/.bashrc@@ -119,3 +119,19 @@ function up() cd "$dir" echo "info: now in $PWD [Git repo]" }++# >>> conda initialize >>>+# !! Contents within this block are managed by 'conda init' !!+__conda_setup="$('/gnu/store/pjkxdaryj97yffhjxql2q4wpzs70hpa3-conda-4.8.3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"+if [ $? -eq 0 ]; then+ eval "$__conda_setup"+else+ if [ -f "/gnu/store/pjkxdaryj97yffhjxql2q4wpzs70hpa3-conda-4.8.3/etc/profile.d/conda.sh" ]; then+ . "/gnu/store/pjkxdaryj97yffhjxql2q4wpzs70hpa3-conda-4.8.3/etc/profile.d/conda.sh"+ else+ export PATH="/gnu/store/pjkxdaryj97yffhjxql2q4wpzs70hpa3-conda-4.8.3/bin:$PATH"+ fi+fi+unset __conda_setup+# <<< conda initialize <<<+ and required the presence of the 'sudo' command to be happy. With that said, $ guix environment --pure --ad-hoc conda bash coreutils sudo (base) $ conda create --name test-env biopython Then the suggested: (base) $ conda activate test-env (test-env) $ So, it seems to work. Closing. Maxim