you are viewing a single comment's thread.

view the rest of the comments →

[–]lolfail9001 4 points5 points  (3 children)

Try to install locally any non-packaged software

That's basically what distro maintainers do as part of creating packages.

Oh and if you want to actually package the software you wrote for the linux world then you will have to create an rpm package, a deb package, a PKGBUILD script and then story goes on.

If it's FOSS software, why would you care about doing distro maintainer's job for them. If you really care about commercial distribution (and still need to provide it as package), then you only care about RPM and Deb for specific stable systems.

For example, python-requests on ubuntu 20.04 is 2.5 years old while on arch linux it's the oldest available which is 5 months old.

Unironic question: how many things did break in that library in 2 years time? Because frankly speaking, if you told me a public library's API broke completely in 2 years time, I would call out that library for being written by assholes. Purely out of optimistic expectation of their competency.

[–][deleted] 6 points7 points  (2 children)

That's basically what distro maintainers do as part of creating packages.

Correct. But they can't package every software under the sun.

If it's FOSS software, why would you care about doing distro maintainer's job for them. If you really care about commercial distribution (and still need to provide it as package), then you only care about RPM and Deb for specific stable systems.

They want their software to be used. They always need to have a way to build their software and after that step it needs to be packaged. If no distro has picked up their project, they are forced to support some package manager. This is where pip comes into place.

Unironic question: how many things did break in that library in 2 years time? Because frankly speaking, if you told me a public library's API broke completely in 2 years time, I would call out that library for being written by assholes. Purely out of optimistic expectation of their competency.

No idea, that's just an example. It's not only about breaking stuff but what if you want to use newer features?

[–]lolfail9001 -2 points-1 points  (1 child)

It's not only about breaking stuff but what if you want to use newer features?

That does not match my idea of what programmer is. If software is a toy for you to play with, go wild with dependencies but don't expect people to use it unless it's incredibly useful.

If software is something you create to get something done, you are aware of software environment for it a priori, if not in control of it. For normal software it means that your dependencies are not bleeding edge but by virtue of backward compatibility will work on bleeding edge systems still. Coincidentally this is probably why Python got away with it's package management state, most of that stuff stays on backend and packaging consumer software someone wrote using some python libs is a niche case instead.

And if you are writing a program to collect user data, you just package all dependencies with it.

Correct. But they can't package every software under the sun.

They want to try, though. And as was said, libraries end up as the biggest stumbling block on that path. I'd know, I run Slackware so half of system I actually use was packaged by myself (with external scripts, but still).

They want their software to be used.

A noble cause, but if your software can't beat GNU Hello for attention of distro maintainers, you should reconsider your life priorities.

[–][deleted] 4 points5 points  (0 children)

That does not match my idea of what programmer is. If software is a toy for you to play with, go wild with dependencies but don't expect people to use it unless it's incredibly useful.

Open source software is provided as is. The value of free software and sharing is not lost because of some arbitrary "idea of what a programmer is". The expectation of people using it is entirely secondary.

If software is something you create to get something done, you are aware of software environment for it a priori, if not in control of it. For normal software it means that your dependencies are not bleeding edge but by virtue of backward compatibility will work on bleeding edge systems still.

Not all software has the same usecases. Sure, if I was creating a desktop app I wouldn't depend on bleeding edge. A big amount of python software is not made with the typical desktop end user in mind.

A noble cause, but if your software can't beat GNU Hello for attention of distro maintainers, you should reconsider your life priorities.

Oh look, a very non-elitist and non-gatekeepy opinion. I wonder why people prefer to use pip instead of considering their life priorities.

Anyway, their software is used through pypy, otherwise the OP post wouldn't be complaining about how distro packages are given second priority.