Building Python Applications with Nix

An overview of using nix to manage python development environments

Rebecca Skinner

6 minute read

Nix is a package general purpose package manager available for *nix systems, including Linux (including NixOS), *bsd, and MacOS. Nix provides several novel capabilities, specifically immutability and reproducability. A nix package defines exact versions of all of it’s dependencies, and a nix installation manages each individual application independently. In this post we’ll look at using Nix during the development process, comparing it to virtualenv and pip for developing a python…