Subject: bug#42920: conda 4.8.3 on guix cannot activate environments

From: Hugo Buddelmeijer <[email-masked]>
Date: Tue, 18 Aug 2020 21:08:10 +0200

Dear Ricardo et al.,

The conda 4.8.3 package on guix does not seem to work as expected.

Conda info:

hugo@alex ~$ which conda
/home/hugo/.guix-profile/bin/conda
hugo@alex ~$ realpath $(which conda)
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/bin/conda
hugo@alex ~$ conda -V
conda 4.8.3

Creating an environment works fine:

hugo@alex ~$ conda create -n testenv -y
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/hugo/.conda/envs/testenv

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate testenv
#
# To deactivate an active environment, use
#
#     $ conda deactivate

But activating it does not work properly:

hugo@alex ~$ conda activate testenv

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'.

Unfortunately, conda init does not work well, because it needs root access:

hugo@alex ~$ conda init bash --dry-run
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/condabin/conda
modified
 /gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/bin/conda
modified
 /gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/bin/conda-env
modified
 /gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/bin/activate
modified
 /gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/bin/deactivate
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/etc/profile.d/conda.sh
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/etc/fish/conf.d/conda.fish
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/shell/condabin/Conda.psm1
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/shell/condabin/conda-hook.ps1
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/lib/python3.8/site-packages/xontrib/conda.xsh
no change
/gnu/store/ihn8dbs84rmc3ai7r1vkvh4cya518wmx-conda-4.8.3/etc/profile.d/conda.csh
modified      /home/hugo/.bashrc

==> For changes to take effect, close and re-open your current shell. <==

The last change of the conda package seems to be 638ef1e81d8 from August 13.

This is my first week with guix, so I'm not even sure where to begin to
debug this.

FWIW, maybe it would be simpler to create a micromamba package than a conda
package:
https://github.com/TheSnakePit/mamba

Cheers,
Hugo