Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 754756 - x11-libs/gdk-pixbuf-2.40.0 : file collision with x11-libs/gdk-pixbuf-xlib-2.40.2
Summary: x11-libs/gdk-pixbuf-2.40.0 : file collision with x11-libs/gdk-pixbuf-xlib-2.40.2
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-11-15 18:39 UTC by Toralf Förster
Modified: 2020-11-16 18:15 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,17.00 KB, text/plain)
2020-11-15 18:39 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,187.27 KB, text/plain)
2020-11-15 18:39 UTC, Toralf Förster
Details
etc.portage.tbz2 (etc.portage.tbz2,15.11 KB, application/x-bzip)
2020-11-15 18:39 UTC, Toralf Förster
Details
logs.tbz2 (logs.tbz2,11.75 KB, application/x-bzip)
2020-11-15 18:39 UTC, Toralf Förster
Details
x11-libs:gdk-pixbuf-2.40.0:20201115-181153.log (x11-libs:gdk-pixbuf-2.40.0:20201115-181153.log,212.62 KB, text/plain)
2020-11-15 18:39 UTC, Toralf Förster
Details
emerge.log.xz (emerge.log.xz,271.60 KB, application/x-bzip)
2020-11-15 22:59 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2020-11-15 18:39:45 UTC
 * 	/usr/include/gdk-pixbuf-2.0/gdk-pixbuf-xlib/gdk-pixbuf-xlib.h
 * 	/usr/lib64/libgdk_pixbuf_xlib-2.0.so
 * 	/usr/lib64/libgdk_pixbuf_xlib-2.0.so.0
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * x11-libs/gdk-pixbuf-xlib-2.40.2:0::gentoo
 * 	/usr/include/gdk-pixbuf-2.0/gdk-pixbuf-xlib/gdk-pixbuf-xlib.h
 * 	/usr/include/gdk-pixbuf-2.0/gdk-pixbuf-xlib/gdk-pixbuf-xlibrgb.h
 * 	/usr/lib64/libgdk_pixbuf_xlib-2.0.so
 * 	/usr/lib64/libgdk_pixbuf_xlib-2.0.so.0
 * 	/usr/lib64/pkgconfig/gdk-pixbuf-xlib-2.0.pc
 * 
 * Package 'x11-libs/gdk-pixbuf-2.40.0' NOT merged due to file

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1_desktop_plasma_systemd-20201109-205253

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-8.3.1
 [2] x86_64-pc-linux-gnu-10.2.0 *
clang version 11.0.0
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/11/bin
/usr/lib/llvm/11
11.0.0
Available Python interpreters, in order of preference:
  [1]   python3.7
  [2]   python3.9 (fallback)
  [3]   python3.8 (fallback)
  [4]   python2.7 (fallback)
  [5]   pypy3 (fallback)
Available Ruby profiles:
  [1]   ruby25 (with Rubygems)
  [2]   ruby26 (with Rubygems)
  [3]   ruby27 (with Rubygems) *
Available Rust versions:
  [1]   rust-1.47.0 *
The following VMs are available for generation-2:
*)	AdoptOpenJDK 8.272_p10 [openjdk-bin-8]
Available Java Virtual Machines:
  [1]   openjdk-bin-8  system-vm

The Glorious Glasgow Haskell Compilation System, version 8.8.4

  timestamp(s) of HEAD at this tinderbox image:
/var/db/repos/gentoo	Sun Nov 15 05:42:19 PM UTC 2020

