TY - GEN
T1 - Reproducibility of Build Environments through Space and Time
AU - Malka, Julien
AU - Zacchiroli, Stefano
AU - Zimmermann, Théo
N1 - Publisher Copyright:
© 2024 Copyright held by the owner/author(s).
PY - 2024/5/24
Y1 - 2024/5/24
N2 - Modern software engineering builds up on the composability of software components, that rely on more and more direct and transitive dependencies to build their functionalities. This principle of reusability however makes it harder to reproduce projects build environments, even though reproducibility of build environments is essential for collaboration, maintenance and component lifetime. In this work, we argue that functional package managers provide the tooling to make build environments reproducible in space and time, and we produce a preliminary evaluation to justify this claim. Using historical data, we show that we are able to reproduce build environments of about 7 million Nix packages, and to rebuild 99.94% of the 14 thousand packages from a 6-year-old Nixpkgs revision.
AB - Modern software engineering builds up on the composability of software components, that rely on more and more direct and transitive dependencies to build their functionalities. This principle of reusability however makes it harder to reproduce projects build environments, even though reproducibility of build environments is essential for collaboration, maintenance and component lifetime. In this work, we argue that functional package managers provide the tooling to make build environments reproducible in space and time, and we produce a preliminary evaluation to justify this claim. Using historical data, we show that we are able to reproduce build environments of about 7 million Nix packages, and to rebuild 99.94% of the 14 thousand packages from a 6-year-old Nixpkgs revision.
UR - https://www.scopus.com/pages/publications/85195107720
U2 - 10.1145/3639476.3639767
DO - 10.1145/3639476.3639767
M3 - Conference contribution
AN - SCOPUS:85195107720
T3 - Proceedings - International Conference on Software Engineering
SP - 97
EP - 101
BT - Proceedings - 2024 ACM/IEEE 46th International Conference on Software Engineering
PB - IEEE Computer Society
T2 - 46th International Conference on Software Engineering: New Ideas and Emerging Results, ICSE-NIER 2024
Y2 - 14 April 2024 through 20 April 2024
ER -