[Touch-packages] [Bug 146398] Re: gdebi ignores Replaces directive in case of Conflict
Here is an updated foo-packages.tar.gz file to reproduce this issue. The updates mostly deal with changes in Debian policy such as adding debian/compat and updating DH_COMPAT. The new foo-packages.tar.gz also contains pre-built packages which you are free to use or delete and rebuild. ** Attachment added: "Test packages" https://bugs.launchpad.net/ubuntu/+source/python-apt/+bug/146398/+attachment/5387168/+files/foo-packages.tar.gz -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to python-apt in Ubuntu. https://bugs.launchpad.net/bugs/146398 Title: gdebi ignores Replaces directive in case of Conflict Status in python-apt package in Ubuntu: Triaged Bug description: Binary package hint: gdebi I have encountered this problem with the CrossOver Office (http://www.codeweavers.com/products/cxoffice/) packages. They come in multiple flavors, but only one can be installed at a given time. The more capable flavors use the 'Replaces' directive to smoothly 'upgrade' the less capable ones.This works fine with dpkg, but gdebi instead gives me an error as if the Replaces directive was not there (this directive is described in section 7.5.2 of the Debian Policy Manual). I have reproduced the situation with dummy packages so you have all the details. You can get them there: * source (1.4KB) http://fgouget.free.fr/tmp/gdebi/foo-packages.tar.gz * basic package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo_1.0.0-1_i386.deb * sophisticated package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo-pro_1.0.0-1_i386.deb Here is how to reproduce the problem: $ sudo gdebi foo_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done Package for testing gdebi's Replaces support This is the package to be replaced by the more 'sophisticated' version. Do you want to install the software package? [y/N]:y Selecting previously deselected package foo. (Reading database ... 151236 files and directories currently installed.) Unpacking foo (from foo_1.0.0-1_i386.deb) ... Setting up foo (1.0.0-1) ... $ sudo gdebi foo-pro_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done This package is uninstallable Conflicts with the installed package 'foo' So gdebi does not want 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: $ dpkg -i foo-pro_1.0.0-1_i386.deb 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 ... 151239 files and directories currently installed.) Unpacking foo-pro (from foo-pro_1.0.0-1_i386.deb) ... Setting up foo-pro (1.0.0-1) ... To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/python-apt/+bug/146398/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp
[Touch-packages] [Bug 146398] Re: gdebi ignores Replaces directive in case of Conflict
This 12+ years old bug is still present in gdebi 0.9.5.7 (as shipped in Ubuntu 16.10 to the current 20.04 and Debian 10 for instance). Given that gdebi 0.9.5.7 was released in 2015 I have to ask the question: Is gdebi still maintained? -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to python-apt in Ubuntu. https://bugs.launchpad.net/bugs/146398 Title: gdebi ignores Replaces directive in case of Conflict Status in python-apt package in Ubuntu: Triaged Bug description: Binary package hint: gdebi I have encountered this problem with the CrossOver Office (http://www.codeweavers.com/products/cxoffice/) packages. They come in multiple flavors, but only one can be installed at a given time. The more capable flavors use the 'Replaces' directive to smoothly 'upgrade' the less capable ones.This works fine with dpkg, but gdebi instead gives me an error as if the Replaces directive was not there (this directive is described in section 7.5.2 of the Debian Policy Manual). I have reproduced the situation with dummy packages so you have all the details. You can get them there: * source (1.4KB) http://fgouget.free.fr/tmp/gdebi/foo-packages.tar.gz * basic package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo_1.0.0-1_i386.deb * sophisticated package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo-pro_1.0.0-1_i386.deb Here is how to reproduce the problem: $ sudo gdebi foo_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done Package for testing gdebi's Replaces support This is the package to be replaced by the more 'sophisticated' version. Do you want to install the software package? [y/N]:y Selecting previously deselected package foo. (Reading database ... 151236 files and directories currently installed.) Unpacking foo (from foo_1.0.0-1_i386.deb) ... Setting up foo (1.0.0-1) ... $ sudo gdebi foo-pro_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done This package is uninstallable Conflicts with the installed package 'foo' So gdebi does not want 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: $ dpkg -i foo-pro_1.0.0-1_i386.deb 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 ... 151239 files and directories currently installed.) Unpacking foo-pro (from foo-pro_1.0.0-1_i386.deb) ... Setting up foo-pro (1.0.0-1) ... To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/python-apt/+bug/146398/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp
[Touch-packages] [Bug 146398] Re: gdebi ignores Replaces directive in case of Conflict
** Description changed: Binary package hint: gdebi I have encountered this problem with the CrossOver Office (http://www.codeweavers.com/products/cxoffice/) packages. They come in multiple flavors, but only one can be installed at a given time. The more capable flavors use the 'Replaces' directive to smoothly 'upgrade' the less capable ones.This works fine with dpkg, but gdebi instead gives me an error as if the Replaces directive was not there (this directive is described in section 7.5.2 of the Debian Policy Manual). I have reproduced the situation with dummy packages so you have all the details. You can get them there: - * source (1.4KB) -http://fgouget.free.fr/tmp/gdebi/foo-packages.tar.gz - * basic package (1.2KB) -http://fgouget.free.fr/tmp/gdebi/foo_1.0.0-1_i386.deb - * sophisticated package (1.2KB) -http://fgouget.free.fr/tmp/gdebi/foo-pro_1.0.0-1_i386.deb + * source (1.4KB) + http://fgouget.free.fr/tmp/gdebi/foo-packages.tar.gz + * basic package (1.2KB) + http://fgouget.free.fr/tmp/gdebi/foo_1.0.0-1_i386.deb + * sophisticated package (1.2KB) + http://fgouget.free.fr/tmp/gdebi/foo-pro_1.0.0-1_i386.deb Here is how to reproduce the problem: $ sudo gdebi foo_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done Package for testing gdebi's Replaces support - This is the package to be replaced by the more 'sophisticated' version. + This is the package to be replaced by the more 'sophisticated' version. Do you want to install the software package? [y/N]:y Selecting previously deselected package foo. (Reading database ... 151236 files and directories currently installed.) Unpacking foo (from foo_1.0.0-1_i386.deb) ... Setting up foo (1.0.0-1) ... $ sudo gdebi foo-pro_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done This package is uninstallable Conflicts with the installed package 'foo' So gdebi does not want 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: $ dpkg -i foo-pro_1.0.0-1_i386.deb 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 ... 151239 files and directories currently installed.) Unpacking foo-pro (from foo-pro_1.0.0-1_i386.deb) ... Setting up foo-pro (1.0.0-1) ... -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to python-apt in Ubuntu. https://bugs.launchpad.net/bugs/146398 Title: gdebi ignores Replaces directive in case of Conflict Status in python-apt package in Ubuntu: Triaged Bug description: Binary package hint: gdebi I have encountered this problem with the CrossOver Office (http://www.codeweavers.com/products/cxoffice/) packages. They come in multiple flavors, but only one can be installed at a given time. The more capable flavors use the 'Replaces' directive to smoothly 'upgrade' the less capable ones.This works fine with dpkg, but gdebi instead gives me an error as if the Replaces directive was not there (this directive is described in section 7.5.2 of the Debian Policy Manual). I have reproduced the situation with dummy packages so you have all the details. You can get them there: * source (1.4KB) http://fgouget.free.fr/tmp/gdebi/foo-packages.tar.gz * basic package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo_1.0.0-1_i386.deb * sophisticated package (1.2KB) http://fgouget.free.fr/tmp/gdebi/foo-pro_1.0.0-1_i386.deb Here is how to reproduce the problem: $ sudo gdebi foo_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done Package for testing gdebi's Replaces support This is the package to be replaced by the more 'sophisticated' version. Do you want to install the software package? [y/N]:y Selecting previously deselected package foo. (Reading database ... 151236 files and directories currently installed.) Unpacking foo (from foo_1.0.0-1_i386.deb) ... Setting up foo (1.0.0-1) ... $ sudo gdebi foo-pro_1.0.0-1_i386.deb Reading package lists: Done Reading state information: Done Reading state information: Done Reading state information: Done This package is uninstallable Conflicts with the installed package 'foo' So gdebi does not want 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: $ dpkg -i foo-pro_1.0.0-1_i386.deb Selecting previously deselected package foo-pro. dpkg: considering removing foo in favour of foo-pro ...