TY - GEN
T1 - Does Functional Package Management Enable Reproducible Builds at Scale? Yes.
AU - Malka, Julien
AU - Zacchiroli, Stefano
AU - Zimmermann, Théo
N1 - Publisher Copyright:
© 2025 IEEE.
PY - 2025/1/1
Y1 - 2025/1/1
N2 - Reproducible Builds (R-B) guarantee that rebuilding a software package from source leads to bitwise identical artifacts. R-B is a promising approach to increase the integrity of the software supply chain, when installing open source software built by third parties. Unfortunately, despite success stories like high build reproducibility levels in Debian packages, uncertainty remains among field experts on the scalability of R-B to very large package repositories. In this work, we perform the first large-scale study of bitwise reproducibility, in the context of the Nix functional package manager, rebuilding 709816 packages from historical snapshots of the nixpkgs repository, the largest cross-ecosystem open source software distribution, sampled in the period 2017-2023. We obtain very high bitwise reproducibility rates, between 69 and 91% with an upward trend, and even higher rebuildability rates, over 99%. We investigate unreproducibility causes, showing that about 15% of failures are due to embedded build dates. We release a novel dataset with all build statuses, logs, as well as full 'diffoscopes': recursive diffs of where unreproducible build artifacts differ.
AB - Reproducible Builds (R-B) guarantee that rebuilding a software package from source leads to bitwise identical artifacts. R-B is a promising approach to increase the integrity of the software supply chain, when installing open source software built by third parties. Unfortunately, despite success stories like high build reproducibility levels in Debian packages, uncertainty remains among field experts on the scalability of R-B to very large package repositories. In this work, we perform the first large-scale study of bitwise reproducibility, in the context of the Nix functional package manager, rebuilding 709816 packages from historical snapshots of the nixpkgs repository, the largest cross-ecosystem open source software distribution, sampled in the period 2017-2023. We obtain very high bitwise reproducibility rates, between 69 and 91% with an upward trend, and even higher rebuildability rates, over 99%. We investigate unreproducibility causes, showing that about 15% of failures are due to embedded build dates. We release a novel dataset with all build statuses, logs, as well as full 'diffoscopes': recursive diffs of where unreproducible build artifacts differ.
KW - functional package management
KW - reproducibility
KW - reproducible builds
KW - security
KW - software supply chain
UR - https://www.scopus.com/pages/publications/105009137034
U2 - 10.1109/MSR66628.2025.00115
DO - 10.1109/MSR66628.2025.00115
M3 - Conference contribution
AN - SCOPUS:105009137034
T3 - Proceedings - 2025 IEEE/ACM 22nd International Conference on Mining Software Repositories, MSR 2025
SP - 775
EP - 787
BT - Proceedings - 2025 IEEE/ACM 22nd International Conference on Mining Software Repositories, MSR 2025
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 22nd IEEE/ACM International Conference on Mining Software Repositories, MSR 2025
Y2 - 27 April 2025 through 29 April 2025
ER -