The algorithm for deciding which packages need to be removed doesn\'t seem to be perfect. Sometimes it decides to remove a package even if it could be left happily. For example, here two commands generate an identical sets of changes except for the removal of \'sawfish\': # apt-get install gnome-control-center xscreensaver Reading Package Lists... Done Collecting File Provides... Done Building Dependency Tree... Done The following extra packages will be installed: GConf2 ORBit2 bonobo-activation gnome-desktop gnome-settings gnome-vfs2 gnome2-user-docs libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libcapplet libgail libgnome libgnome-desktop libgnomeui libgtk+2 libgtkhtml2 liblinc libpango libstartup-notification libxslt yelp The following packages will be upgraded GConf2 ORBit2 bonobo-activation gnome-vfs2 libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libgnome libgnomeui libgtk+2 liblinc libpango libxslt The following packages will be REPLACED: control-center (by gnome-control-center) The following packages will be REMOVED: sawfish The following NEW packages will be installed: gnome-control-center gnome-desktop gnome-settings gnome2-user-docs libcapplet libgail libgnome-desktop libgtkhtml2 libstartup-notification xscreensaver yelp 16 packages upgraded, 11 newly installed, 1 replaced, 1 removed and 569 not upgraded. Need to get 3202kB/14,0MB of archives. After unpacking 12,0MB will be used. Do you want to continue? [Y/n] n Abort. # apt-get install gnome-control-center xscreensaver sawfish Reading Package Lists... Done Collecting File Provides... Done Building Dependency Tree... Done Sorry, sawfish is already the newest version. The following extra packages will be installed: GConf2 ORBit2 bonobo-activation gnome-desktop gnome-settings gnome-vfs2 gnome2-user-docs libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libcapplet libgail libgnome libgnome-desktop libgnomeui libgtk+2 libgtkhtml2 liblinc libpango libstartup-notification libxslt yelp The following packages will be upgraded GConf2 ORBit2 bonobo-activation gnome-vfs2 libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libgnome libgnomeui libgtk+2 liblinc libpango libxslt The following packages will be REPLACED: control-center (by gnome-control-center) The following NEW packages will be installed: gnome-control-center gnome-desktop gnome-settings gnome2-user-docs libcapplet libgail libgnome-desktop libgtkhtml2 libstartup-notification xscreensaver yelp 16 packages upgraded, 11 newly installed, 1 replaced, 0 removed and 569 not upgraded. Need to get 3202kB/14,0MB of archives. After unpacking 16,1MB will be used. Do you want to continue? [Y/n] n Abort. --- --- Here is what the debugging mode reports. I t can be seen that the decision to remove sawfish is done too early: [<a href="mailto:root@arrakis" target="_new">root@arrakis</a> root]# apt-get install gnome-control-center xscreensaver Reading Package Lists... Done Collecting File Provides... Done Building Dependency Tree... Done Starting Starting 2 Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 1 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to xscreensaver 10001 Added libcapplet to the remove list Fixing xscreensaver via keep of libcapplet Investigating sawfish Package sawfish has broken dep on libcapplet.so.0 Considering control-center 1 as a solution to sawfish 1 Removing sawfish rather than change libcapplet.so.0 Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 1 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to xscreensaver 10001 Added libcapplet to the remove list Fixing xscreensaver via keep of libcapplet Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 1 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to xscreensaver 10001 Added libcapplet to the remove list Fixing xscreensaver via keep of libcapplet Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 1 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 10001 as a solution to xscreensaver 10001 Re-Instated libcapplet Done The following extra packages will be installed: GConf2 ORBit2 bonobo-activation gnome-desktop gnome-settings gnome-vfs2 gnome2-user-docs libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libcapplet libgail libgnome libgnome-desktop libgnomeui libgtk+2 libgtkhtml2 liblinc libpango libstartup-notification libxslt yelp The following packages will be upgraded GConf2 ORBit2 bonobo-activation gnome-vfs2 libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libgnome libgnomeui libgtk+2 liblinc libpango libxslt The following packages will be REPLACED: control-center (by gnome-control-center) The following packages will be REMOVED: sawfish The following NEW packages will be installed: gnome-control-center gnome-desktop gnome-settings gnome2-user-docs libcapplet libgail libgnome-desktop libgtkhtml2 libstartup-notification xscreensaver yelp 16 packages upgraded, 11 newly installed, 1 replaced, 1 removed and 569 not upgraded. Need to get 3202kB/14,0MB of archives. After unpacking 12,0MB will be used. Do you want to continue? [Y/n] n Abort. [<a href="mailto:root@arrakis" target="_new">root@arrakis</a> root]# apt-get install gnome-control-center xscreensaver sawfish Reading Package Lists... Done Collecting File Provides... Done Building Dependency Tree... Done Sorry, sawfish is already the newest version. Starting Starting 2 Investigating gnome-control-center Package gnome-control-center has broken dep on control-center Considering control-center 3 as a solution to gnome-control-center 10001 Added control-center to the remove list Fixing gnome-control-center via remove of control-center Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 3 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to xscreensaver 10001 Added libcapplet to the remove list Fixing xscreensaver via keep of libcapplet Investigating sawfish Package sawfish has broken dep on libcapplet.so.0 Considering control-center 3 as a solution to sawfish 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to sawfish 10001 Added libcapplet to the remove list Fixing sawfish via keep of libcapplet Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 3 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to xscreensaver 10001 Added libcapplet to the remove list Fixing xscreensaver via keep of libcapplet Investigating sawfish Package sawfish has broken dep on libcapplet.so.0 Considering control-center 3 as a solution to sawfish 10001 Added control-center to the remove list Considering libcapplet 0 as a solution to sawfish 10001 Added libcapplet to the remove list Fixing sawfish via keep of libcapplet Investigating xscreensaver Package xscreensaver has broken dep on libcapplet.so.0 Considering control-center 3 as a solution to xscreensaver 10001 Added control-center to the remove list Considering libcapplet 10001 as a solution to xscreensaver 10001 Re-Instated libcapplet Done The following extra packages will be installed: GConf2 ORBit2 bonobo-activation gnome-desktop gnome-settings gnome-vfs2 gnome2-user-docs libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libcapplet libgail libgnome libgnome-desktop libgnomeui libgtk+2 libgtkhtml2 liblinc libpango libstartup-notification libxslt yelp The following packages will be upgraded GConf2 ORBit2 bonobo-activation gnome-vfs2 libGConf2 libORBit2 libatk libbonobo-activation libbonobo2 libbonoboui libgnome libgnomeui libgtk+2 liblinc libpango libxslt The following packages will be REPLACED: control-center (by gnome-control-center) The following NEW packages will be installed: gnome-control-center gnome-desktop gnome-settings gnome2-user-docs libcapplet libgail libgnome-desktop libgtkhtml2 libstartup-notification xscreensaver yelp 16 packages upgraded, 11 newly installed, 1 replaced, 0 removed and 569 not upgraded. Need to get 3202kB/14,0MB of archives. After unpacking 16,1MB will be used. Do you want to continue? [Y/n] n Abort.
Now it works better.