Comment 14 for bug 1123710

Revision history for this message
Daniel Hartwig (wigs) wrote :

> This is in fact a bug in apt as well. A fresh install of 64-bit raring will
> try to pull in gnome-exe-thumbnailer:i386, which in turn will ask for
> icoutils:i386, which will then conflict:
> libunity-webapps0 : Depends: unity-webapps-service but it is not going to be installed
>
> Rather than give up and declare it hopeless here, apt should instead just not
> try to install the merely recommended package gnome-exe-thumbnailer:i386.

I'm not so sure this is sensible, as relaxing the behaviour of APT::Install-Recommends will lead to unpredictable results, especially in the presence of other transient packaging or non-availability errors. The expectation when installing a package is that any recommends are also installed. If a recommended package is not available at the time and simply ignored, it will not be handled subsequently by upgrades to the base package. This is important behaviour to preserve the users ability to manually override particular recommends.

To quote debian-policy:

> Recommends
> 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.

If a package recommends another that is either unavailable or uninstallable, that is not merely an unusual situation, it is *broken*. In my understanding, the treatment of recommends as dependencies *while installing a package* should not be changed unless manually overridden (by, say, ‘apt-get install foo bar-’). If a package recommends another, it is declaring a relationship that is expected to hold by default and care must be taken to ensure that recommended packages are co-installable (i.e. m-a foreign down as far as required).

I would consider this issue purely packaging and mark as invalid for apt, though perhaps some apt developers have a comment.

Regards