# Mamba — Fast Cross-Platform Package Manager > A drop-in conda replacement written in C++ that resolves environments in seconds instead of minutes. ## Install Save as a script file and run: # Mamba — Fast Cross-Platform Package Manager ## Quick Use ```bash # install micromamba (standalone, no base env needed): curl -Ls https://micro.mamba.pm/install.sh | bash # create an environment: micromamba create -n myenv python=3.12 numpy pandas -c conda-forge micromamba activate myenv ``` ## Introduction Mamba is a reimplementation of the conda package manager in C++ using the libsolv dependency solver. It provides the same CLI interface and channel compatibility as conda while delivering 10-50x faster environment resolution and parallel package downloads. ## What Mamba Does - Resolves package dependencies using the SAT-based libsolv library for near-instant solves - Downloads packages in parallel with multi-threaded HTTP fetches - Creates, updates, and removes conda-compatible environments - Reads environment.yml and conda-lock files for reproducible setups - Ships as micromamba — a statically linked single binary with no Python dependency ## Architecture Overview Mamba replaces conda's Python solver with libsolv, a C library originally built for RPM/APT that uses Boolean satisfiability to resolve dependencies. Package metadata is fetched and cached in a binary repodata format for fast reloads. Downloads use libcurl with connection pooling and parallel transfers. micromamba embeds the entire stack in one static binary, eliminating the need for a base conda installation. ## Self-Hosting & Configuration - Install micromamba via the official shell script or Homebrew - Use `micromamba create -n env -c conda-forge` to create environments - Configure default channels and settings in `~/.mambarc` or `~/.condarc` - Export environments with `micromamba env export` for reproducibility - Integrates with conda-lock for deterministic cross-platform lockfiles ## Key Features - 10-50x faster dependency resolution than conda - Parallel multi-threaded package downloads - Full conda compatibility — same channels, same package format - micromamba: single static binary, no Python runtime needed - Supports environment.yml, conda-lock, and explicit spec files ## Comparison with Similar Tools - **conda** — the original; same ecosystem but significantly slower solver and serial downloads - **uv** — ultra-fast pip replacement for PyPI packages; does not support conda channels - **pixi** — Rust-based conda-compatible manager with project-level lockfiles and task runner - **poetry** — Python dependency manager for PyPI; no support for conda-forge or non-Python packages - **Spack** — HPC-focused package manager that builds from source; different target audience ## FAQ **Q: Is mamba a full replacement for conda?** A: Yes. Mamba and micromamba implement the same CLI commands and read the same configuration files. You can switch without changing workflows. **Q: What is micromamba?** A: A standalone statically linked binary that provides the mamba CLI without requiring a base conda installation or Python interpreter. **Q: Does mamba work with conda-forge?** A: Yes. It uses the same channel infrastructure and repodata format as conda. **Q: Can I use mamba in CI/CD pipelines?** A: Yes. micromamba is ideal for CI because it installs in seconds and has no bootstrapping dependency. ## Sources - https://github.com/mamba-org/mamba - https://mamba.readthedocs.io --- Source: https://tokrepo.com/en/workflows/aac1a89a-4211-11f1-9bc6-00163e2b0d79 Author: Script Depot