• Stars
    star
    5,988
  • Rank 6,394 (Top 0.2 %)
  • Language
    Python
  • License
    Other
  • Created over 11 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A system-level, binary package and environment manager running on all major operating systems and platforms.

Conda Logo

Tests (GitHub Actions) Codecov Status CodSpeed Performance Benchmarks latest release version

Conda is a cross-platform, language-agnostic binary package manager. It is the package manager used by Anaconda installations, but it may be used for other systems as well. Conda makes environments first-class citizens, making it easy to create independent environments even for C libraries. Conda is written entirely in Python, and is BSD licensed open source.

Conda is enhanced by organizations, tools, and repositories created and managed by the amazing members of the conda community. Some of them can be found here.

Installation

Conda is a part of the Anaconda Distribution. Use Miniconda to bootstrap a minimal installation that only includes conda and its dependencies.

Updating conda

To update conda to the newest version, use the following command:

$ conda update -n base conda

Tip

It is possible that conda update does not install the newest version if the existing conda version is far behind the current release. In this case, updating needs to be done in stages.

For example, to update from conda 4.12 to conda 23.10.0, conda 22.11.1 needs to be installed first:

$ conda install -n base conda=22.11.1
$ conda update conda

Getting Started

If you install the Anaconda Distribution, you will already have hundreds of packages installed. You can see what packages are installed by running:

$ conda list

to see all the packages that are available, use:

$ conda search

and to install a package, use

$ conda install <package-name>

The real power of conda comes from its ability to manage environments. In conda, an environment can be thought of as a completely separate installation. Conda installs packages into environments efficiently using hard links by default when it is possible, so environments are space efficient, and take seconds to create.

The default environment, which conda itself is installed into, is called base. To create another environment, use the conda create command. For instance, to create an environment with PyTorch, you would run:

$ conda create --name ml-project pytorch

This creates an environment called ml-project with the latest version of PyTorch, and its dependencies.

We can now activate this environment:

$ conda activate ml-project

This puts the bin directory of the ml-project environment in the front of the PATH, and sets it as the default environment for all subsequent conda commands.

To go back to the base environment, use:

$ conda deactivate

Building Your Own Packages

You can easily build your own packages for conda, and upload them to anaconda.org, a free service for hosting packages for conda, as well as other package managers. To build a package, create a recipe. Package building documentation is available here. See AnacondaRecipes for the recipes that make up the Anaconda Distribution and defaults channel. Conda-forge and Bioconda are community-driven conda-based distributions.

To upload to anaconda.org, create an account. Then, install the anaconda-client and login:

$ conda install anaconda-client
$ anaconda login

Then, after you build your recipe:

$ conda build <recipe-dir>

you will be prompted to upload to anaconda.org.

To add your anaconda.org channel, or other's channels, to conda so that conda install will find and install their packages, run:

$ conda config --add channels https://conda.anaconda.org/username

(replacing username with the username of the person whose channel you want to add).

Getting Help

Contributing

open in gitpod for one-click development

Contributions to conda are welcome. See the contributing documentation for instructions on setting up a development environment.

More Repositories

1

conda-pack

Package conda environments for redistribution
Python
474
star
2

constructor

tool for creating installers from conda packages
Python
433
star
3

conda-lock

Lightweight lockfile for conda environments
Python
422
star
4

conda-docs

Conda documentation
362
star
5

conda-build

Commands and tools for building conda packages
Python
359
star
6

grayskull

Grayskull πŸ’€ - Recipe generator for Conda
Python
284
star
7

pycosat

Python bindings to picosat (a SAT solver)
C
180
star
8

conda-libmamba-solver

The libmamba based solver for conda.
Python
165
star
9

cookiecutter-conda-python

A cookiecutter template for conda packages using Python
Python
99
star
10

menuinst

Cross platform menu item installation
Python
30
star
11

conda-package-handling

Create and extract conda packages of various formats
Python
25
star
12

conda-verify

Verify conda recipes and packages
Python
17
star
13

conda-prefix-replacement

CPR resuscitates packages in new locations
Python
9
star
14

infrastructure

A repo to report issues and have discussions about the conda infrastructure
Python
9
star
15

schemas

Conda file formats and schemas
Python
9
star
16

conda-plugin-template

Python
7
star
17

conda-index

conda index, formerly part of conda-build
Python
7
star
18

conda-content-trust

Signing and verification tools for conda
Python
6
star
19

conda-package-streaming

An efficient library to read from new and old format .conda and .tar.bz2 conda packages.
Python
6
star
20

conda-benchmarks

Benchmarking the conda project
Python
4
star
21

issue-tracker

A visualization of the issue count of conda org repositories over time.
Python
2
star
22

conda_build_test_recipe

This repo is used for testing conda-build
Python
2
star
23

actions

A collection of custom GitHub Actions for the conda org.
Python
1
star
24

test-cla

1
star
25

communications

Repo to organize conda communications work
1
star
26

conda-standalone

A standalone conda executable built with PyInstaller.
Python
1
star