Skip to content

Developer tools · package manager

Nix

Hacker Approved

Recommended for reproducible, declarative builds and per-project dev environments with multiple versions side by side, but the learning curve, docs and overall UX are widely called brutal.

Summarized from 801 comments.

Recommended for reproducible, declarative builds and per-project dev environments with multiple versions side by side, but the learning curve, docs and overall UX are widely called brutal.

recommend
378
criticize
150
months recommended
13 of 13
median owned, 24 owners said
3 years

Why people love it

  • Reproducible, declarative system state · 8

    Nix lets you naturally encode that understanding in code (and in comments), making sure it never drifts from what the state of the system really is.

    Aug 2026 · comment

    Nix makes sure that everything is exactly as you declared, and that in case of [INSERT APOCALYPTIC EVENT], you'll be able to recover much faster

    Feb 2026 · comment

    reproducible builds for this kind of testing infrastructure is important because you need the exact same chaos injection behavior across CI runs

    Feb 2026 · comment
  • Easy per-project dev environments · 6

    others are using Mise or Nix on a per project basis to automate the development environment setup and that works well on GitHub Actions

    Feb 2026 · comment

    If you structure it correctly using task runners and an environment manager you can do everything locally using the same versions etc.

    Dec 2025 · comment

    I personally use direnv with nix to have per-project dependency versions installed automatically, and I've never had too much trouble.

    Aug 2026 · comment
  • Multiple versions coexist without conflicts · 4

    As long as the specific version of Erlang you’re using is present in either your Nix store or the global cache for your OS and arch, you should not need to compile anything.

    Nov 2025 · comment

    This is different from most package managers, where trying to install anything old means spinning up a complex build environment and learning a bunch of new tools.

    Oct 2026 · comment

    They were built from the ground up to be able to have multiple, simultaneous versions of everything installed in separate store

    Feb 2026 · comment
  • Binary cache avoids rebuilding · 3

    As long as the specific version of Erlang you’re using is present in either your Nix store or the global cache for your OS and arch, you should not need to compile anything.

    Nov 2025 · comment

    Nix has the whole content addressed build DAG with caching, the intermediate language, and the ability to produce arbitrary outputs

    Feb 2026 · comment

    adopt the Nix approach of caching common binary artifacts in a content addressable store and rebuild from source only when needed

    Oct 2026 · comment

What people warn about

  • Brutal learning curve · 4

    I am about seven years into using Nix for various things, and can mostly solve most problems, but I won't deny that the learning curve at the beginning was brutal.

    Jun 2026 · comment

    Nix the language and ecosystem has historically been completely unapproachable for people unwilling to beat their head against the wall

    Jul 2026 · comment

    It's a pretty special language, lazy evaluation and very basic types. However after spending the time to learn it to an intermediate level I think it's pretty great.

    Dec 2025 · comment
  • Hostile UX and rough DX · 3

    Although you're right about nix's DX being quite rough, the problem isn't exactly that it "tries to be everything for package management".

    Jan 2026 · comment

    I've got a couple using Nix, which laughs at everything else (but damn, the overall UX is still even more hostile than git)

    Jun 2026 · comment

    its discoverability and transparency are sometimes very poor. Its module system is anything but lean and straightforward.

    Oct 2026 · comment
  • Poor documentation and discoverability · 2

    The documentation is not great (especially since it tends to document nix-the-language and not the conventions actually used in Nixpkgs)

    Dec 2025 · comment

    its discoverability and transparency are sometimes very poor. Its module system is anything but lean and straightforward.

    Oct 2026 · comment
  • Frequent breakage in projects · 2

    Seeing that flake.nix badge of complexity lets me know a project will be a nightmare to set up and will break every other week.

    Dec 2025 · comment

    Everywhere it shows up it infects projects, creates constant breakage, and requires at least 1 person to become a nix expert

    Oct 2026 · comment

What hackers pick instead

Every quote

