Very respectable point, I think.
On the other hand, I’m a newcomer (2 weeks using nix). I personally find the more explicit semantics (the triad of input, output, lock) of flakes a little easier to grasp.
For me, that potentially offsets a little the experimental status (as does the more organized cli UX).
I’m just experimenting, though. I have no realistic idea how far away is graduation into general availability.
As far as I understand things right now, there is no established gradual signalling in place (like alpha, beta, ga) for feature flags (or parts of features)? - That makes gradual adoption indeed a bit difficult.
A set of templases would be super nice!
Just a minor comment to say that templates would also be super useful for local projects that are not (yet?) supposed to be in nixpkgs. And in local projects, I’d expect to have a
derivation.nix file containing the actual derivation (contrary to a
nixpkgs project that will call that file
default.nix… never understood the point of calling in the same way two files with different purposes, but nevermind), a
default.nix that mainly
callPackage° the derivation.nix° file, a
shell.nix file that setup the shell… and all these files are long to write manually.
And these use-case may be more suited for beginners, so it should be the default I guess.