logoalt Hacker News

eddieroger • today at 2:55 PM • 2 replies • view on HN

Have flakes stabilized? I thought those were one of the points of contention, while also being the kind of thing that I was the most interested in as a way of hopefully managing a small fleet of VMs. I had trouble getting the idea to stick because I really believed in the single-config ideal reality, but couldn't bend my config far enough in.


Replies

georgyo • today at 3:21 PM

Flakes are neither stable or unstable...

They are defacto stable in that everyone is using them and the interface is not really going to change at this point.

But they are still marked as an experimental feature.

To get them out of experimental, the requirements are

normalizing the CLI. Currently some options are global and some are local to a command. The plan as I understand it is to make them all local. This would make it clear which options any particular command actually take instead of guess work. They are not going to break usage, but make the usage more clear.

And fetchTree needs to be stabilized. A big criticism of flakes is that they had a nonstandard method of fetching data and repos. fetchTree is a new nix built-in that behaves the same way. This makes flakes a lot less special.

So, nix flakes are a stable experimental feature, slowly getting to the state that it won't be experimental any more.

wojtek1942 • today at 4:11 PM

"Experimental does not mean unstable" (2023) https://determinate.systems/blog/experimental-does-not-mean-...

I know not everyone is a fan of DS, but this post has a nice, concise explanation of how to think about the state of flakes.