Justin Bedő1,2, Leon Di Stefano1,3, Anthony T Papenfuss1,4,5,6,7. 1. Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Pde., Parkville, VIC 3052, Australia. 2. School of Computing and Information Systems, University of Melbourne, Melbourne, VIC 3010, Australia. 3. Department of Biostatistics, Bloomberg School of Public Health, Johns Hopkins University, 615 N. Wolfe Street, Baltimore, Maryland, U.S.A. 4. Peter MacCallum Cancer Centre, 305 Grattan St., Melbourne, VIC 3000, Australia. 5. Department of Medical Biology, University of Melbourne, Melbourne, VIC 3010, Australia. 6. Sir Peter MacCallum Department of Oncology, University of Melbourne, Melbourne, VIC 3010, Australia. 7. School of Mathematics and Statistics, University of Melbourne, Melbourne, VIC 3010, Australia.
Abstract
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).
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).
Authors: Björn Grüning; John Chilton; Johannes Köster; Ryan Dale; Nicola Soranzo; Marius van den Beek; Jeremy Goecks; Rolf Backofen; Anton Nekrutenko; James Taylor Journal: Cell Syst Date: 2018-06-27 Impact factor: 10.304
Authors: John Vivian; Arjun Arkal Rao; Frank Austin Nothaft; Christopher Ketchum; Joel Armstrong; Adam Novak; Jacob Pfeil; Jake Narkizian; Alden D Deran; Audrey Musselman-Brown; Hannes Schmidt; Peter Amstutz; Brian Craft; Mary Goldman; Kate Rosenbloom; Melissa Cline; Brian O'Connor; Megan Hanna; Chet Birger; W James Kent; David A Patterson; Anthony D Joseph; Jingchun Zhu; Sasha Zaranek; Gad Getz; David Haussler; Benedict Paten Journal: Nat Biotechnol Date: 2017-04-11 Impact factor: 54.908
Authors: Enis Afgan; Dannon Baker; Bérénice Batut; Marius van den Beek; Dave Bouvier; Martin Cech; John Chilton; Dave Clements; Nate Coraor; Björn A Grüning; Aysam Guerler; Jennifer Hillman-Jackson; Saskia Hiltemann; Vahid Jalili; Helena Rasche; Nicola Soranzo; Jeremy Goecks; James Taylor; Anton Nekrutenko; Daniel Blankenberg Journal: Nucleic Acids Res Date: 2018-07-02 Impact factor: 16.971