Cargando…

Unifying package managers, workflow engines, and containers: Computational reproducibility with BioNix

MOTIVATION: A challenge for computational biologists is to make our analyses reproducible—i.e. to rerun, combine, and share, with the assurance that equivalent runs will generate identical results. Current best practice aims at this using a combination of package managers, workflow engines, and cont...

Descripción completa

Detalles Bibliográficos
Autores principales: Bedő, Justin, Di Stefano, Leon, Papenfuss, Anthony T
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Oxford University Press 2020
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7672450/
https://www.ncbi.nlm.nih.gov/pubmed/33205815
http://dx.doi.org/10.1093/gigascience/giaa121
Descripción
Sumario:MOTIVATION: A challenge for computational biologists is to make our analyses reproducible—i.e. to rerun, combine, and share, with the assurance that equivalent runs will generate identical results. Current best practice aims at this using a combination of package managers, workflow engines, and containers. RESULTS: We present BioNix, a lightweight library built on the Nix deployment system. BioNix manages software dependencies, computational environments, and workflow stages together using a single abstraction: pure functions. This lets users specify workflows in a clean, uniform way, with strong reproducibility guarantees. AVAILABILITY AND IMPLEMENTATION: BioNix is implemented in the Nix expression language and is released on GitHub under the 3-clause BSD license: https://github.com/PapenfussLab/bionix (biotools:BioNix) (BioNix, RRID:SCR_017662).