Contribute to FullOvellas/nix_config development by creating an account on GitHub.
I think it's about time I improved a bit on my Nix and NixOS knowledge, and I guess the best way is having someone more experienced critique my monstrosity of a setup.
Maybe it's too modular?
Not modular enough?
Convoluted?
Complete garbage altogether?
Go to the repo and find out! Just be sure to let me know after.
It's a bit LMAO-worthy, yes. I have it mostly out fear some sofware might break on Hyprland at a bad time, and because I'm too lazy to look for some basic utilities separately.
No I am in the same camp. I hate complexity. There's too many crumbs of utilities to reassemble into the entire loaf of functionality. Hence I haven't tried installing arch in a long while (I use endeavorOS as my daily) and I haven't tried running nix. The need has not arisen yet.
I read your issue and you left some great advice. Thank you for taking the time to write something thoughtful! As you probably guessed I really had barely any idea of how the module system worked, but it's nice seeing it's a bit similar to Rust's. I will look into the switch script, which will be convenient, and apply your suggestions, since I basically agree with all of them 🙌
I wasn't very clear in how I wrote those points, I think you got it backwards.
My points was that OP was using recursiveMerge, and I think that is not a very common or useful pattern to follow, because you evade the module system, for no good reason(?).
I think you are already following the most common pattern out there. If you would like to, there are ways to avoid having a default.nix file for each module, but in my opinion that only makes it harder for other people to understand your modules.