/boa

The fast conda package builder, based on mamba

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

boa header image

The Fast Conda and Mamba Package Builder

part of mamba-org
Package Manager mamba Package Server quetz Package Builder boa

boa, the fast build tool for conda packages

Note: boa is still a work-in-progress.

boa is a package builder for conda packages.
It largely re-uses the conda-build infrastructure, except for some parts. For example the 'solving stage' which, in Boa, is done using mamba, the fast conda-alternative. Learn more about mamba here.

We are also working towards a new "meta.yaml" format in the boa/cli/render.py source file. Read more about it here.
The new "meta.yaml" format is still a work-in-progress and might not work as expected.

The discussions about this new meta.yaml format take place here. We encourage you to participate.

The short-term goal for boa is to parse the new version spec, and produce a conda_build.MetaData class in Python that describes how to assemble the final package.

asciicast

We have these tools included with boa:

conda mambabuild my_recipe_folder

This is equivalent to running conda build my_recipe_folder but using mamba as a solver.

boa render my_recipe_folder

"Render" a recipe. (Note that you must use the non-final v2 syntax. Check the recipes folder for examples.)

boa build my_recipe_folder

Runs a "build" of the v2 recipe.

Dev Installation

Install the boa dependencies:

mamba install "conda-build>=3.20" colorama pip ruamel ruamel.yaml rich mamba jsonschema -c conda-forge

Now install boa:

pip install -e .

Documentation

The boa documentation can be found here.

License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license. See the LICENSE file for details.