bioconda (how to build recipe locally)

Bioconda is great. From their web site, “it is a channel for the conda package manager specializing in bioinformatics software”.
It provides over 7000 bioinformatics packages ready to use with conda install and over 850 contributors and 570 members who add, modify, update and maintain the recipes (Marc 2020).
4 years ago, I actively added tens of packages, including my software. What happened in those early days is that the dependencies of your software what not neccesseraly available on bioconda. Those days, with 7000 packages, most of the time everything is there. Yet, not always. This week, I needed a small dependency not on bioconda. So, I started to build the library and realised I forgot how to do that. Besides, lots of changes happened on the bioconda project. Anyway, I looked at the documentation and had to fight a little bit. At the end, this is very simple as shown here below.

Check out the bioconda website for contributors for up-to-date information.

First, create a fork in your github account following this link

git clone
cd bioconda-recipes
git remote add upstream

Time to create your own recipes and push it on the bioconda build system. To create a new recipes, look at what others have been doing. For software available on pypi, it is generally eased using e.g.

conda skeleton pypi newsoft

other recipes are explained here.

Time to check the recipes. How to test your recipes locally before hand ?

conda create --name bioconda bioconda-utils
source activate bioconda
bioconda-utils build recipes config.yml --packages newsoft

Finally, inform bioconda of the new recipes with a new commit/push

git checkout -b newsoft_recipe
git add recipes/newsoft/meta.yaml
git commit . -m "add new recipe for newsoft"
git push --set-upstream origin newsoft_recipe

Then, create the pull request and follow the instructions.

Please follow and like us:
This entry was posted in Software development and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published.