Meh, I’m not doing the worst with my Arch setup.
It may be time to switch to Nix tho :3
Also, skirts are underrated. Wear skirts, everyone, don’t even care. Everyone looks good in a skirt. And with eyeliner and mascara too! (imho)
#SkirtsAndEyelinerAndMascaraForEveryone


honestly, because nix the language is bad and unnecessary. nix the community/nix the system is one thing, and lix adresses that, but my basic gripe is that they decided to make a new language when so many already exist, then make it the most weird, inconsistent mess since c++.
what’s inconsistent about nix?
Have a look at Guile Scheme like Guix uses and see what consistency can look like.
consistency is in the eyes of beholder i guess. i personally don’t think scheme is much better consistency-wise. maybe except the consistent use of parentheses…
well, for a declarative language it has taken on a lot of procedural constructs. then there’s the right-associativity on some structures, currying that looks like nesting, and oddities like recursive definitions. it uses a lot of different building blocks, is what i’m getting at.
i see that as nix being inconsistent with the tradition of functional languages, which is fair. but i don’t think there are many internal self inconsistencies?
of course it’s all based on opinion when it comes down to it, but the recursive vs regular dicts feel inconsistent. the conditionals all seem to have slightly different syntax as well.
i think it comes down to them not being able to decide if they wanted a dsl or a generalist language, and landing somewhere inbetween. they could just have hooked up a lua interpreter, or gone config-only, but instead we got yaml anchors with logic in them.
i always assumed they wanted something that’s lazy-by-default and relatively simple, because that’s what nix feel like to me. and using a language they control probably makes things like evaluation caching simpler? also nix is turing-complete so i wouldn’t consider it a dsl.
if you hate recursive attrs you can always use
lib.fix (self: { ... })