Bug#865399: libghc-cabal-dev and ghc: error when trying to install together

Ralf Treinen treinen at free.fr
Wed Jun 21 05:52:47 UTC 2017


Package: ghc,libghc-cabal-dev
Version: ghc/8.0.2-1
Version: libghc-cabal-dev/1.24.2.0-1+b1
Severity: serious
User: treinen at debian.org
Usertags: edos-file-overwrite

Date: 2017-06-21
Architecture: amd64
Distribution: sid

Hi,

automatic installation tests of packages that share a file and at the
same time do not conflict by their package dependency relationships has
detected the following problem:



Extracting templates from packages: 78%
Extracting templates from packages: 100%
Selecting previously unselected package gcc-6-base:amd64.
(Reading database ... 11004 files and directories currently installed.)
Preparing to unpack .../gcc-6-base_6.3.0-18_amd64.deb ...
Unpacking gcc-6-base:amd64 (6.3.0-18) ...
Selecting previously unselected package libgmp10:amd64.
Preparing to unpack .../libgmp10_2%3a6.1.2+dfsg-1_amd64.deb ...
Unpacking libgmp10:amd64 (2:6.1.2+dfsg-1) ...
Selecting previously unselected package libisl15:amd64.
Preparing to unpack .../libisl15_0.18-1_amd64.deb ...
Unpacking libisl15:amd64 (0.18-1) ...
Selecting previously unselected package libmpfr4:amd64.
Preparing to unpack .../libmpfr4_3.1.5-1_amd64.deb ...
Unpacking libmpfr4:amd64 (3.1.5-1) ...
Selecting previously unselected package libmpc3:amd64.
Preparing to unpack .../libmpc3_1.0.3-1+b2_amd64.deb ...
Unpacking libmpc3:amd64 (1.0.3-1+b2) ...
Selecting previously unselected package cpp-6.
Preparing to unpack .../cpp-6_6.3.0-18_amd64.deb ...
Unpacking cpp-6 (6.3.0-18) ...
Selecting previously unselected package cpp.
Preparing to unpack .../cpp_4%3a6.3.0-4_amd64.deb ...
Unpacking cpp (4:6.3.0-4) ...
Selecting previously unselected package gcc-7-base:amd64.
Preparing to unpack .../gcc-7-base_7.1.0-7_amd64.deb ...
Unpacking gcc-7-base:amd64 (7.1.0-7) ...
Processing triggers for libc-bin (2.24-12) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up gcc-7-base:amd64 (7.1.0-7) ...
(Reading database ... 11063 files and directories currently installed.)
Preparing to unpack .../libgcc1_1%3a7.1.0-7_amd64.deb ...
Unpacking libgcc1:amd64 (1:7.1.0-7) over (1:4.8.2-19) ...
Processing triggers for libc-bin (2.24-12) ...
Setting up libgcc1:amd64 (1:7.1.0-7) ...
Processing triggers for libc-bin (2.24-12) ...
(Reading database ... 11063 files and directories currently installed.)
Preparing to unpack .../libstdc++6_7.1.0-7_amd64.deb ...
Unpacking libstdc++6:amd64 (7.1.0-7) over (4.8.2-19) ...
Processing triggers for libc-bin (2.24-12) ...
Setting up libstdc++6:amd64 (7.1.0-7) ...
Processing triggers for libc-bin (2.24-12) ...
Selecting previously unselected package libcc1-0:amd64.
(Reading database ... 11077 files and directories currently installed.)
Preparing to unpack .../libcc1-0_7.1.0-7_amd64.deb ...
Unpacking libcc1-0:amd64 (7.1.0-7) ...
Selecting previously unselected package binutils.
Preparing to unpack .../binutils_2.28-6_amd64.deb ...
Unpacking binutils (2.28-6) ...
Selecting previously unselected package libgomp1:amd64.
Preparing to unpack .../libgomp1_7.1.0-7_amd64.deb ...
Unpacking libgomp1:amd64 (7.1.0-7) ...
Selecting previously unselected package libitm1:amd64.
Preparing to unpack .../libitm1_7.1.0-7_amd64.deb ...
Unpacking libitm1:amd64 (7.1.0-7) ...
Selecting previously unselected package libatomic1:amd64.
Preparing to unpack .../libatomic1_7.1.0-7_amd64.deb ...
Unpacking libatomic1:amd64 (7.1.0-7) ...
Selecting previously unselected package libasan3:amd64.
Preparing to unpack .../libasan3_6.3.0-18_amd64.deb ...
Unpacking libasan3:amd64 (6.3.0-18) ...
Selecting previously unselected package liblsan0:amd64.
Preparing to unpack .../liblsan0_7.1.0-7_amd64.deb ...
Unpacking liblsan0:amd64 (7.1.0-7) ...
Selecting previously unselected package libtsan0:amd64.
Preparing to unpack .../libtsan0_7.1.0-7_amd64.deb ...
Unpacking libtsan0:amd64 (7.1.0-7) ...
Selecting previously unselected package libubsan0:amd64.
Preparing to unpack .../libubsan0_7.1.0-7_amd64.deb ...
Unpacking libubsan0:amd64 (7.1.0-7) ...
Selecting previously unselected package libcilkrts5:amd64.
Preparing to unpack .../libcilkrts5_7.1.0-7_amd64.deb ...
Unpacking libcilkrts5:amd64 (7.1.0-7) ...
Selecting previously unselected package libmpx2:amd64.
Preparing to unpack .../libmpx2_7.1.0-7_amd64.deb ...
Unpacking libmpx2:amd64 (7.1.0-7) ...
Selecting previously unselected package libquadmath0:amd64.
Preparing to unpack .../libquadmath0_7.1.0-7_amd64.deb ...
Unpacking libquadmath0:amd64 (7.1.0-7) ...
Selecting previously unselected package libgcc-6-dev:amd64.
Preparing to unpack .../libgcc-6-dev_6.3.0-18_amd64.deb ...
Unpacking libgcc-6-dev:amd64 (6.3.0-18) ...
Selecting previously unselected package gcc-6.
Preparing to unpack .../gcc-6_6.3.0-18_amd64.deb ...
Unpacking gcc-6 (6.3.0-18) ...
Selecting previously unselected package gcc.
Preparing to unpack .../gcc_4%3a6.3.0-4_amd64.deb ...
Unpacking gcc (4:6.3.0-4) ...
Selecting previously unselected package libgmpxx4ldbl:amd64.
Preparing to unpack .../libgmpxx4ldbl_2%3a6.1.2+dfsg-1_amd64.deb ...
Unpacking libgmpxx4ldbl:amd64 (2:6.1.2+dfsg-1) ...
Selecting previously unselected package libgmp-dev:amd64.
Preparing to unpack .../libgmp-dev_2%3a6.1.2+dfsg-1_amd64.deb ...
Unpacking libgmp-dev:amd64 (2:6.1.2+dfsg-1) ...
Selecting previously unselected package libffi6:amd64.
Preparing to unpack .../libffi6_3.2.1-6_amd64.deb ...
Unpacking libffi6:amd64 (3.2.1-6) ...
Selecting previously unselected package libffi-dev:amd64.
Preparing to unpack .../libffi-dev_3.2.1-6_amd64.deb ...
Unpacking libffi-dev:amd64 (3.2.1-6) ...
Selecting previously unselected package libbsd0:amd64.
Preparing to unpack .../libbsd0_0.8.4-1_amd64.deb ...
Unpacking libbsd0:amd64 (0.8.4-1) ...
Selecting previously unselected package libbsd-dev:amd64.
Preparing to unpack .../libbsd-dev_0.8.4-1_amd64.deb ...
Unpacking libbsd-dev:amd64 (0.8.4-1) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../libc-dev-bin_2.24-12_amd64.deb ...
Unpacking libc-dev-bin (2.24-12) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../linux-libc-dev_4.11.6-1_amd64.deb ...
Unpacking linux-libc-dev:amd64 (4.11.6-1) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../libc6-dev_2.24-12_amd64.deb ...
Unpacking libc6-dev:amd64 (2.24-12) ...
Selecting previously unselected package libtinfo-dev:amd64.
Preparing to unpack .../libtinfo-dev_6.0+20161126-1_amd64.deb ...
Unpacking libtinfo-dev:amd64 (6.0+20161126-1) ...
Selecting previously unselected package libncurses5-dev:amd64.
Preparing to unpack .../libncurses5-dev_6.0+20161126-1_amd64.deb ...
Unpacking libncurses5-dev:amd64 (6.0+20161126-1) ...
Selecting previously unselected package ghc.
Preparing to unpack .../archives/ghc_8.0.2-1_amd64.deb ...
Unpacking ghc (8.0.2-1) ...
Selecting previously unselected package libghc-cabal-dev.
Preparing to unpack .../libghc-cabal-dev_1.24.2.0-1+b1_amd64.deb ...
Unpacking libghc-cabal-dev (1.24.2.0-1+b1) ...
dpkg: error processing archive /var/cache/apt/archives/libghc-cabal-dev_1.24.2.0-1+b1_amd64.deb (--unpack):
 trying to overwrite '/var/lib/ghc/package.conf.d/Cabal-1.24.2.0.conf', which is also in package ghc 8.0.2-1