emerge -qpvO x11-libs/gdk-pixbuf
[ebuild   R   ] x11-libs/gdk-pixbuf-2.42.0  USE="introspection jpeg tiff -gtk-doc" ABI_X86="(64) -32 (-x32)"
Comment 1 Toralf Förster gentoo-dev 2020-11-15 18:39:46 UTC
Created attachment 671545 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2020-11-15 18:39:48 UTC
Created attachment 671548 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2020-11-15 18:39:49 UTC
Created attachment 671551 [details]
etc.portage.tbz2
Comment 4 Toralf Förster gentoo-dev 2020-11-15 18:39:50 UTC
Created attachment 671554 [details]
logs.tbz2
Comment 5 Toralf Förster gentoo-dev 2020-11-15 18:39:52 UTC
Created attachment 671557 [details]
x11-libs:gdk-pixbuf-2.40.0:20201115-181153.log
Comment 6 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2020-11-15 18:54:31 UTC
How did you manage to get that collission? The package explicitly R/DEPENDs on >=x11-libs/gdk-pixbuf-2.42.0
Comment 7 Matt Turner gentoo-dev 2020-11-15 20:47:43 UTC
My suspicion is that /usr/lib64/libgdk_pixbuf_xlib-2.0.so and friends are left-over preserved-libs.

E.g., (1) gdk-pixbuf-2.40[X] was installed for some dependency which needed libgdk_pixbuf_xlib-2.0.so; (2) gdk-pixbuf was updated to 2.42, and preserved-libs kept libgdk_pixbuf_xlib-2.0.so around; (3) gdk-pixbuf-xlib is installed, causing the file collisions.

I don't think a blocker dep would help here, since my hypothesis is that this is due to preserved-libs.

Zac... any ideas how or if portage could handle this differently?
Comment 8 Zac Medico gentoo-dev 2020-11-15 21:53:53 UTC
The collision involves *.h and *.pc files as well as libraries, which suggests that it was caused by an interrupted merge. There's an 'emaint --check merges' command that will check for interrupted merges. The 'emaint --fix merges' command will remove the /var/db/pkg/*/*-MERGING-* directories, log them in /var/lib/portage/failed-merges, and will invoke emerge to rebuild the corresponding packages with FEATURES="-collision-protect -protect-owned".

Note that collision-protect is not enabled by default, which mitigates the problem. By default, FEATURES="protect-owned" is enabled so that users can ignore collisions with orphaned files.
Comment 9 Zac Medico gentoo-dev 2020-11-15 22:07:36 UTC
Actually, the log shows that x11-libs/gdk-pixbuf-xlib-2.40.2:0::gentoo was "normally" installed when the collision occurred. This indicates that the x11-libs/gdk-pixbuf-xlib-2.40.2:0::gentoo package would likely be removed by `emerge --depclean`, which is one of the reasons that we recommend to run `emerge --depclean` after @world updates.
Comment 10 Zac Medico gentoo-dev 2020-11-15 22:11:21 UTC
Note that emerge would resolve this collision by automatic uninstall of x11-libs/gdk-pixbuf-xlib if we put a soft blocker like RDEPEND+=" !x11-libs/gdk-pixbuf-xlib" in gdk-pixbuf-2.40.0.ebuild.
Comment 11 Toralf Förster gentoo-dev 2020-11-15 22:59:38 UTC
Created attachment 671572 [details]
emerge.log.xz

for completeness the whole emerge.log
Comment 12 Toralf Förster gentoo-dev 2020-11-16 17:58:00 UTC
(In reply to Zac Medico from comment #9)
> which is one of the reasons that we recommend to run
> `emerge --depclean` after @world updates.

*If* the tinderbox would install packages in the same (yes, randomized) order as a @world would do in the same situation - then no "--deplcean" would be scheduled by a common user, or?
Comment 13 Zac Medico gentoo-dev 2020-11-16 18:15:44 UTC
(In reply to Toralf Förster from comment #12)
> (In reply to Zac Medico from comment #9)
> > which is one of the reasons that we recommend to run
> > `emerge --depclean` after @world updates.
> 
> *If* the tinderbox would install packages in the same (yes, randomized)
> order as a @world would do in the same situation - then no "--deplcean"
> would be scheduled by a common user, or?

You'd never get into this particular state with a normal world update unless you had first upgraded to x11-libs/gdk-pixbuf-2.42.0 and x11-libs/gdk-pixbuf-xlib-2.40.2 and then masked them for some reason. In that case, we probably wouldn't expect the user to run emerge --depclean until after the next world update, and a blocker like RDEPEND+=" !x11-libs/gdk-pixbuf-xlib" in gdk-pixbuf-2.40.0.ebuild would resolve the collision automatically.