FS#39219 - [nvidia-libgl] conflict with mesa

Attached to Project: Arch Linux
Opened by Olivier Langlois (lano1106) - Saturday, 08 March 2014, 04:57 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Saturday, 08 March 2014, 18:53 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Ionut Biru (wonder)
Sven-Hendrik Haase (Svenstaro)
Laurent Carlier (lordheavy)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 50
Private No

Details

Description:

Those files are present in mesa:

nvidia-libgl /usr/lib/libEGL.so
nvidia-libgl /usr/lib/libEGL.so.1
nvidia-libgl /usr/lib/libGLESv1_CM.so
nvidia-libgl /usr/lib/libGLESv1_CM.so.1
nvidia-libgl /usr/lib/libGLESv2.so
nvidia-libgl /usr/lib/libGLESv2.so.2

Also one or more of these files are dependent of libnvidia-glsi.so.334.21 which is missing.

If you force the installation of this package to overwrite mesa files, a bunch of applications stop working because of the missing dependency.

firefox being one of them

Additional info:
* package version: 334.21-2


Steps to reproduce:
This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Saturday, 08 March 2014, 18:53 GMT
Reason for closing:  Fixed
Comment by Andrew Gaydenko (student975) - Saturday, 08 March 2014, 05:05 GMT
Confirming.