Processing triggers for libc-bin (2.24-12) ...
Processing triggers for man-db (2.7.6.1-2) ...
Processing triggers for install-info (6.3.0.dfsg.1-1+b2) ...
Errors were encountered while processing:
 /var/cache/apt/archives/libghc-cabal-dev_1.24.2.0-1+b1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
E: Error calling setupterm: -1
E: cow-shell unlink .ilist: No such file or directory


This is a serious bug as it makes installation fail, and violates
sections 7.6.1 and 10.1 of the policy. An optimal solution would
consist in only one of the packages installing that file, and renaming
or removing the file in the other package. Depending on the
circumstances you might also consider Replace relations or file
diversions. If the conflicting situation cannot be resolved then, as a
last resort, the two packages have to declare a mutual
Conflict. Please take into account that Replaces, Conflicts and
diversions should only be used when packages provide different
implementations for the same functionality.

Here is a list of files that are known to be shared by both packages
(according to the Contents file for sid/amd64, which may be
slightly out of sync):

  /var/lib/ghc/package.conf.d/Cabal-1.24.2.0.conf

This bug has been filed against both packages. If you, the maintainers of
the two packages in question, have agreed on which of the packages will
resolve the problem please reassign the bug to that package. You may then
also register in the BTS that the other package is affected by the bug.

-Ralf.

PS: for more information about the detection of file overwrite errors
of this kind see http://qa.debian.org/dose/file-overwrites.html.



More information about the Pkg-haskell-maintainers mailing list