On Wednesday, November 6, 2024 10:41:46 PM MST Aaron Rainbolt wrote: > Again, this isn't a problem limited to a derivative distribution. I > respect that your opinion of how Recommends should work differs from > mine. That doesn't change the policy though, and it doesn't change that > neglecting or changing the policy's rules in this area will cause and > is causing problems to some of Debian's users. Ultimately I don't care > exactly how those problems are solved, I just want to solve them.
Let me try to explain what I see as the core of the problem. First, some background on the three existing categories. 1. Depends: These are the packages necessary to install and run the basic functionality of the package. 2. Recommends: These are the packages required to enable all the features of the package. 3. Suggests: These are packages that enhance the functionality of the package. Enabling a feature in the package is a "strong dependency”, which is what is meant by the policy. I agree that it could be worded in such a way as to be more clear to some people, particularly if they are not familiar with Debian or for whom English is not their primary language, but I want to be clear that the way I have defined Recommends above is exactly what the current policy envisions (at least I believe that is the understanding of the majority of the Debian community). When a user installs a package and all the Recommends, they should be able to expect that all of the features of the package should just work. They should not have to go hunting down some other package to install to enable one of the features of the package, even if that feature is less commonly used. Some packages are clearly in Depends, Recommends, or Suggests. Others might be right on the line between two of the categories. In these cases, a maintainer has to make a judgement call. If a user thinks they have got it wrong, they are welcome to submit a bug report explaining why they think it should be in the other category. Some upstream projects are complex enough that the above three categories don’t fully capture the needs of users. In those cases, meta-packages can accommodate those needs, as has already been discussed (which is analogous to Python "extras"). If a user believe there is a compelling case to be made for an additional meta-package, they should feel free to file a bug report and explain the merits of their request. With all of that said as background, the reason why I am opposed to what you are requesting is that it boils down to: "Please create a package category that only installs the important features instead of all the ones I don’t use”. This category would be somewhere in between Depends (the packages necessary to run the basic functionality) and Recommends (the packages necessary to run all the functionality). What I don’t like about this idea is it requires the package maintainer to be a mind reader. Specifically, they need to read *your* mind, because every single user has a different list of what the “important” functionality is. What you or your distribution considers important the next user or distribution would say, “I never use that, take it out. But I need this other thing.” Maintainers would end up having to create multiple variations of each package to make everyone happy. It is unsustainable. If you, as a user, want something between the basic functionality and all the functionality, please just install the basic functionality (Depends) and then add the extra functionality that is important to you. Don’t ask the package maintainer to read you mind and guess at what that will be.
signature.asc
Description: This is a digitally signed message part.