Bug#722258: closed by Andreas Beckmann <anbe at debian.org> (Re: Bug#722258: glx-diversions fails libGL.so.1 -> /etc/alternatives)
JS
jshaio at yahoo.com
Wed Sep 11 01:30:50 UTC 2013
Thanks Andreas,
I would add that since I did not want to risk upgrading my nvidia drivers from their current pinned version,
there was no problem fixing this issue while staying with glx-diversions_0.2.2:
1. I added a local diversion:
local diversion of /usr/lib/i386-linux-gnu/libGL.so.1.2.0 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1.2.0
2. in mesa-diverted, I added a hard link from libGL.so.1.2.0 to libGL.so.1.2
3. and also a symlink from libGL.so.1 -> libGL.so.1.2
With those manual changes, glx-diversions_0.2.2 can be reinstalled without errors and hardware acceleration works again.
Maybe the change to libgl1-mesa-glx could have been avoided if the postinstall script added more args to the function:
validate_diverted_symlink ... `dpkg --listfiles libgl1-mesa-glx | grep '^/usr/lib' | xargs basename -a`
so that however libgl1-mesa-glx chose to version its libGL.so, they would still be found by glx-diversions postinstall.
thanks,
--jack
________________________________
From: Debian Bug Tracking System <owner at bugs.debian.org>
To: js <jshaio at yahoo.com>
Sent: Tuesday, September 10, 2013 8:30 AM
Subject: Bug#722258 closed by Andreas Beckmann <anbe at debian.org> (Re: Bug#722258: glx-diversions fails libGL.so.1 -> /etc/alternatives)
This is an automatic notification regarding your Bug report
which was filed against the glx-diversions package:
#722258: glx-diversions fails libGL.so.1 -> /etc/alternatives
It has been closed by Andreas Beckmann <anbe at debian.org>.
Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Andreas Beckmann <anbe at debian.org> by
replying to this email.
--
722258: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=722258
Debian Bug Tracking System
Contact owner at bugs.debian.org with problemsVersion: 0.4.0
On 2013-09-10 13:02, JS wrote:
> Vincent,
>
> You're right, thank you for pointing this out. I've checked that glx-diversions_0.4.0 does include a libGL.so.1.2.0
> as one of the arguments to validate_diverted_symlink and so will not have this problem.
>
> I was not able to use this version of glx-diversions as I've kept my version of the nvidia drivers pinned to 304.64-4.
>
> This bug should be closed as a duplicate that has already been fixed in the latest version.
Closing.
BTW, libgl1-mesa-glx has a fix pending that adds a
Breaks: glx-diversions (<< 0.4)
so people won't be able to do this broken partial upgrade any more.
Andreas
Package: glx-diversions
Version: 0.2.2
Severity: normal
Dear Maintainer,
====================================================================
I updated libgl1-mesa-glx to version 9.1.6-2 (from 8.0.5-3) and saw that
afterwards /usr/lib/i386-linux-gnu/libGL.so.1 -> libGL.so.1.2.0 instead
of the /etc/alternatives/glx--... that would lead to the nvidia library.
Therefore the hardware acceleration was broken.
I tried purging all the nvidia files and reinstalling but the problem
persists because the glx-alternatives postinst script does a
validate_diverted_symlink() and does a "Restoring diverted libGL.so.1 symlink".
After reinstalling glx-diversions (many attempts), this left libGL.so.1
pointing to the library from libgl1-mesa-glx.
This happened even after I removed all the nvidia packages, manually removed
any remaining diversions for '*glx*' so that only libgl1-mesa-glx was left,
with no diversions.
I would have thought glx-diversions would have left the diversion in place
and tried to leave the symlink pointing to /etc/alternatives.
Manually setting this link to point to /etc/alternatives/glx--... does
restore hardware acceleration but this seems to break whenever another
package is installed, so is not a real workaround.
I have the nvidia drivers pinned to 306.64-4 and therefore glx-diversions
is pinned to 0.2.2 (I understand this is not the latest version).
Here is a typical session from /var/log/apt/term.log showing the problem
(see especially lines marked with >>>):
Log started: 2013-09-09 09:52:53
Selecting previously unselected package glx-diversions.
(Reading database ... (Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 943874 files and directories currently installed.)
Unpacking glx-diversions (from .../glx-diversions_0.2.2_i386.deb) ...
Selecting previously unselected package glx-alternative-mesa.
Unpacking glx-alternative-mesa (from .../glx-alternative-mesa_0.2.2_i386.deb) ...
Selecting previously unselected package glx-alternative-nvidia.
Unpacking glx-alternative-nvidia (from .../glx-alternative-nvidia_0.2.2_i386.deb) ...
Selecting previously unselected package libgl1-nvidia-alternatives.
Unpacking libgl1-nvidia-alternatives (from .../libgl1-nvidia-alternatives_304.64-4_i386.deb) ...
Selecting previously unselected package libglx-nvidia-alternatives.
Unpacking libglx-nvidia-alternatives (from .../libglx-nvidia-alternatives_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-alternative.
Unpacking nvidia-alternative (from .../nvidia-alternative_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-support.
Unpacking nvidia-support (from .../nvidia-support_20120630+3_i386.deb) ...
Selecting previously unselected package libgl1-nvidia-glx:i386.
Unpacking libgl1-nvidia-glx:i386 (from .../libgl1-nvidia-glx_304.64-4_i386.deb) ...
Selecting previously unselected package libxvmcnvidia1:i386.
Unpacking libxvmcnvidia1:i386 (from .../libxvmcnvidia1_304.64-4_i386.deb) ...
Selecting previously unselected package xserver-xorg-video-nvidia.
Unpacking xserver-xorg-video-nvidia (from .../xserver-xorg-video-nvidia_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-vdpau-driver:i386.
Unpacking nvidia-vdpau-driver:i386 (from .../nvidia-vdpau-driver_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-kernel-dkms.
Unpacking nvidia-kernel-dkms (from .../nvidia-kernel-dkms_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-glx.
Unpacking nvidia-glx (from .../nvidia-glx_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-settings.
Unpacking nvidia-settings (from .../nvidia-settings_304.64-1_i386.deb) ...
Processing triggers for man-db ...
Processing triggers for menu ...
Processing triggers for gnome-menus ...
Processing triggers for mime-support ...
Processing triggers for desktop-file-utils ...
Setting up glx-diversions (0.2.2) ...
No diversion 'diversion of /usr/lib/debug/usr/lib/xorg/modules/extensions/libglx.so to /usr/lib/mesa-diverted/libglx.so.dbg by glx-diversions', none removed.
No diversion 'diversion of /usr/lib/xorg/modules/extensions/libglx.so to /usr/lib/mesa-diverted/libglx.so by glx-diversions', none removed.
Adding 'diversion of /usr/lib/libGL.so to /usr/lib/mesa-diverted/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so by glx-diversions'
Adding 'diversion of /usr/lib/libGL.so.1 to /usr/lib/mesa-diverted/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1 by glx-diversions'
Adding 'diversion of /usr/lib/libGL.so.1.2 to /usr/lib/mesa-diverted/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1.2 by glx-diversions'
Adding 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1.2 by glx-diversions'
>>> Removing diverted 'libGL.so.1' symlink with unexpected target 'libGL.so.1.2.0'.
>>> Restoring diverted 'libGL.so.1' symlink.
Setting up glx-alternative-mesa (0.2.2) ...
Setting up glx-alternative-nvidia (0.2.2) ...
Setting up libgl1-nvidia-alternatives (304.64-4) ...
Setting up libglx-nvidia-alternatives (304.64-4) ...
Setting up nvidia-alternative (304.64-4) ...
Setting up nvidia-support (20120630+3) ...
Setting up nvidia-vdpau-driver:i386 (304.64-4) ...
Setting up nvidia-kernel-dkms (304.64-4) ...
Loading new nvidia-304.64 DKMS files...
First Installation: checking all kernels...
Building only for 3.2.0-4-686-pae
Building initial module for 3.2.0-4-686-pae
Done.
nvidia:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/3.2.0-4-686-pae/updates/dkms/
depmod.....
DKMS: install completed.
Setting up nvidia-settings (304.64-1) ...
Processing triggers for nvidia-alternative ...
update-alternatives: using /usr/lib/nvidia/current to provide /usr/lib/nvidia/nvidia (nvidia) in auto mode
Processing triggers for glx-alternative-nvidia ...
update-alternatives: using /usr/lib/nvidia to provide /usr/lib/glx (glx) in auto mode
Setting up libgl1-nvidia-glx:i386 (304.64-4) ...
Setting up libxvmcnvidia1:i386 (304.64-4) ...
Setting up xserver-xorg-video-nvidia (304.64-4) ...
Setting up nvidia-glx (304.64-4) ...
No diversion 'diversion of /usr/lib/xorg/modules/extensions/libGLcore.so to /usr/lib/nvidia/libGLcore.so.xlibmesa by nvidia-glx', none removed.
No diversion 'diversion of /usr/lib/xorg/modules/extensions/libGLcore.a to /usr/lib/nvidia/libGLcore.a.xlibmesa by nvidia-glx', none removed.
No diversion 'diversion of /usr/lib/xorg/modules/extensions/libglx.a to /usr/lib/nvidia/libglx.a.xlibmesa by nvidia-glx', none removed.
Processing triggers for libc-bin ...
Processing triggers for menu ...
Processing triggers for glx-alternative-mesa ...
>>> update-alternatives: warning: forcing reinstallation of alternative /usr/lib/nvidia because link group glx is broken
Processing triggers for libc-bin ...
Log ended: 2013-09-09 09:54:22
Log started: 2013-09-09 09:55:34
Selecting previously unselected package libnvidia-ml1:i386.
(Reading database ... (Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 944143 files and directories currently installed.)
Unpacking libnvidia-ml1:i386 (from .../libnvidia-ml1_304.64-4_i386.deb) ...
Selecting previously unselected package nvidia-xconfig.
Unpacking nvidia-xconfig (from .../nvidia-xconfig_304.48-1_i386.deb) ...
Selecting previously unselected package nvidia-smi.
Unpacking nvidia-smi (from .../nvidia-smi_304.64-4_i386.deb) ...
Processing triggers for man-db ...
Setting up libnvidia-ml1:i386 (304.64-4) ...
Setting up nvidia-xconfig (304.48-1) ...
Setting up nvidia-smi (304.64-4) ...
Processing triggers for libc-bin ...
Log ended: 2013-09-09 09:55:41
Log started: 2013-09-09 09:58:23
(Reading database ... (Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 944169 files and directories currently installed.)
Preparing to replace libgl1-mesa-glx:i386 9.1.6-2 (using .../libgl1-mesa-glx_9.1.6-2_i386.deb) ...
Unpacking replacement libgl1-mesa-glx:i386 ...
Processing triggers for glx-alternative-mesa ...
update-alternatives: warning: forcing reinstallation of alternative /usr/lib/nvidia because link group glx is broken
Processing triggers for libc-bin ...
Setting up libgl1-mesa-glx:i386 (9.1.6-2) ...
Processing triggers for libc-bin ...
Log ended: 2013-09-09 09:58:28
====================================================================
-- Package-specific info:
Diversions:
diversion of /usr/lib/i386-linux-gnu/libGL.so to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so by glx-diversions
diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 by glx-diversions
diversion of /usr/lib/i386-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1.2 by glx-diversions
diversion of /usr/lib/libGL.so to /usr/lib/mesa-diverted/libGL.so by glx-diversions
diversion of /usr/lib/libGL.so.1 to /usr/lib/mesa-diverted/libGL.so.1 by glx-diversions
diversion of /usr/lib/libGL.so.1.2 to /usr/lib/mesa-diverted/libGL.so.1.2 by glx-diversions
diversion of /usr/lib/x86_64-linux-gnu/libGL.so to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so by glx-diversions
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1 by glx-diversions
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1.2 to /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1.2 by glx-diversions
/usr/lib/mesa-diverted:
total 172
4 drwxr-xr-x 4 root root 4096 Sep 9 09:53 ./
160 drwxr-xr-x 378 root root 159744 Sep 9 09:54 ../
4 drwxr-xr-x 2 root root 4096 Sep 9 09:58 i386-linux-gnu/
4 drwxr-xr-x 2 root root 4096 Jun 30 2012 x86_64-linux-gnu/
/usr/lib/mesa-diverted/i386-linux-gnu/:
total 8
4 drwxr-xr-x 2 root root 4096 Sep 9 09:58 ./
4 drwxr-xr-x 4 root root 4096 Sep 9 09:53 ../
0 lrwxrwxrwx 1 root root 14 Aug 12 02:50 libGL.so.1 -> libGL.so.1.2.0
/usr/lib/mesa-diverted/x86_64-linux-gnu/:
total 8
4 drwxr-xr-x 2 root root 4096 Jun 30 2012 ./
4 drwxr-xr-x 4 root root 4096 Sep 9 09:53 ../
Alternative 'glx':
glx - auto mode
link currently points to /usr/lib/nvidia
/usr/lib/nvidia - priority 100
slave glx--libGL.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libGL.so.1
slave glx--libXvMCNVIDIA.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA.so.1
slave glx--libXvMCNVIDIA_dynamic.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA_dynamic.so.1
slave glx--libnvidia-cfg.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libnvidia-cfg.so.1
slave glx--linux-libglx.so: /usr/lib/nvidia/libglx.so
slave glx--nvidia-bug-report.sh: /usr/lib/nvidia/nvidia-bug-report.sh
slave glx--nvidia_drv.so: /usr/lib/nvidia/nvidia_drv.so
Current 'best' version is '/usr/lib/nvidia'.
0 lrwxrwxrwx 1 root root 15 Sep 9 09:58 /etc/alternatives/glx -> /usr/lib/nvidia/
0 lrwxrwxrwx 1 root root 41 Sep 9 09:58 /etc/alternatives/glx--libGL.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libGL.so.1
0 lrwxrwxrwx 1 root root 49 Sep 9 09:58 /etc/alternatives/glx--libXvMCNVIDIA.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA.so.1
0 lrwxrwxrwx 1 root root 57 Sep 9 09:58 /etc/alternatives/glx--libXvMCNVIDIA_dynamic.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA_dynamic.so.1
0 lrwxrwxrwx 1 root root 49 Sep 9 09:58 /etc/alternatives/glx--libnvidia-cfg.so.1-i386-linux-gnu -> /usr/lib/i386-linux-gnu/nvidia/libnvidia-cfg.so.1
0 lrwxrwxrwx 1 root root 25 Sep 9 09:58 /etc/alternatives/glx--linux-libglx.so -> /usr/lib/nvidia/libglx.so
0 lrwxrwxrwx 1 root root 36 Sep 9 09:58 /etc/alternatives/glx--nvidia-bug-report.sh -> /usr/lib/nvidia/nvidia-bug-report.sh*
0 lrwxrwxrwx 1 root root 29 Sep 9 09:58 /etc/alternatives/glx--nvidia_drv.so -> /usr/lib/nvidia/nvidia_drv.so
File System:
0 lrwxrwxrwx 1 root root 21 Sep 9 09:54 /usr/lib/glx -> /etc/alternatives/glx/
0 lrwxrwxrwx 1 root root 14 Sep 9 09:58 /usr/lib/i386-linux-gnu/libGL.so.1 -> libGL.so.1.2.0
352 -rw-r--r-- 1 root root 357692 Aug 12 02:50 /usr/lib/i386-linux-gnu/libGL.so.1.2.0
420 -rw-r--r-- 1 root root 429272 Dec 11 2011 /usr/lib/xorg/modules/extensions/libglx.so
-- System Information:
Debian Release: 7.0
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 3.2.0-4-686-pae (SMP w/6 CPU cores)
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/dash
Versions of packages glx-diversions depends on:
ii dpkg 1.16.10
ii nvidia-installer-cleanup 20111111+3
Versions of packages glx-diversions recommends:
ii glx-alternative-mesa 0.2.2
glx-diversions suggests no packages.
Versions of packages nvidia-glx depends on:
ii dpkg 1.16.10
ii libgl1-nvidia-glx 304.64-4
ii libxvmcnvidia1 304.64-4
ii nvidia-alternative 304.64-4
ii nvidia-installer-cleanup 20111111+3
ii nvidia-kernel-dkms [nvidia-kernel-dkms] 304.64-4
ii nvidia-support 20120630+3
ii nvidia-vdpau-driver 304.64-4
ii xserver-xorg-video-nvidia 304.64-4
Versions of packages nvidia-glx recommends:
ii nvidia-settings 304.64-1
Versions of packages nvidia-glx suggests:
ii nvidia-kernel-dkms [nvidia-kernel-dkms] 304.64-4
Versions of packages glx-diversions is related to:
pn glx-alternative-fglrx <none>
ii glx-alternative-mesa 0.2.2
ii glx-alternative-nvidia 0.2.2
pn libgl1-dev <none>
ii libgl1-mesa-glx [libgl1] 9.1.6-2
ii libgl1-nvidia-glx [libgl1-nvidia-glx-any] 304.64-4
ii nvidia-glx [nvidia-glx-any] 304.64-4
ii xserver-xorg-video-nvidia [xserver-xorg-video-nvidia-any] 304.64-4
-- no debconf information
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-nvidia-devel/attachments/20130910/9141b8b6/attachment-0001.html>
More information about the pkg-nvidia-devel
mailing list