:: Synchronizing package databases...
core is up to date
extra 1455.0 KiB 3.91M/s 00:00 [########################################################################################] 100%
community 2.1 MiB 5.05M/s 00:00 [########################################################################################] 100%
multilib is up to date
Foreign packages: - 14 / 14

==> Package upgrade only (new release):
extra/nvidia-utils 334.21-1 1 -> 2
extra/nvidia-libgl 334.21-1 1 -> 2
extra/opencl-nvidia 334.21-1 1 -> 2

==> Continue upgrade ? [Y/n]
==> [V]iew package detail [M]anually select packages
==> --------------------------------------------------
==>
:: Starting full system upgrade...
warning: webkitgtk2: ignoring package upgrade (1.10.2-8 => 2.2.5-2)
resolving dependencies...
looking for inter-conflicts...

Packages (3): nvidia-libgl-334.21-2 nvidia-utils-334.21-2 opencl-nvidia-334.21-2

Total Download Size: 25.08 MiB
Total Installed Size: 120.19 MiB
Net Upgrade Size: 1.00 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages ...
nvidia-utils-334.21-2-x86_64 15.1 MiB 7.39M/s 00:02 [########################################################################################] 100%
nvidia-libgl-334.21-2-x86_64 1396.0 B 0.00B/s 00:00 [########################################################################################] 100%
opencl-nvidia-334.21-2-x86_64 9.9 MiB 6.16M/s 00:02 [########################################################################################] 100%
(3/3) checking keys in keyring [########################################################################################] 100%
(3/3) checking package integrity [########################################################################################] 100%
(3/3) loading package files [########################################################################################] 100%
(3/3) checking for file conflicts [########################################################################################] 100%
error: failed to commit transaction (conflicting files)
nvidia-libgl: /usr/lib/libEGL.so exists in filesystem
nvidia-libgl: /usr/lib/libEGL.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so.2 exists in filesystem
Errors occurred, no packages were upgraded.
~ $
Comment by Felix Yan (felixonmars) - Saturday, 08 March 2014, 05:25 GMT
The conflicting files from mesa should be splitted to mesa-libgl as well, to make the splitting actually work.
Comment by Tim (twilson) - Saturday, 08 March 2014, 06:41 GMT
I can confirm what Andrew reported. Pacman complained about those /usr/lib/libGL* and libEGL* symlinks existing. After manually removing symlinks, nvidia packages upgraded fine. The symlinks reappeared. However, libnvidia-glsi.so.334.21 was then missing, which resulted in xfce4 and other things not starting properly.
Comment by Gustavo Alvarez (sl1pkn07) - Saturday, 08 March 2014, 07:34 GMT
also need libegl/libgles to nvidia-libgl provides (and remove from mesa provides, and also add to mesa-libgl provides)
Comment by Swâmi Petaramesh (petaramesh) - Saturday, 08 March 2014, 07:41 GMT
Confirming bug here. #MeToo
Comment by jimmy call (e8hffff) - Saturday, 08 March 2014, 08:09 GMT
confirm here too.
Comment by rewpqighpoqiuer (pekka) - Saturday, 08 March 2014, 08:36 GMT
confirm here too.
Comment by Ernst Jedermann (ernst_jedermann) - Saturday, 08 March 2014, 09:04 GMT
confirm, same problem
Comment by Pierre Schmitz (Pierre) - Saturday, 08 March 2014, 09:05 GMT
Please stop confirming; this is an obvious file conflict.
Comment by AndrzejL (AndrzejL) - Saturday, 08 March 2014, 10:26 GMT
I know we should stop confirming so I will just add that if You will remove those files and then upgrade after a reboot You will end up with a unusable DE (in KDE4 window decorations were gone and there was no desktop effects and keyboard input was dead) :P.

Kind regards.

Andrzej
Comment by Patrick Houle (Buddlespit) - Saturday, 08 March 2014, 12:57 GMT
just in case someone gets stuck by doing something stupid (like I did) and forces the upgrade:

# pacman -U /var/cache/pacman/pkg/nvidia-libgl-334.21-1

will revert back.
Comment by Laurent Carlier (lordheavy) - Saturday, 08 March 2014, 13:36 GMT
Please check with mesa-10.1.0-2 in testing
Comment by Gustavo Alvarez (sl1pkn07) - Saturday, 08 March 2014, 13:50 GMT
- in mesa package: remove 'libegl' 'libgles' provides/conflicts/replaces

- in mesa-libgl: add 'libegl' 'libgles' provides/conflicts/replaces

- in nvidia-libgl: add 'libegl' 'libgles' provides/conflicts/replaces

EDIT
Comment by Pierre Schmitz (Pierre) - Saturday, 08 March 2014, 14:20 GMT
nvidia-libgl contaisn a few broken links: (see pacman -Qqk)

nvidia-libgl /usr/lib/libGLESv1_CM.so.1
nvidia-libgl /usr/lib/libGLESv1_CM.so.334.21
nvidia-libgl /usr/lib/libGLESv2.so.2
nvidia-libgl /usr/lib/libGLESv2.so.334.21
Comment by Felix Yan (felixonmars) - Saturday, 08 March 2014, 14:32 GMT
I'm attaching a patch for nvidia-utils, to install the missing libraries.

But the broken links in nvidia-libgl is just weird, you can see the link target is actually in the package, either through `pacman -Ql nvidia-libgl`, or `bsdtar -tf nvidia-libgl-334.21-2-x86_64.pkg.tar.xz`, but it is not installed to the disk.
Comment by Phil Schaf (flying-sheep) - Saturday, 08 March 2014, 14:35 GMT
mesa-10.1.0-2 doesn’t work.

applications didn’t find libnvidia-glsi.so anymore after i tried it.
Comment by Felix Yan (felixonmars) - Saturday, 08 March 2014, 14:38 GMT
@Phil
If you got time, maybe try my patch to the PKGBUILD, and install the built packages together with mesa 10.1.0-2.
Comment by Felix Yan (felixonmars) - Saturday, 08 March 2014, 14:50 GMT
Ah I find it, it was just a typo in the PKGBUILD.

Attaching a revised patch to fix this too.
Comment by Phil Schaf (flying-sheep) - Saturday, 08 March 2014, 14:51 GMT
@Felix: why not upload builds to testing, if it works for you?
Comment by Felix Yan (felixonmars) - Saturday, 08 March 2014, 15:09 GMT
Not my package :P

Uploaded here, if you're interested: http://pkgbuild.com/~fyan/staging/
Comment by Tim (blackout23) - Saturday, 08 March 2014, 15:15 GMT
I installed mesa-10.1.0-2 from [ŧesting]. I patched the nvidia-utils 334.21-2 PKGBUILD with Philips patch and installed the resulting packages without problems. I ran pacman -Syu to update the rest of my packages and rebooted without problems.
All my applications work sofar. I'm not able to run weston with GLES2, though.

"[16:09:57.016] Failed to load module: libGLESv2.so.2: cannot open shared object file: No such file or directory"

This worked when I was using the nvidia-beta from AUR. Det has some routines in his *.install to handle the GLES and EGL stuff.

EDIT: Now using the second patch and weston works.
Comment by Phil Schaf (flying-sheep) - Saturday, 08 March 2014, 15:27 GMT
@Felix: everything peachy, thanks for the work!
Comment by Romain VILLERMAUX (Romain) - Saturday, 08 March 2014, 15:34 GMT
@Felix: Done, everything works perfectly, thanks.
Comment by Aleksander Szczygieł (Aelspire) - Saturday, 08 March 2014, 16:25 GMT
@Felix: everything work, thanks!

I installed mesa-10.1.0-2 x86_64 from [testing] and packages (x86_64) form Felix link.
System rebooted without errors, and it's look like everything work fine.
Comment by Andrew Gaydenko (student975) - Saturday, 08 March 2014, 17:29 GMT
New versions are in repo:

==> Package upgrade only (new release):
extra/clutter 1.16.4-1 1 -> 2
extra/nvidia-utils 334.21-1 1 -> 3
extra/nvidia-libgl 334.21-1 1 -> 3
extra/opencl-nvidia 334.21-1 1 -> 3

But still:

error: failed to commit transaction (conflicting files)
nvidia-libgl: /usr/lib/libEGL.so exists in filesystem
nvidia-libgl: /usr/lib/libEGL.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so.2 exists in filesystem

Comment by Perfect_Gentleman (Perfect_Gentleman) - Saturday, 08 March 2014, 17:30 GMT
$ sudo pacman -S nvidia-utils nvidia-libgl
resolving dependencies...
looking for inter-conflicts...

Packages (2): nvidia-libgl-334.21-3 nvidia-utils-334.21-3

Total Download Size: 21.48 MiB
Total Installed Size: 119.33 MiB
Net Upgrade Size: 39.84 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages ...
nvidia-utils-334.21-3-x86_64 21.5 MiB 271K/s 01:21 [#######################################################] 99%
nvidia-libgl-334.21-3-x86_64 21.5 MiB 270K/s 01:22 [#######################################################] 100%
(2/2) checking keys in keyring [#######################################################] 100%
(2/2) checking package integrity [#######################################################] 100%
(2/2) loading package files [#######################################################] 100%
(2/2) checking for file conflicts [#######################################################] 100%
error: failed to commit transaction (conflicting files)
nvidia-libgl: /usr/lib/libEGL.so exists in filesystem
nvidia-libgl: /usr/lib/libEGL.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv1_CM.so.1 exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so exists in filesystem
nvidia-libgl: /usr/lib/libGLESv2.so.2 exists in filesystem
Errors occurred, no packages were upgrade
Comment by Tim (blackout23) - Saturday, 08 March 2014, 17:49 GMT
Of course you can't install the new version aslong as these files are still owned by your old mesa package. Only the new mesa 10.1 package in testing has this fixed. So install it first and after that the new nvidia packages.
Comment by Sven-Hendrik Haase (Svenstaro) - Saturday, 08 March 2014, 17:58 GMT Comment by Ken Gunderson (kgunders) - Saturday, 08 March 2014, 18:21 GMT
Tested and working for me :)
Comment by Sven-Hendrik Haase (Svenstaro) - Saturday, 08 March 2014, 18:22 GMT
Do you get 3D and everything?
Comment by Vincent Gibault (VGib) - Saturday, 08 March 2014, 18:23 GMT
it works for me
Thanks
Comment by Ken Gunderson (kgunders) - Saturday, 08 March 2014, 18:25 GMT
I don't use 3D and not sure how to test for that. 64bit system w/o multilibs. xorg logs only have this about 3D:

[ 10.172] (II) NVIDIA(0): Display (Samsung SyncMaster (DFP-0)) does not support NVIDIA
[ 10.172] (II) NVIDIA(0): 3D Vision stereo.
Comment by Vincent Gibault (VGib) - Saturday, 08 March 2014, 18:26 GMT
I get 3D in google earth, but it seems to crash after a few minutes
Comment by George (Vash63) - Saturday, 08 March 2014, 18:27 GMT
Sven, does that mesa package only work with a specific version of the nvidia binaries? Obviously mesa-libgl conflicts with nvidia-libgl so I'm not trying to install that one, but I can't install your mesa package with nvidia-libgl-334.21-3 installed. Your mesa 10.0.3-2 with nvidia-libgl-334.21-3 gives this when starting Firefox:
XPCOMGlueLoad error for file /usr/lib/firefox/libxul.so:
libnvidia-glsi.so.334.21: cannot open shared object file: No such file or directory

If I downgrade to nvidia-libgl-334.21-1 I get:
XPCOMGlueLoad error for file /usr/lib/firefox/libxul.so:
libEGL.so.1: cannot open shared object file: No such file or directory


EDIT: Nevermind, I had been putting off my full system update due to file conflicts, the latest versions of nvidia-utils and nvidia-libgl fixed it. I can get 3D working great with your mesa package and the latest nvidia-libgl.
Comment by John Reese (jreese) - Saturday, 08 March 2014, 18:33 GMT
Installed svenstaro's new mesa package, and then upgraded nvidia-libgl and rebooted, and I was able to play a game and use the steam overlay just fine.
Comment by William Swanson (s_tec) - Saturday, 08 March 2014, 18:46 GMT
I did:

$ wget http://144.76.100.20/svens_stuff/mesa-10.0.3-2-x86_64.pkg.tar.xz
# pacman -U mesa-10.0.3-2-x86_64.pkg.tar.xz
# pacman -Su

After rebooting my system, I was able to run 3D software with no problem.

Loading...