I mean, I’m impressed that someone had the time to thoroughly try out all of those distros in two months to enable a meaningful comparison!
This is just very surface level discussion. Didn’t even mention that NixOS lets you roll your system back to any previous configuration or has the most packages of any distro
Rollbacks are definitely something worth talking about, but the package count is probably not.
Nixpkgs automatically generated packages from some language specific package managers, mainly Haskell and Node packages, which do hugely inflate the number. If you account for these, it does end up being smaller than the AUR. Plus, many of those automatically generated packages are frequently broken.
This still leaves Nixpkgs as the largest official repo, but I think any NixOS maintainer would agree that the average quality of a package in NixOS is not as high as something like an official Arch or Debian package. Package review processes are not nearly as intensive as they probably should be due to the lack of manpower to handle that…
Edit: To be clear, since my tone seemed very negative here, I am not just trying to spread negativity about NixOS. I’ve used NixOS for years and contributed to plenty of Nix projects in the time. It is without a doubt the best package manager atm and its ideas have had massive positive impacts on package management as a whole.
Again, just subtract all the unique packages and you still get more packages than the AUR
If other distros have the same package, it’s not a machine generated package, is it?
I think any NixOS maintainer would agree that the average quality of a package in NixOS is not as high as something like an official Arch or Debian package
Package maintainer here. Not sure what you mean by quality; as that term is very ambiguous. Shit works and configuration is often a breeze by comparison to other distros.
I would never go back to a legacy distro. Who wants to do that shit all by hand?
I didn’t say or imply that NixOS is worse than other distros overall. I am also a maintainer of several packages, but I am referring to those with Nixpkgs write access, who generally have a deeper understanding of the repo.
Shit usually works, but not always. Breakages on unstable are not uncommon. For example, things often break when a major Python package is updated. The auto generated packages in Nixpkgs are often broken, sometimes completely, but sometimes in ways you don’t realize until you’re using them. Nixpkgs just does not have a review process that is on par with other distros.
I agree that NixOS configuration is amazing, that’s not what I was talking about. Im not shit talking NixOS, I love Nix and have used and contributed to it for years. I’m just bringing up valid points about it that are worth talking about.
Nixpkgs just does not have a review process that is on par with other distros.
We can agree on this. There is work to do.
Breakages on unstable are not uncommon.
I run unstable, and I have had this happen twice. Both times with Tmux (which is weird); but it was upstream issues. But fair enough. Maybe my systems aren’t exotic enough to experience the uncommon breakages.
Could nixpkgs do better? Yes. I mean, look at the backlog. You have to be active in the community to get your work merged in any decent timeframe. I think this is the most annoying part about the Nix ecosystem.
Maybe my systems aren’t exotic enough to experience the uncommon breakages.
The majority of issues are caused by Python applications, because Python packaging in Nix is still very rough. This isn’t Nix’s fault though, its the fact that pip sucks and most Python software uses a simple requirements.txt. Hopefully one day Poetry and UV build helpers will be in Nixpkgs.
You have to be active in the community to get your work merged in any decent timeframe. I think this is the most annoying part about the Nix ecosystem.
Definitely agree. It can be hard to get things merged or even reviewed. The simplest option to improve this would be to give more people write access, but of course lowering requirements for getting it would be a risk for security and stability. Nixpkgs automation is frequently improving, which will definitely help.
or has the most packages of any distro
That’s very much open to discussion. You can’t just go by the number of packages because nixpkgs for example has multiple python versions as separate packages, each with a set of the same libraries just with a different prefix.
https://repology.org/repositories/statistics/nonunique
This only includes packages that are also in other distros
While the full number might be inflated, it still has one of the most complete official repositories.
That is true, but most NixOS contributors and maintainers would agree that the average package quality is currently closer to that of the AUR than the official repos of other distros. However, there is the upside that because of how dependencies are handled, a broken package won’t mess with other things on your system in the same way a broken AUR package could.
the average package quality is currently closer to that of the AUR than the official repos of other distros.
Care to elaborate? I don’t remember packages not working, but if anything, they’re not building; which is basically the reverse of what happens at other distributions where sometimes, breakage during building isn’t noticed because the packages aren’t getting rebuilt when a dependency or the compiler toolchain changes.
I agree that Nix handles broken packages much better than Arch, but that’s more on the package managers themselves than the quality of packages.
NixOS Unstable has fairly frequent package breakages, especially for Python applications or packages using autogenerated dependencies. There are also many unmaintained packages. These unmaintained packages often get updated automatically without being tested, breaking them. Without a maintainer, some of these take a bit to be fixed.
I do think Nixpkgs packages are on average higher quality than AUR packages, they are just not up to the standards of many other repos official packages. Also, to be clear, I’m not hating on Nix or anything, I love Nix and NixOS is and has been my distro of choice for years.
This list seems to leave out a good amount of distros but overall not too bad.
For me all linux has it’s own uniqueness & it’s up to you to hate it or love it, because in the end the one who used it has it’s own uniqueness too why they choose it