[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apt-get install sysvinit-core removes gnome?



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


Reply to: