Reproducible Python projects using Nix
summary
Claims reproducible deterministic environments by using Nix to freeze OS and non‑Python dependencies and combine them with Python tooling. Demonstration builds a small plotting project using Python 3.12, creates a Nix shell that activates a virtualenv, installs a UV-generated requirements lock, and fixes numpy 1.26 by pinned nixpkgs 24.05. It works end‑to‑end — project plots reproduce across machines — while noting harder-to-learn Nix language, modest performance overhead, and limited Python community adoption.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 1:47Deterministic behavior in data science
- 5:06Reproducible experiments components
- 8:38Challenges in deterministic environments
- 10:25Solutions for environment consistency
- 15:01What is Nix and why use it
- 19:17Building project with Nix
- 24:57Running deterministically
- 25:41Nix drawbacks and limits
- 26:25Q&A
related talks
30mReproducible work environments for data scientists using Nix
24mA sack full of angry snakes: Taming your python dependencies with Nix
59mReproducable environments using nix
31mNix: Need an Ultra-Robust Dev Environment? Create an Immutable, Reproducible Env
43mPythonistas! Here’s the Perfect Development Environment! 2025 Edition (NixOS)
05mReproducible Build Environments with Nix
01h 03mNixOS
29mReproducible Scalable Workflows with Nix Papermill and Renku
