flakes also allow to pin version numbers, which increases reproduceability
Discussion
i just pin nixpkgs if i want that... its usually more annoying than its worth though
flakes adds way more complexity than its worth... I never need all these fancy reproducibility features that just explodes complexity. i just don't get it. if people like them then fine, but I just don't need it or want it.
I've been using nix/nixos for 10 years just using nix shell. maybe I'm just not smart enough as to why I would need it. my projects are already are reproducible enough.
For me most of the value from flakes came from two things:
- Coherent setup across multiple computers (including home-manager, nix-darwin and nixOS of course, be it on servers or desktop)
- Reproducible dev envs without host contamination: this one was a blessing when working with a team on proprietary stuff with a bunch of very specifc deps/setup/etc.