Highly Reproducible R Environments with Nix
Scientific studies, particularly those in biology, require long computational chains to process primary data and extract findings. These experiments and subsequent processing steps require reproducibility to have confidence the findings are generalisable to the real world. As the complexity of the computational processing increases, so too does the difficulty of ensuring reproducibility of our software environments. The Nix project aims to provide highly reproducible computational environments and software through declarative and side-effect free specifications of build processes. Through these declarative specifications, a large number of software projects (>106k) have available to Nix users as packages (nixpkgs). I will explain this fundamental abstraction and show how it results in a high degree of reproducibility and compositionality between the build products. In particular, I will show how support in nixpkgs for R – a language commonly used for data science – includes all packages published on CRAN and BioConductor. This allows the construction of highly reproducible R environments that are easily deployable without the use of containerisation technologies such as Docker and apptainer.
Publication Details
- Journal
- Zenodo (CERN European Organization for Nuclear Research)
- Published
- 2025-09-18
- DOI
- https://doi.org/10.5281/zenodo.17140198
- Primary Topic
- Geochemistry and Geologic Mapping
- Type
- article
- Field-Weighted Citation Impact
- 0.00