4 ms·
> Edit: Flakes aren’t an experimental new feature. https://nixos.wiki/wiki/Flakes https://nixos.wiki/wiki/Flakes tells me to enable Flakes by adding “flakes” t
by runeks 4y ago
> Edit: Flakes aren’t an experimental new feature.
https://nixos.wiki/wiki/Flakes https://nixos.wiki/wiki/Flakes tells me to enable Flakes by adding “flakes” to the config option named “experimental-features”...
- benreesman 4y agoYou’re absolutely right. Exhibit #902353 in “Why Everything About Nix on The Internet is Wrong”. Haskell used to have a semi-official motto: “Avoid success at all costs”. I think they were joking. Docs/UX that bad makes one wonder if the Nix people took that to heart. Flakes being some weird shoulder-surgery to even turn on? Why don’t we save time and just kick the ball into our own goal over and over. Le sigh.
- otabdeveloper4 4y agoToo many corner cases don't yet work properly in flakes for it to be the default. I think we can wait a few more months until they become stable enough.
- benreesman 4y agoEducate me a little about the corner cases? I’ve long since adopted a philosophy I call “Kool-Aid Man Programming” named after ad advert when I was a kid of the character jumping through walls. If something doesn’t work I write my own derivation and patches if necessary, if the utilities for that ecosystem don’t work I write new ones, I just don’t take no for an answer from Nix. I find this to be faster and less stressful than engaging with maintainers. Perhaps for more casual users it’s still a bad default? Even that doesn’t tie out with my personal experience. A year ago flakes were already default amongst the serious pros, now if I don’t see a flake.nix I assume I stumbled into the old repo.
- otabdeveloper4 4y agoThis thing, for example: https://github.com/NixOS/nix/issues/3121 https://github.com/NixOS/nix/issues/3121 Or the issues surrounding submodules.
- benreesman 4y agoThere are a lot of remarks on that issue, so maybe the plot thickens somewhere along the way, but if I’m reading that right, the corner case is that the first time a flake is somehow reified into the store, I’m hitting the filesystem with exactly what would happen if I ever referenced it elsewhere? So in practice I’m eating the cost of “installing” it the first time I use it, which is subsequently amortized across all the other times I use it? And if I’m really worried about this, my flake hits a default.nix in a directory that can also have a shell.nix I’m it so I can get around this? I think Einstein once said: “However great your troubles with mathematics are: be of good cheer. I assure you mine are far greater.” Nix isn’t relativity and I’m no Einstein, but if you work in Nix world and that issue even rises to your notice? Let’s trade jobs because I fucking wish I had Nix problems like that.