What's really nice is using direnv to cd into a directory and having a flake.nix file in it which changes the entire system to what I need to do in that folder. So I don't need any of my dev environment to be system-wide, everything is per project. That alone has cut my system down to pretty much just system tools (replacements for shell commands), productivity tools (Obsidian, bitwarden, etc), and my browser. It's just so nice.