Lots of programming languages have their own package manager, separate from the distribution or OS package manager.
Going loosely from the TIOBE index:
- Python has Pip
- C# has NuGet
- Javascript has
npmfor Node.js - Visual Basic also uses NuGet
- R has a repository of packages that can be installed by running
install.packages("something")in R - Rust has Cargo/Crates
- Go has the
go getcommand - Swift has its own package manager
swift package - Ruby has RubyGems
- Java has Maven and Gradle (not sure if they are full package managers, or build automation tools with dependency resolution)
- PHP has Composer for managing libraries and dependencies
- C and C++ are the only exceptions I can think of, off the top of my head; libraries are managed by, and coupled to, the operating system


Because it’s one central repository regardless of distribution or even OS.
And also having to check OS compatibility for every package you want to use.