diff options
-rw-r--r-- | abcbs_2018.md | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/abcbs_2018.md b/abcbs_2018.md index 502fbeb..905957b 100644 --- a/abcbs_2018.md +++ b/abcbs_2018.md @@ -3,13 +3,15 @@ Justin Bedő, Leon Di Stefano, and Tony Papenfuss > A challenge for bioinformaticians is to make our computations reproducible — that is, easy to rerun, combine, share, and guaranteed to generate the same results. -> We show how Nix, a next generation cross-platform software deployment system, cleanly overcomes problems usually tackled with a combination of package managers (e.g. conda), containers (Docker, Singularity), and workflow engines (e.g. Toil, Ruffus). +> We show how Nix, a next generation cross-platform software deployment system, cleanly overcomes problems usually tackled with a combination of package managers (e.g., conda), containers (e.g., Docker, Singularity), and workflow engines (e.g., Toil, Ruffus). > > On its own Nix can be used as a package manager; it can also easily create isolated development environments and export portable containers to share with others. > We have created a number of transparent and lightweight extensions that enable Nix to succinctly specify bioinformatics analysis environments and pipelines locally, in HPC environments, or in the cloud. > -> Nix uses hash-based naming to ensure that what it builds is uniquely-specified, isolation and completeness to ensure that its build processes are deterministic, and a very simple programming language to ensure that the whole system is easy to manage. -> It has an extensive package collection which includes all of CRAN and Bioconductor, and while it lacks Bioconda’s coverage of standalone bioinformatics tools, we show that Bioconda packages can be called from within Nix expressions, with some attendant loss of reproducibility. +> Nix uses hash-based naming to ensure that what it builds is uniquely specified, isolation and completeness to ensure that its build processes are deterministic, and a simple programming language to ensure that the whole system is easy to manage. +> It has an extensive package collection, which includes all of CRAN and Bioconductor, and the conda package manager allowing access to Bioconda recipes. > Nix is well supported and general-purpose software that has been in development for over 10 years. > -> Here, we will demonstrate how Nix can be used to specify a typical bioinformatics pipeline, and show how it can be executed in whole or in part on an HPC queuing system, or in the cloud. +> We will demonstrate how Nix with our extensions can be used to succinctly specify a typical bioinformatics pipeline and contrast this against other dedicated bioinformatics pipeline languages. +> We then show how it can be executed in whole or in part on an HPC queuing system +> Finally, we show that the pipeline can also be executed using cloud resources. |