diff options
-rw-r--r-- | abcbs_2018.md | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/abcbs_2018.md b/abcbs_2018.md index 6572f22..92f3460 100644 --- a/abcbs_2018.md +++ b/abcbs_2018.md @@ -1,7 +1,8 @@ -We show how Nix, a cross-platform advanced package manager, can cleanly solve a number of reproducibility headaches in bioinformatics and computational biology. -Nix can easily create and manage isolated environments, and with our transparent and extremely lightweight extensions can also describe computational pipelines (workflows), manage their execution in HPC environments, produce containers (Docker or Singularity images) for execution elsewhere, and build in parallel across multiple machines (build farm). -Compared to (Bio)conda, Nix provides a significantly higher degree of reproducibility due to its strong isolation and declarative language as well as remote parallel building capabilities, though lacks the extensive number of bioinformatics packages. -We illustrate our techniques on a typical bioinformatics pipeline. -We show that the entire pipeline including the required software can be specified in a succinct manner and built in parallel either on a local machine directly or via a HPC cluster with a queuing system. -We demonstrate that conda can be used within Nix to leverage the Bioconda repository, with some loss of the reproducibility guarantees a pure Nix solution would entail. -Finally, we discuss how cloud resources can be used to construct a build farm and execute the pipeline. +We show how Nix, a cross-platform advanced package manager, cleanly solves a number of reproducibility headaches in bioinformatics and computational biology. +Nix can easily create and manage isolated environments, and with our transparent and lightweight extensions can also succinctly describe computational pipelines (workflows), manage their execution in HPC environments or across multiple machines, and produce portable containers (Docker or Singularity images). +We illustrate all our techniques on a typical bioinformatics pipeline. + +We compare our approach with the conda software suite. Nix lacks the extensive suite of bioinformatics packages available in Bioconda, but provides a significantly higher degree of reproducibility due to its strong isolation and declarative language. +Moreover, we demonstrate that conda can be used within Nix to leverage Bioconda packages—with some loss of the reproducibility guarantees that a pure Nix solution would entail. + + |