Nix is the ultimate DevOps toolkit

submited by
Style Pass
2021-11-29 12:00:10

At Channable we use Nix to build and deploy our services and to manage our development environments. This was not always the case: in the past we used a combination of ecosystem-specific tools and custom scripts to glue them together. Consolidating everything with Nix has helped us standardize development and deployment workflows, eliminate “works on my machine”-problems, and avoid unnecessary rebuilds. In this post we want to share what problems we encountered before adopting Nix, how Nix solves those, and how we gradually introduced Nix into our workflows.

About 1.5 years ago we decided to gradually adopt Nix. First only for development environments and CI, later also for deploys and production use. Up until then we had used a variety of tools to build, package, and deploy our software:

For building APT packages we used a variety of make, docker, and a home-grown build tool called channabuild. This worked well enough for a while, but our list of build requirements kept growing and we quickly discovered that we did not have the time to build and maintain a high-quality build system.1 This is why we decided to give Nix a try.

Leave a Comment