Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> why flakes are nonsense

Oh wow, I want to hear more about that. I love flakes, but I've known they are controversial, and never really heard why.



- flakes perform very poorly in large repos. This might be changing soon with lazy-trees, but I've been waiting for that for 2+ years.

- flake inputs are not fetched lazily.

- flakes are somewhat restrictive in that you can't override an input with an arbitrary value. This matters if you want to pass in, say, a specially configured nixpkgs object. In practice, for non trivial use cases, flakes fail to solve the problem they set out to solve. Most flakes expose lib functions for these advanced use cases but that's pretty much equivalent to what you get with non-flakes.


Flakes are controversial primarily because they create a parallel ecosystem that breaks compatibility with the traditional Nix workflow, introduce additional complexity without solving core reproducibility issues, and were developed with limited community input despite representing a fundamental shift in how Nix works.


I like flakes... I use flakes.

You love flakes... keep using them!

The rest is politics.


For sure. But I find other people's opinions interesting.


Here's some of my opinions on flakes, FWIW https://lobste.rs/s/6js1hj/flakes_have_failed#c_byu8ds


I mean they get evaluated in a weird way: for example you cannot use the `rec` keyword when declaring inputs.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: