Micromamba Installation#
micromamba
is a fully statically-linked, self-contained, executable.
This means that the base
environment is completely empty.
The configuration for micromamba
is slightly different, namely all environments and cache will be
created by default under the MAMBA_ROOT_PREFIX
environment variable.
There is also no pre-configured .condarc
/.mambarc
shipped with micromamba
(they are however still read if present).
Operating System package managers#
Homebrew#
On macOS, you can install micromamba
from Homebrew:
brew install micromamba
Mamba-org releases#
Automatic install#
Hint
This is the recommended way to install micromamba.
If you are using macOS, Linux, or Git Bash on Windows there is a simple way of installing micromamba
.
Simply execute the installation script in your preferred shell.
For Linux, macOS, or Git Bash on Windows install with:
"${SHELL}" <(curl -L micro.mamba.pm/install.sh)
On Windows Powershell, use
Invoke-Expression ((Invoke-WebRequest -Uri https://micro.mamba.pm/install.ps1).Content)
A specific micromamba release can be installed by setting the VERSION
environment variable.
The release versions contain a build number in addition to the micromamba version.
Micromamba releases can be found on Github: mamba-org/micromamba-releases
Self updates#
Once installed, micromamba
can be updated with
micromamba self-update
A explicit version can be specified with
micromamba self-update --version 1.4.6
Manual installation#
Warning
This is for advanced users.
Linux and macOS#
Download and unzip the executable (from the official conda-forge package):
Ensure that basic utilities are installed. We need curl
and tar
with support for bzip2
.
Also you need a glibc based system like Ubuntu, Fedora or Centos (Alpine Linux does not work natively).
The following magic URL always returns the latest available version of micromamba, and the bin/micromamba
part is automatically extracted using tar
.
# Linux Intel (x86_64):
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
# Linux ARM64:
curl -Ls https://micro.mamba.pm/api/micromamba/linux-aarch64/latest | tar -xvj bin/micromamba
# Linux Power:
curl -Ls https://micro.mamba.pm/api/micromamba/linux-ppc64le/latest | tar -xvj bin/micromamba
# macOS Intel (x86_64):
curl -Ls https://micro.mamba.pm/api/micromamba/osx-64/latest | tar -xvj bin/micromamba
# macOS Silicon/M1 (ARM64):
curl -Ls https://micro.mamba.pm/api/micromamba/osx-arm64/latest | tar -xvj bin/micromamba
After extraction is completed, we can use the micromamba binary.
If you want to quickly use micromamba in an ad-hoc usecase, you can run
export MAMBA_ROOT_PREFIX=/some/prefix # optional, defaults to ~/micromamba
eval "$(./bin/micromamba shell hook -s posix)"
This shell hook modifies your shell variables to include the micromamba command.
If you want to persist these changes, you can automatically write them to your .bashrc
(or .zshrc
) by running ./micromamba shell init ...
.
This also allows you to choose a custom MAMBA_ROOT_ENVIRONMENT, which is where the packages and repodata cache will live.
# Linux/bash:
./bin/micromamba shell init -s bash -r ~/micromamba # this writes to your .bashrc file
# sourcing the bashrc file incorporates the changes into the running session.
# better yet, restart your terminal!
source ~/.bashrc
# macOS/zsh:
./micromamba shell init -s zsh -r ~/micromamba
source ~/.zshrc
Now you can activate the base environment and install new packages, or create other environments.
micromamba activate # this activates the base environment
micromamba install python=3.6 jupyter -c conda-forge
# or
micromamba create -n env_name xtensor -c conda-forge
micromamba activate env_name
An exclusive conda-forge setup can be configured with:
micromamba config append channels conda-forge
micromamba config set channel_priority strict
Windows#
micromamba
also has Windows support! For Windows, we recommend powershell.PowerShell
.Invoke-Webrequest -URI https://micro.mamba.pm/api/micromamba/win-64/latest -OutFile micromamba.tar.bz2
tar xf micromamba.tar.bz2
MOVE -Force Library\bin\micromamba.exe micromamba.exe
.\micromamba.exe --help
# You can use e.g. $HOME\micromambaenv as your base prefix
$Env:MAMBA_ROOT_PREFIX="C:\Your\Root\Prefix"
# Invoke the hook
.\micromamba.exe shell hook -s powershell | Out-String | Invoke-Expression
# ... or initialize the shell
.\micromamba.exe shell init -s powershell -r C:\Your\Root\Prefix
# and use micromamba directly
micromamba create -f ./test/env_win.yaml -y
micromamba activate yourenv
Nightly builds#
You can download fully statically linked builds for each commit to main
on GitHub
(scroll to the bottom of the “Summary” page):
mamba-org/mamba
Docker images#
The mambaorg/micromamba docker
image can be used to run micromamba
without installing it:
docker run -it --rm mambaorg/micromamba:latest micromamba info
Build from source#
Note
These instructions do not work currently on Windows, which requires a more complex hybrid build. For up-to-date instructions on Windows and Unix, consult the scripts in the micromamba-feedstock.
To build from source, install the development dependencies, using a Conda compatible installer
(conda
/mamba
/micromamba
/rattler
/pixi
).
micromamba create -n mamba --file dev/environment-micromamba-static.yml
micromamba activate mamba
Use CMake from this environment to drive the build:
cmake -B build/ \
-G Ninja \
${CMAKE_ARGS} \
-D CMAKE_INSTALL_PREFIX="${CONDA_PREFIX}" \
-D CMAKE_BUILD_TYPE="Release" \
-D BUILD_LIBMAMBA=ON \
-D BUILD_STATIC=ON \
-D BUILD_MICROMAMBA=ON
cmake --build build/ --parallel
You will find the executable under “build/micromamba/micromamba”. The executable can be striped to remove its size:
strip "build/micromamba/micromamba"