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
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Highly Reproducible R Environments with Nix

Zenodo (CERN European Organization for Nuclear Research)
Geochemistry and Geologic Mapping
article

Highly Reproducible R Environments with Nix

article en

Abstract

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.

Zenodo (CERN European Organization for Nuclear Research)
Industry, innovation and infrastructure
Openalex Percentile: Top 35%
Geochemistry and Geologic Mapping
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.