Are they so different that it’s justified to have so many different distributions? So far I guess that different package manager are the reason that divides the linux community. One may be on KDE and one on GNOME but they can use each other’s packages but usually you are bound to one manager
The package manager is really only a small part of the story.
A distro at the end of the day is a API/ABI platform. What makes Debian what it is, is that it has a specific set of old unmoving packages. What makes Arch is that it has the latest APIs always. And everything in between like Fedora.
So even if Fedora used dpkg it wouldn’t change anything, you can’t use its packages on Debian.
As to why so many exist… well a lot of them suck in their own unique way.
Except in NixOS, it’s literally a distro built around a package manager. But it doesn’t force you to choose, you can have both unstable and stable packages
Yeah modern usage in general involves silo’d ABIs, be it Flatpak, Nix, Docker/Podman. Modern languages even try to move away from any ABI.
Of course there are upsides and downsides to the traditional approach.
Modern languages even try to move away from any ABI.
I wouldn’t put it that way. In the case of Rust, it seems everyone wants to have a stable ABI for a number of reasons (e.g. making dynamic linking possible without FFI), but the core developers feel like the ABI is still too unstable to commit to anything.
I don’t think package managers are DE-only but rather depend on the distro
KDE and Gnome are just desktop environments. I use Gnome on Arch which uses pacman as the package manager. I could use KDE or XFCE or i3 or anything. The package manager is tied to the distro, and you can use almost any software with them.
As another user mentioned, package managers are specific to distributions rather than DEs. The main difference between them is that they’re developed by the respective distribution teams, but there are some practical differences too. For example, apt supports versioned dependencies while pacman doesn’t because of the different distribution models between Debian and Arch (monolithic vs. rolling release). This affects their dependency resolution strategy with each being better suited for it’s respective distribution.
To address your point about package managers being the main difference between distros, this isn’t quite true. As mentioned, different distros have different distribution models, priorities, and overall biases/opinions that affect the user experience in a variety of ways and make them better suited to different use cases. I would never dream of putting Arch on one of my servers in the same way that you’d probably never catch me installing Debian on my gaming machine.
There are many different “X” because people have different tastes in their choice of “X”. I like KDE, the next guy likes Gnome. I like Apt, but I might like whatever NIXOS uses, others like Yum or DNF. I kinda like the idea behind GoboLinux, probably because I was a MAC OSx user for a long while.