web-dev-qa-db-fra.com

Impossible d'exécuter l'activation de la source avec conda dans Fish-shell

Je suis conda_PR_545 , conda issues 4221 et ne fonctionne toujours pas sur Ubuntu.

Après avoir téléchargé conda.fish depuis ici , et le mv sur anaconda3/bin /.

Ajoutez "source /home/phejimlin/anaconda3/bin/conda.fish" à la fin de ~/.config/fish/config.fish.

conda activate spark_env
Traceback (most recent call last):
File "/home/phejimlin/anaconda3/bin/conda", line 6, in 
sys.exit(conda.cli.main())
File "/home/phejimlin/anaconda3/lib/python3.6/site-packages/conda/cli/main.py", line 161, in main
raise CommandNotFoundError(argv1, message)
TypeError: init() takes 2 positional arguments but 3 were given

ou

activate spark_env
Error: activate must be sourced. Run 'source activate envname'
instead of 'activate envname'.

Dois-je manquer quelque chose?

24
Jim

À partir du poisson 2.6.0 conda 4.3.27: les étapes suivantes peuvent changer comme le problème est résol

mettre à jour la configuration

Prenez note de l'emplacement de votre conda

conda info --root
/Users/mstreeter/anaconda    # this is my <PATH_TO_ROOT>

Ajouter une ligne à ~/.config/fish/config.fish

 source <PATH_TO_ROOT>/etc/fish/conf.d/conda.fish

convention de mise à jour

En règle générale, vous exécutez ce qui suit à partir de bash

source activate <environment>
source deactivate <environment>

Vous devez maintenant exécuter ce qui suit à partir de fish

conda activate <environment>
conda deactivate <environment>

problèmes

donc après avoir fait cela, je ne peux pas définir fish comme mon shell par défaut et le faire fonctionner correctement avec conda. Actuellement, je dois d'abord entrer mon Shell par défaut, et entrer fish et le Shell fonctionne comme prévu. Je le mettrai à jour après avoir découvert comment le faire fonctionner sans avoir à choisir explicitement fish chaque fois que je me connecte à mon terminal

45
Marc

Si vous suivez https://github.com/conda/conda/issues/2611 , les étapes sont (depuis le début):

[root@6903a8d80f9b ~]# fish
root@6903a8d80f9b ~# echo $FISH_VERSION 
2.4.0
root@6903a8d80f9b ~# bash Miniconda2-4.3.11-Linux-x86_64.sh -b -p /conda
root@6903a8d80f9b ~# source /conda/etc/fish/conf.d/conda.fish
root@6903a8d80f9b ~# conda activate root
root@6903a8d80f9b ~# conda create -yn fishtest                              (root) 
Fetching package metadata .........
Solving package specifications: 
Package plan for installation in environment /conda/envs/fishtest:

#
# To activate this environment, use:
# > source activate fishtest
#
# To deactivate this environment, use:
# > source deactivate fishtest
#

root@6903a8d80f9b ~# conda activate fishtest                                (root) 
root@6903a8d80f9b ~#                                                    (fishtest) 
root@6903a8d80f9b ~# conda deactivate fishtest                          (fishtest) 
28
Nehal J Wani

L'ajout du répertoire bin de conda à PATH n'est pas recommandé à partir de conda 4.4.0 https://github.com/conda/conda/blob/master/CHANGELOG.md#440-2017-12-2

Il vous suffit d'ajouter source <path-to-anaconda>/etc/fish/conf.d/conda.fish pour config.fish.

9