TLDR: Install Anaconda NOT into your path, then do:
ln -s ~/anaconda3/bin/activate ~/bin/activate source activate conda create --name myenv conda activate myenv python
Long version: Install Anaconda. In the process you will be asked whether you want to edit your
.bashrc to setup Anaconda. Answer NO!!
You will still need to add the Anaconda executables into your path to make Anaconda work. The easiest solution that does not destroy your system is to link the
activate script somewhere in your path. I do this in a folder
~/bin which is always on my path:
ln -s ~/anaconda3/bin/activate ~/bin/activate
(base) will be prepended to your prompt and the Anaconda binaries will be in your paths. This should be more or less equivalent to what happens when you call
conda init, but without changes to your
.bashrc. You could now call
python and it should print “[GCC 7.3.0] :: Anaconda, Inc. on linux” instead of your default operating system python.
If you don’t do anything, you have the base environment activated. First thing you want to do, is create a new environment and activate it. Then you can install your few packages into it and work with this environment. The advantage is, that you can throw away this environment if anything goes wrong and start from scratch easily.
These are the most important commands for dealing with environments (in my examples
myenv is used as a name for the environment, but of course you can use a better one):
– List all available environments:
conda info --envs
– Create an environment:
conda create --name myenv
– Delete an environment with all contained packages:
conda remove --name myenv --all
– Activate an environment:
conda activate myenv
– Deactivate the current environment:
– List all packages installed in the current environment:
– Install a package into the current environment:
conda install packagename
– Delete a package from the current environment:
conda remove packagename
When you start python with
python from an activated environment, you will have all packages in this environment available to you.