software-center ignores Replaces directive in case of Conflict
I have encountered this problem with the CrossOver Office (http://
I have reproduced the situation with dummy packages so you have all the details. You can get them there:
* source (1.4KB)
* basic package (1.2KB)
* sophisticated package (1.2KB)
Here is how to reproduce the problem:
* Run: software-center foo_1.0.
* Install the 'foo' package. This is the package to be replaced by the more 'sophisticated' version.
* Then run software-centeri foo-pro_
* You get the following message:
> Breaks existing package 'foo' that conflict: 'foo-highlander'. But the
* The 'Install' button is enabled which is good, but when clicking on it disables the button and nothing seems to happen.
* Indeed running 'dpkg -l foo-pro' shows the package has not been installed.
So software-center does not want or fails to replace the foo package with foo-pro. I think it should maybe warn the user but still allow him to proceed. With dpkg there is no issue:
$ sudo dpkg -i foo-pro_
Selecting previously deselected package foo-pro.
dpkg: considering removing foo in favour of foo-pro ...
dpkg: yes, will remove foo in favour of foo-pro.
(Reading database ... 127365 files and directories currently installed.)
Unpacking foo-pro (from foo-pro_
Setting up foo-pro (1.0.0-1) ...
As a side not, the same issue plagued gdebi a long time ago and now plagues it again. See bug #146398.
DistroRelease: Ubuntu 11.10
Package: software-center 22.214.171.124
Uname: Linux 3.0.0-12-generic i686
Date: Thu Dec 29 12:41:39 2011
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release i386 (20111012)
PATH=(custom, no user)
UpgradeStatus: No upgrade log present (probably fresh install)