Bioconda
Date Published

Bioconda is a large, community-maintained distribution of bioinformatics software built on top of the Conda package manager. It provides recipes that are converted into binary conda packages and automatically into Docker/BioContainer images, enabling researchers to install and run tools with a single command. The project focuses on Linux (x86_64 and aarch64/ARM64) and macOS (x86_64 and ARM64) platforms and hosts thousands of packages that cover common genomics, transcriptomics, proteomics and general bioinformatics workflows. The channel depends heavily on the conda-forge ecosystem and on Anaconda.org for package hosting, and the community includes well over a thousand contributors who add, update and maintain recipes. The core capability of Bioconda is its recipe-driven build pipeline. Contributors add or modify a small set of files (a meta.yaml and optionally build/test scripts) in the bioconda-recipes GitHub repository; each pull request triggers automated builds and tests on CI (CircleCI, Azure Pipelines and GitHub Actions) orchestrated by bioconda-utils. Passing builds are merged to master and the resulting conda packages are uploaded to the Bioconda channel on anaconda.org. Every uploaded conda package also has a corresponding container image pushed to the BioContainers registry (Quay.io), so the same software can be consumed via conda or container runtimes. The project maintains policies for pinning dependencies and ABI compatibility; build numbers and hashes track packaging changes so older package versions remain available when appropriate. For users, Bioconda is designed to be quick to adopt and easy to integrate into reproducible workflows. The recommended one-time setup configures Conda channels and strict channel priority to avoid dependency resolution issues: conda config --add channels bioconda; conda config --add channels conda-forge; conda config --set channel_priority strict. If you prefer not to alter your condarc, the same configuration can be supplied on the command line (for example: conda create -n myenv samtools bwa --channel conda-forge --channel bioconda --strict-channel-priority). To speed installs, Bioconda documentation recommends using a faster solver like mamba, keeping the base environment small, creating environments from a single YAML file, and pinning versions where appropriate. Because every Bioconda package is also provided as a Docker/BioContainer, you can pull container images directly when a containerized runtime is preferred. For developers and package authors, Bioconda offers a clear contribution workflow and a supportive review process. Recipes declare metadata, sources and dependencies; tests run automatically on PRs and the community — including automated bots that watch upstream sources (CRAN, PyPI, GitHub releases) — helps maintain and update packages. Some packaging cases require special handling: for example, Bioconductor data packages historically used post-link scripts to download large data files at installation time; changes in upstream servers required rebuilds that allow redirects for reliable downloads. The project also coordinates pinning with conda-forge to ensure packages built across the ecosystem are compatible; pins and build configuration are centrally managed, and contributors are encouraged to consult developer docs for compiler and build-section best practices. Bioconda currently builds packages for Python 3.8–3.12 while older Python builds remain in the channel but are not actively produced for new recipes. Bioconda integrates tightly with the broader open-source CI and container ecosystem: builds and tests run on public CI systems, packages are stored on Anaconda’s platform, containers are published to BioContainers/Quay, and community activity happens on GitHub. The project is sustained by academic and cloud infrastructure support (Anaconda, GitHub Actions, AWS, etc.) and by its contributor community. Important limitations: Bioconda does not support Windows and is targeted at Unix-like environments; users who need containerized Windows workflows should rely on other mechanisms. For citation and academic usage, Bioconda asks users to cite its Nature Biotechnology paper and to follow community guidelines when contributing or packaging software.