The 40 most detailed of 801 comments. Each links to the original.

  1. As long as the specific version of Erlang you’re using is present in either your Nix store or the global cache for your OS and arch, you should not need to compile anything.

    Recommends · Nov 2025 · in “Writing your own BEAM”

  2. It's a pretty special language, lazy evaluation and very basic types. However after spending the time to learn it to an intermediate level I think it's pretty great.

    Mixed · Dec 2025 · in “Nixtml: Static website and blog generator written in Nix”

  3. I am about seven years into using Nix for various things, and can mostly solve most problems, but I won't deny that the learning curve at the beginning was brutal.

    Mixed · Jun 2026 · in “Show HN: machine0 – Persistent NixOS VMs You Control from the CLI”

  4. excellent at fixing a lot of problems in the software packaging and installation space that are great from a security perspective but are famously difficult to use

    Mixed · Jan 2026 · in “Install.md: A standard for LLM-executable installation”

  5. This is different from most package managers, where trying to install anything old means spinning up a complex build environment and learning a bunch of new tools.

    Recommends · Oct 2026 · in “The Tao of Backup”

  6. Nix lets you naturally encode that understanding in code (and in comments), making sure it never drifts from what the state of the system really is.

    Recommends · Aug 2026 · in “Show HN: NixOS-DGX-Spark – Nix and NixOS on the DGX Spark”

  7. Nix makes sure that everything is exactly as you declared, and that in case of [INSERT APOCALYPTIC EVENT], you'll be able to recover much faster

    Recommends · Feb 2026 · in “Don't rent the cloud, own instead”

  8. reproducible builds for this kind of testing infrastructure is important because you need the exact same chaos injection behavior across CI runs

    Recommends · Feb 2026 · in “Show HN: Chaos Monkey but for Audio Video Testing (WebRTC and UDP)”

  9. I value the completeness (thoroughness may be a better word) as well as the reproducability and portability that nix ensures over convenience

    Recommends · Jun 2026 · in “Migrating from GNU Stow to Chezmoi”

  10. There’s a sense of order and tidiness in running Nix on multiple machines with diverse uses and hardware, all based on single configuration

    Recommends · Nov 2025 · in “CachyOS: Fast and Customizable Linux Distribution”

  11. Although you're right about nix's DX being quite rough, the problem isn't exactly that it "tries to be everything for package management".

    Mixed · Jan 2026 · in “Going immutable on macOS, using Nix-Darwin”

  12. The documentation is not great (especially since it tends to document nix-the-language and not the conventions actually used in Nixpkgs)

    Mixed · Dec 2025 · in “Self-hosting my photos with Immich”

  13. Nix the language and ecosystem has historically been completely unapproachable for people unwilling to beat their head against the wall

    Mixed · Jul 2026 · in “NixOS is more complicated than you think but OpenCode fixed it”

  14. others are using Mise or Nix on a per project basis to automate the development environment setup and that works well on GitHub Actions

    Recommends · Feb 2026 · in “GitHub Actions Is Slowly Killing Your Engineering Team”

  15. If you structure it correctly using task runners and an environment manager you can do everything locally using the same versions etc.

    Recommends · Dec 2025 · in “Pricing Changes for GitHub Actions”

  16. I personally use direnv with nix to have per-project dependency versions installed automatically, and I've never had too much trouble.

    Recommends · Aug 2026 · in “The Nixpkgs core team has disbanded”

  17. Because Nix is a package manager not tied to one programming language ecosystem, I can install all the tools for every language I need

    Recommends · Apr 2026 · in “Using Changesets in a polyglot monorepo”

  18. Nix has the whole content addressed build DAG with caching, the intermediate language, and the ability to produce arbitrary outputs

    Recommends · Feb 2026 · in “BuildKit: Docker's Hidden Gem That Can Build Almost Anything”

  19. There is no risk of someone running install on one box and someone running it on another and them getting different exact versions

    Recommends · Mar 2026 · in “Why I love NixOS”

  20. adopt the Nix approach of caching common binary artifacts in a content addressable store and rebuild from source only when needed

    Recommends · Oct 2026 · in “A plea not to use uv-build”

  21. They were built from the ground up to be able to have multiple, simultaneous versions of everything installed in separate store

    Recommends · Feb 2026 · in “I Fixed Windows Native Development”

  22. Nix is somewhat all-encompassing, but it can simultaneously run multiple applications with incompatible sets of dependencies

    Mixed · Jan 2026 · in “The C-Shaped Hole in Package Management”

  23. I've got a couple using Nix, which laughs at everything else (but damn, the overall UX is still even more hostile than git)

    Mixed · Jun 2026 · in “Homebrew 6.0.0”

  24. the tooling is easy enough that nonetheless, my team generally has no problems spinning up new Nix environments without me

    Recommends · May 2026 · in “I love Linux, but I can't quit Windows”

  25. Nothing compares to nix. I've been using it on macOS, for Linux hosts, for years now, and it's been incredibly rock solid.

    Recommends · Nov 2025 · in “NixOS 25.11 released”

  26. It has been a game changer for me at least as a first time dev to just run 'nix develop' and have 'cargo build' just work

    Recommends · Dec 2025 · in “The Polyglot NixOS”

  27. its discoverability and transparency are sometimes very poor. Its module system is anything but lean and straightforward.

    Mixed · Oct 2026 · in “Nix wrote half of my debugger”

  28. more broad usage of the deterministic systems like nix etc, which are built upon functional principles of immutability

    Recommends · Jul 2026 · in “Steel Bank Common Lisp version 2.6.7”

  29. Seeing that flake.nix badge of complexity lets me know a project will be a nightmare to set up and will break every other week.

    Criticizes · Dec 2025 · in “Using Python for Scripting”

  30. Everywhere it shows up it infects projects, creates constant breakage, and requires at least 1 person to become a nix expert

    Criticizes · Oct 2026

  31. it's a really great concept! The issue I have run into is that for running llama.cpp ... it seems like experimenting with different versions/configs/patches etc. was fighting with the Nix philosophy of immutable software

    Mixed · Sep 2026 · in “Dutch governments builds alternative for Microsoft based on NixOS”

  32. in exchange for some relatively minor strictness tradeoffs, the set of problems that that is solving never had to exist in the first place

    Recommends · Aug 2026 · in “The Nixpkgs core team has disbanded”

  33. openSUSE, ChromeOS, Nix, Guix, and indeed, TinyCore all achieve the same goal with tooling that is about 1% of the size or complexity

    Recommends · Apr 2026 · in “PiCore - Raspberry Pi Port of Tiny Core Linux”

  34. Nix/Nixpkgs provide well maintained package derivations and module configuration for the largest amount of software of any ecosystem

    Recommends · Jun 2026 · in “Shrinking a NixOS ISO from 458 MiB to 183 MiB”

  35. You avoid all the string templating bullshit and can use nix functions and the nixos module system to build proper abstractions.

    Recommends · Oct 2026 · in “A skeptic's first contact with Kubernetes (2024)”

  36. I've for example written an experimental C build system for Nix which handles all compiler orchestration and it works great

    Recommends · Mar 2026 · in “A Decade of Docker Containers”

  37. AI + nix makes it so easy to make reproducible personalized GUI software that generally doesn't just up and brick on you.

    Recommends · Oct 2026 · in “Why Linux is picking up at a rapid pace for AI usage?”

  38. Nix is very doable. With Deepseek or other cheaper models, you could get a whole headache-free setup done in one weekend

    Recommends · Jun 2026 · in “Migrating from GNU Stow to Chezmoi”

  39. Nix and AI is a match made in heaven and I think we're going to see a lot of good software that's amenable for us by AI

    Recommends · Mar 2026 · in “Why I love NixOS”

  40. For me personally (and also for everyone at work), I'm doing all package management with Nix. I'm happy with the setup.

    Recommends · Apr 2026 · in “Show HN: CLI to order groceries via reverse-engineered REWE API (Haskell)”

Counts from 1,795,640 Hacker News comments, Nov 2025 to Nov 2026. How we count · Report a mistake