Hi Vincent,

2011-12-08 11:53 Vincent Lefevre:
Package: aptitude
Version: 0.6.4-1.2
Severity: normal

The dependency resolution is suboptimal, even buggy. For instance:

# aptitude install evolution
The following NEW packages will be installed:
 libgnome-desktop-3-2{a}
The following packages will be upgraded:
 evolution gnome-desktop3-data
The following packages are RECOMMENDED but will NOT be installed:
 bogofilter spamassassin
2 packages upgraded, 1 newly installed, 0 to remove and 34 not upgraded.
Need to get 1955 kB of archives. After unpacking 20.5 kB will be used.
The following packages have unmet dependencies:
 libgnome-desktop-3-0: Depends: gnome-desktop3-data (= 3.0.2-2) but 3.2.1-3 is 
to be installed.
 evolution-plugins: Depends: evolution (= 3.0.3-3) but 3.0.3-3+b1 is to be 
installed.
The following actions will resolve these dependencies:

     Remove the following packages:
1)      cheese
2)      eog
3)      evolution
4)      evolution-plugins
5)      gnome-accessibility
6)      gnome-applets
7)      gnome-control-center
8)      gnome-core
9)      gnome-panel
10)     gnome-power-manager
11)     gnome-screensaver
12)     gnome-session
13)     gnome-session-fallback
14)     gnome-settings-daemon
15)     gnome-shell
16)     gnome-sushi
17)     libevolution
18)     libgnome-desktop-3-0
19)     nautilus
20)     nautilus-sendto

     Leave the following dependencies unresolved:
21)     alacarte recommends gnome-panel
22)     evolution-common recommends evolution
23)     gdm3 recommends gnome-power-manager (>= 2.28)
24)     gdm3 recommends gnome-settings-daemon
25)     gnome-control-center recommends gnome-session
26)     gnome-control-center-data recommends gnome-control-center (>= 1:3.0.2-3)
27)     gnome-session recommends gnome-power-manager
28)     gnome-session-fallback recommends gnome-power-manager
29)     gnome-system-tools recommends gnome-control-center (>= 1:2.10.1-1)
30)     metacity recommends gnome-session | x-session-manager
31)     mousetweaks recommends gnome-control-center
32)     evolution recommends evolution-plugins
33)     gnome-panel-data recommends gnome-panel
34)     nautilus-data recommends nautilus
35)     totem-plugins recommends gnome-settings-daemon
36)     gnome-panel recommends gnome-session (>= 2.26)
37)     gnome-panel recommends gnome-control-center

Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:

     Remove the following packages:
1)      libgnome-desktop-3-0

     Upgrade the following packages:
2)      cheese [3.2.2-1 (now, testing) -> 3.2.2-1+b1 (unstable)]
3)      eog [3.2.2-2 (now, testing) -> 3.2.2-2+b1 (unstable)]
4)      evolution-plugins [3.0.3-3 (now, testing) -> 3.0.3-3+b1 (unstable)]
5)      gnome-control-center [1:3.0.2-3 (now, testing) -> 1:3.0.2-3+b1 (unstable
6)      gnome-panel [3.2.1-1 (now) -> 3.2.1-1+b1 (unstable)]
7)      gnome-screensaver [3.0.1-3 (now, testing) -> 3.2.0-2+b1 (unstable)]
8)      gnome-settings-daemon [3.0.3-3 (now, testing) -> 3.0.3-3+b1 (unstable)]
9)      gnome-shell [3.0.2-8 (now, testing) -> 3.0.2-8+b1 (unstable)]
10)     libevolution [3.0.3-3 (now, testing) -> 3.0.3-3+b1 (unstable)]
11)     nautilus [3.2.1-2 (now) -> 3.2.1-2+b1 (unstable)]

Accept this solution? [Y/n/q/?]

The first solution is really bad as it removes various useful packages,
including evolution, that was asked to be installed on the command line
(I regard this one as a bug).

Agree.  Since there are many duplicates about other conflict resolution
preferences including not honouring user's requests, for the rest of the
reply I don't consider this question.


The second solution is OK, as only a library package is removed, and
such a package with no dependencies on it is useless.

Not necessarily.  The library might have been installed by hand for
extra sound plugins or other codecs, mesa libraries not strictly needed
according to the dependency system but worthy to have in that machine,
dvd decoding, or to support something installed in the system outside of
the package managers (e.g. a special version of a webserver or other
software, compiled in /usr/local, mounted through NFS, etc).

If it's not really installed for a special purpose, should have been
marked as automatically installed to get rid of it sooner.

I don't think that libraries should be treated that specially for
reasons of removals as in the example of the original report.  "useless"
doc packages or conflicts between icon sets might also come to mind as
being favoured to remove in conflict resolutions -- after all not having
doc installed usually doesn't break binaries ;-)

But more seriously, I think that the real problem is prefering many
removals and some keeps rather than a few upgrades and a single removal,
but not because it's specifically a library involved in that.


Cheers.
--
Manuel A. Fernandez Montecelo <[email protected]>

_______________________________________________
Aptitude-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/aptitude-devel

Reply via email to