3 ms·
Thanks for the clarification. It's also worth mentioning that NixOS itself is in the nixpkgs repo. That sorta makes sense. Sorta. There are two reasons I'm rea
by thomastjeffery 3y ago
Thanks for the clarification. It's also worth mentioning that NixOS itself is in the nixpkgs repo. That sorta makes sense. Sorta.
There are two reasons I'm really frustrated with the namespace problem:
1. Discoverability
I have spent a very significant amount of time just trying to answer the simple question, "what is the package named?" The worst part is when the package does have an obvious top-level/all-packages.nix name, but that isn't the one you are supposed to use! Sometimes, a package will need to change more of your environment than PATH, like udev rules or systemd units. In that case, it will have a totally different attribute like services.openssh.enable; but there is no clear way to learn this is the case, or what the attribute is! I still don't have a good sense of how nixpkgs is organized, and I've been using NixOS as a daily driver for 5 years.
2. Flexibility
Writing a new derivation (package) is way too difficult. Documentation is improving, but it's still not nearly good enough. There are just too many layers, and too much magic. God forbid you need a different version of a library. Of course, that's the problem that flakes solve, but it's still hard to find what you need, even when it's there.