Re: the Recommends control field
Joerg Jaspert wrote:
On 10119 March 1977, Michael Spang wrote:
Unless we split the functionality such that we have both, I think you're
correct. I know for sure we can't do away with the technical recommends.
I'd rather we separate the social one (or kill it altogether) so that we can
finally fix apt-get and stop the annoying bug reports of people who do not
even KNOW they are not supposed to ignore a technical recommends unless they
Really Know Better.
I too believe that recommends are taken too lightly. This is why I can't
accept a package manager which automatically selects recommends; I get
way too many unneeded packages that way. I think the policy manual makes
it pretty clear that recommends are to be for packages without which the
package would be pretty useless.
You perfectly describe Depends.
Depends is used if the package in the D: is needed for the package to do
anything useful in any case.
Recommends is, if the recommended package is needed for most of the
cases where these package gets used, not for all.
(And Suggests is for "in some cases it would be nice to have").
And - everything that doesnt need to be on the same host, like databases
for example, is for sure no Depends. :)
Package would be useless without them..
Excuse my poor wording, people tend to exaggerate things to make a
point. This disagreement is exactly the reason this thread was started,
I suppose. People don't agree on what Recommends: should be.
- Some think it should be a 'weak-depends: ' -- the package has some
functionality without the package, though the package isn't absouletly
required (eg. dynamically linked libraries) to run/use it.
- Some think it should be a 'strongly-suggests: ' -- the package's
functionality can be better utilized / is enhanced somehow by the package
- Some probably even think other things
I favor the 'weak-depends: ' interpretation because it allows
_flexibility_, dpkg won't complain if it's not installed but programs
like aptitude will install it by default because its almost always
wanted. We all love flexibility, right?
We already have a suggests, recommends should have a different purpose.
I think it was initially meant to be this way, though things have
blurred over time. Hence this issue was brought up by the original poster.
This declares a strong, but not absolute, dependency.
The Recommends field should list packages that would be found
together with this one in all but unusual installations.
It seems to be worded quite clearly in the policy manual after all.
Sounds like 'weak-depends' or the 'technical interpretation' to me. If
the program doesn't crash and burn without it, I fancy it belongs in
recommends: and not depends:. If the program is generally useful without
it, it belongs in suggests: not recommends:.
Considering how blatantly it is worded here, I don't think there's room
for [the 'social'] interpretation. Recommends: _is_ a dependency, just
not an absolute one.