Following the recent discussion on the devil list about “lightly-maintained packages” that did not lead to anything, I started to think about an issue that is, in my opinion, related, and shares the same root cause:
The Fedora project does not have enough maintainers for the currently existing (and rising) number of packages. Or rather, there is a small group of very active package maintainers who are responsible for hundreds of packages (I count myself to be in that group, being the primary maintainer of almost 400 packages).
To me it feels like a disconnect happened between the group of “main contributors” (> 100 packages) and others who are only responsible for a very small number of packages (< 10), with very few people in the “middle ground” (double digits). (Maybe I am wrong, since I do not yet have data to back this up.)
Since I don’t think that the current situation is sustainable in the long term, we should probably think about a deeper problem: Does Fedora actually need packages for certain kinds of software? I’m not talking about stuff that needs to be integrated with the system in any way (like system(d) services, “base” libraries, desktop applications/plugins, etc.), but rather about standalone applications that do not need integration with the system.
For example, some new statically linked tools like bat, lsd, or ripgrep are perfectly fine if you install them with cargo, and applications that are usually deployed with a different mechanism anyway (e.g. with bundler for Ruby gems) do not necessarily need to be packaged for Fedora at all, unless they’re needed by other packages.
However, those “leaf” applications tend to pull in a large number of additional dependencies, which the maintainer of the leaf application package is usually not interested in. They then usually get added to SIG groups, where they receive only limited maintenance (I can confirm this for the Java and Rust stacks).
TL;DR: I know this sounds like blasphemy in the context of a linux distribution, but I think we should consider whether it’s actually beneficial to provide packages for certain types of software, primarily if “leaf” applications are concerned (where other mechanisms like flatpak, cargo, or bundler are perfectly fine distribution mechanisms), or software that is usually used and deployed with a mechanism that is not RPM (node, pip, bundler, cargo, etc.).