Look for any podcast host, guest or anyone

Listen

Description

In this episode of Elixir Wizards, Dan Ivovich and Charles Suggs sit down with Norbert “NobbZ” Melzer to discuss how Nix enables reproducible builds, consistent development environments, and reliable deployments for Elixir projects.
Norbert shares his journey from Ruby to Elixir, contrasts Nix with NixOS, and walks us through flakes, nix-shell workflows, sandboxed builds, and rollback capabilities. Along the way, we cover real-world tips for managing Hex authentication, integrating Nix into CI/CD, wrapping Mix releases in Docker, and avoiding common pitfalls, such as flake performance traps.
Whether you’re spinning up your first dev shell or rolling out a production release on NixOS, you’ll come away with a clear, gradual adoption path and pointers to the community mentors and resources that can help you succeed.
Key topics discussed in this episode:
Reproducible, sandboxed builds vs. traditional package managers
Nix flakes for locked dependency graphs and version pinning
nix-shell: creating consistent development environments across teams
Rollback and immutable deployment strategies with Nix/NixOS
Integrating Nix with the Elixir toolchain: Hex, Mix, and CI/CD pipelines
Flakes vs. standard shells: when and how to transition
Handling private Hex repositories and authentication in Nix
Cross-platform support (macOS/Darwin, Linux variants)
Channels, overlays, and overrides for customizing builds
Dockerizing Elixir releases using Nix-based images
Home Manager for personal environment configuration
Security patching workflows in a Nix-managed infrastructure
Common pitfalls: flake performance, sandbox workarounds, and symlink behavior
Community resources and the importance of human mentorship
Links mentioned:
https://jobrad-loop.com/
https://nixos.org/
https://nix.dev/
https://nix.dev/manual/nix/2.18/command-ref/nix-shell
https://github.com/nix-darwin/nix-darwin
https://asdf-vm.com/
https://go.dev/
https://docs.redhat.com/en/documentation/redhatenterpriselinux/8/html/packaginganddistributingsoftware/introduction-to-rpm_packaging-and-distributing-software
Nix Flake templates for Elixir https://github.com/jurraca/elixir-templates
https://www.docker.com/
https://www.sudo.ws/
https://ubuntu.com/
https://archlinux.org/
Nobbz’s blog https://blog.nobbz.dev/blog/
https://ayats.org/blog/nix-workflow
@nobbz.dev on BlueSky
@NobbZ1981 on Twitter
https://www.linkedin.com/in/norbert-melzer/
https://youtu.be/HbtbdLolHeM?si=6M7fulTQZmuWGGCM (talk on CodeBEAM)