Difference between revisions of "Mamba"
(Created page with "'''Mamba''' is a reimplementation of the <code>conda</code> package manager in C++. It was introduced along side [https://github.com/mamba-org/quetz quetz] and [https://github...") |
m (Add Python Category) |
||
| Line 34: | Line 34: | ||
[[Category:Software]] | [[Category:Software]] | ||
| + | [[Category:Python]] | ||
Latest revision as of 10:18, 18 September 2022
Mamba is a reimplementation of the conda package manager in C++. It was introduced along side quetz and boa as reimplementations of the Anaconda/conda ecosystem, focusing on performance and a community-driven open-source development.
Contents
Why use mamba instead of conda?
conda is written in pure Python and, as such, it is often quite slow, particularly when installing a package into an environment with many other packages installed. In fact, resolving package dependencies (ie. making sure that the package your installing A) has its required dependencies and B) no other package has it's required dependencies broken) is an NP hard problem.
That's where mamba comes in. It's written in C++ and is intercompatible with conda, but its a lot faster (by orders of magnitude). It's a drop in replacement for conda for dependency/installation/upgrade operations. If it can't do something conda can, it'll tell you.
More information and detail is presented in this announcement blog post.
What can't mamba do that conda can?
Almost nothing. mamba uses the same command-line argument parser as conda, so the actual format of input options is exactly the same.
What is apparent is that if a conda feature isn't implemented in mamba it'll output a nice error message saying it's not implemented and tell you what the appropriate conda command is. Example:
➜ mamba activate vtkpytools-dev
Use conda to activate / deactivate the environment.
$ conda activate vtkpytools-dev
Installing mamba
mamba is installed using conda ironically enough:
conda install mamba -c conda-forge
This will install mamba into whatever conda environment you're using.
Installing Packages using mamba
Using mamba to install packages is exactly the same as using conda. ie: mamba install scipy=0.13.2 == conda install scipy=0.13.2. See conda documentation for relevant commands.