3 ms·
Part of the reason that Python has no canonical package management is that it is rooted in Linux, where the distro is perfectly capable of handling the task of
by demallien 15y ago
Part of the reason that Python has no canonical package management is that it is rooted in Linux, where the distro is perfectly capable of handling the task of package installation. It's an unfortunate artifact of shitty software management in Windows and OSX that we even have language-centric package management at all.
Fantastic! Of course it's a bit of a bummer that as a dev I now have to handle setting up my python package so that it is acceptable to each of the major Linux distributions. And as a user, it does kind of suck, having to wait for said distributions to publish the package.
I see language-specific package managers as being complementary to system package management, not competition. A ruby gem to me is the equivalent of distributing a package written in C via a tarball/autotools, except it is much more user-friendly. As a developer, I can publish the gem myself, without having to fight with the distribution managers over the one true way to package up my software. In fact, that whole fight can be handled by the language package management system - so for example you only need rubygems to be compliant with Debian's rules, or Fedora's, and it will correctly install gems for your system, in much the same way that each distribution has its own implementation of pkg-config for autotools. Admittedly there have been many bitter battles when this has failed to be the case, but technically there is nothing stopping this from being a very effective, and flexible way of distributing software.