Please don't take it the wrong way, I have a lot of respect for distros packagers and maintainers. I donate to debian, and I report bugs. I think you are basically heroes of the FOSS world, because without your invisible (and frankly thankless) work, mine wouldn't exist.
But come on, there are 300k entries on pypi, 200k more for perl and 160k for ruby. I'm not even counting the whooping 1.3M on npm because I assume this is considered taboo at this point.
You cannot package 0.0001% of that, not to mentions updates.
And unless distros make it as easy to package and distribute deb/rpm/etc than it is to use the native package manager, this means distro packaging will never be attractive to most users because:
- they don't have access to most packages
- the provided packages are obsolete
- packages authors have no way to easily provide an update to the users
- it's very hard to isolate projects with various versions of the same libs, or incompatible libs
And that's not even mentioning that:
- package authors may not have the right to use apt/dnf on their machine.
- libs may be just a bunch of files in a git repo, which pip/gem/npm support installing from
- this is not compatible with anaconda, which has a huge corporate presence
- this is not compatible with heroku/databrics/pythonanywhere, etc
- this is hard to make it work with jupyter kernels
Now let's say all those issues are solved. A miracle happens. Sorry, 47 miracles happen.
That would force the users to create a special case for each distros, then for mac, then for windows. I have a limited amount of time and energy, I'm not going to learn and code for 10 different packaging systems.
It's not that we want to screw over linux distros. It's that it's not practical, nor economically viable to use the provided infra. The world is not suddenly going to slow down, vulnerabilities will not stop creeping up, managers will not stop to ask you to use $last_weird_things. This ship has sailed. We won't stay stuff only published 5 years ago with delays of months for every updates.
But come on, there are 300k entries on pypi, 200k more for perl and 160k for ruby. I'm not even counting the whooping 1.3M on npm because I assume this is considered taboo at this point.
You cannot package 0.0001% of that, not to mentions updates.
And unless distros make it as easy to package and distribute deb/rpm/etc than it is to use the native package manager, this means distro packaging will never be attractive to most users because:
- they don't have access to most packages
- the provided packages are obsolete
- packages authors have no way to easily provide an update to the users
- it's very hard to isolate projects with various versions of the same libs, or incompatible libs
And that's not even mentioning that:
- package authors may not have the right to use apt/dnf on their machine.
- libs may be just a bunch of files in a git repo, which pip/gem/npm support installing from
- this is not compatible with anaconda, which has a huge corporate presence
- this is not compatible with heroku/databrics/pythonanywhere, etc
- this is hard to make it work with jupyter kernels
Now let's say all those issues are solved. A miracle happens. Sorry, 47 miracles happen.
That would force the users to create a special case for each distros, then for mac, then for windows. I have a limited amount of time and energy, I'm not going to learn and code for 10 different packaging systems.
It's not that we want to screw over linux distros. It's that it's not practical, nor economically viable to use the provided infra. The world is not suddenly going to slow down, vulnerabilities will not stop creeping up, managers will not stop to ask you to use $last_weird_things. This ship has sailed. We won't stay stuff only published 5 years ago with delays of months for every updates.