Channels#
What is a "channel"?#
Channels are locations where conda packages are stored. A channel can be a public package repository, a private or internal package repository, or a local directory on your computer.
Conda packages are downloaded from channels,
which are URLs or channel names that point to directories containing conda
packages. The conda command searches a configured set of channels when
you install, update, or search for packages.
By default, packages are automatically downloaded and updated from the default channel, which may require a paid license, as described in the repository terms of service. You can modify which channels conda searches. For details, see how to modify your channel lists.
Common public channels#
Some commonly used public channels and multichannels include:
defaultsA built-in multichannel that includes Anaconda-hosted channels such as
main,r, andmsys2underrepo.anaconda.com.mainThe primary Anaconda-hosted channel under
repo.anaconda.com. It contains many commonly used packages distributed by Anaconda.conda-forgeA community-led channel with packages maintained by thousands of contributors. The conda-forge project provides a large collection of packages across many ecosystems.
biocondaA community channel focused on bioinformatics packages. The Bioconda project is commonly used together with
conda-forge.
You can browse public channels and search for packages on Anaconda.org.
Specifying channels when installing packages#
From the command line, use --channel to search a specific channel:
$ conda install scipy --channel conda-forge
You may specify multiple channels by passing the argument multiple times:
$ conda install scipy --channel conda-forge --channel bioconda
Priority decreases from left to right: the first argument has higher priority than the second.
Use --override-channels to search only the specified channel or
channels instead of any channels configured in .condarc. This also
ignores conda's default channels.
$ conda search scipy --channel conda-forge --override-channels
In .condarc, use the channels key to configure the list of
channels conda searches for packages.
Learn more about managing channels.
Local channels#
A local channel is a channel stored on your own computer or on a shared filesystem. Local channels are useful when you are building your own packages, testing packages before publishing them, or maintaining packages for an internal workflow.
Local channels use the same channel layout as remote channels. They contain
platform subdirectories such as linux-64, osx-64, win-64, and
noarch. Each subdirectory contains package files and repository metadata.
To use a local channel, provide a file:// URL or path to the channel
root. For example:
$ conda search --channel file:///opt/conda-channel --override-channels
For a step-by-step example of creating and indexing a local channel, see creating custom channels.