On Sun Oct 19, 2014 09:32:54AM +0200, Matthias Urlichs wrote: > David Kalnischkies: > > Selecting one package in an or-group is a grand example of people not > > understand their tools although the policy is simple and logic: If it > > isn't impossible to let it win, the first alternative wins. If the > > package manager would go for any heuristic based on simplicity of > > installation instead everyone would have lsb-invalid-mta as MTA because > > that is damn easy to install by any standard. Maintainers are very > > heavily relying on this property while e.g. building packages. > > You don't have to drop that part of its logic. Choosing a different package > as a dependency should of course be a "last resort" action (i.e. be heavily > penalized). I'm not talking about changing that. I'm talking about the fact > that aptitude treats upgrading to a slightly-lower-prioritized version of a > package as a *way* worse solution than removing that package (and/or 500 > others). > > Basically, this boils down to the fact that people shouldn't have to read a > manpage about a complex priority scheme in an equally-complex resolver. > All I want is for aptitude to behave in a sane way by default.
I think it's time to use apt-cudf. On a standard sid installation with gnome, it could perfectly resolve this situation: % apt-get -s --solver aspcud install sysvinit-core Reading package lists... Done Building dependency tree Reading state information... Done Execute external solver... Done The following extra packages will be installed: cgmanager libcgmanager0 libnih-dbus1 libnih1 systemd-shim The following packages will be REMOVED: systemd-sysv The following NEW packages will be installed: cgmanager libcgmanager0 libnih-dbus1 libnih1 systemd-shim sysvinit-core 0 upgraded, 6 newly installed, 1 to remove and 0 not upgraded. Compare with apt-get without aspcud: % sudo apt-get -s install sysvinit-core Reading package lists... Done Building dependency tree Reading state information... Done The following package was automatically installed and is no longer required: linux-image-amd64 Use 'apt-get autoremove' to remove it. The following extra packages will be installed: cgmanager libcgmanager0 libnih-dbus1 libnih1 systemd-shim The following packages will be REMOVED: aptdaemon brasero colord gdm3 gnome gnome-bluetooth gnome-color-manager gnome-control-center gnome-core gnome-disk-utility gnome-packagekit gnome-packagekit-session gnome-session gnome-settings-daemon gnome-shell gnome-shell-extensions gnome-sushi gnome-system-log gnome-user-share gvfs gvfs-backends gvfs-daemons gvfs-fuse libpam-systemd nautilus nautilus-sendto network-manager network-manager-gnome packagekit packagekit-tools policykit-1 policykit-1-gnome systemd-sysv task-gnome-desktop udisks2 The following NEW packages will be installed: cgmanager libcgmanager0 libnih-dbus1 libnih1 systemd-shim sysvinit-core 0 upgraded, 6 newly installed, 35 to remove and 0 not upgraded. Best, TK -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20141019090313.ga29...@kr.tuwien.ac.at