Conda: Difference between revisions

From Fluids Wiki
Jump to navigation Jump to search
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
Conda is a powerful package manager and environment manager for Python. It has a large collection of packages that often are newer than what comes with the operating system.
Conda is a powerful package and environment manager. It has a large collection of packages that often are newer than what comes with the operating system.


Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.
Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.
Line 39: Line 39:
conda install python scipy numpy imageio ipython matplotlib
conda install python scipy numpy imageio ipython matplotlib
conda install mkl gcc_linux-64
conda install mkl gcc_linux-64
# also pip works smoothly with the environment
# pip also works smoothly with the environment
pip install requests
pip install requests


Line 51: Line 51:
> /usr/bin/python
> /usr/bin/python


# After a fresh log in, do the following to access your environment:
# After a fresh log in, do the following to return to your environment:
source $HOME/miniconda3/etc/profile.d/conda.sh  # or conda.csh
source $HOME/miniconda3/etc/profile.d/conda.sh  # or conda.csh
conda activate myenvname
conda activate myenvname
</pre>
</pre>

Latest revision as of 14:05, 7 January 2022

Conda is a powerful package and environment manager. It has a large collection of packages that often are newer than what comes with the operating system.

Conda packages are neatly contained under your home directory in an environment. Adding or removing packages does not require root access or server administrative privilege.

These Conda environments are most helpful when a package cannot be installed globally because it could cause breakage for other users, or when you need multiple versions of a package.


Getting started

See the "Miniconda quick start guide" below, or the Conda guide: https://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html

We suggest miniconda over anaconda because it takes a minimalistic approach.

Miniconda quick start guide

Here is a short guide to get you started. Feel free to use a different tag than "mymath".

# Install
wget https://repo.anaconda.com/miniconda/Miniconda3-py39_4.10.3-Linux-x86_64.sh
chmod +x Miniconda3-py39_4.10.3-Linux-x86_64.sh
./Miniconda3-py39_4.10.3-Linux-x86_64.sh -b -s -p "$HOME/miniconda3"

# Run the following to have the conda command available on your shell
source $HOME/miniconda3/etc/profile.d/conda.sh
# if using tcsh or csh, run this instead: source $HOME/miniconda3/etc/profile.d/conda.csh

# HINT: you can add the source script to ~/.bashrc or ~/.cshrc so conda is available on next login.

# Create an environment. You can do this for each project or make a generic one to reuse
conda create --name mymath

# Activate the environment
conda activate mymath

# Examples installing packages into the conda environment:
# HINT: try and install everything in one line so conda can resolve dependencies.
conda install python scipy numpy imageio ipython matplotlib
conda install mkl gcc_linux-64
# pip also works smoothly with the environment
pip install requests

# Check we are using our personal python binary
which python
> /home/myuser/miniconda3/envs/mymath/bin/python

# Unlink the current conda environment and check which python is selected
conda deactivate
which python
> /usr/bin/python

# After a fresh log in, do the following to return to your environment:
source $HOME/miniconda3/etc/profile.d/conda.sh  # or conda.csh
conda activate myenvname