Bug#722258: glx-diversions fails libGL.so.1 -> /etc/alternatives

JS jshaio at yahoo.com
Mon Sep 9 17:54:44 UTC 2013


I believe this problem comes about because:

libgl1-mesa-glx 8.0.5-3  has the library libGL.so.1.2:
   => dpkg --contents libgl1-mesa-glx_8.0.5-3_i386.deb 
  drwxr-xr-x root/root         0 2012-12-06 17:23 ./
  drwxr-xr-x root/root         0 2012-12-06 17:22 ./usr/
  drwxr-xr-x root/root         0 2012-12-06 17:22 ./usr/lib/
  drwxr-xr-x root/root         0 2012-12-06 17:22 ./usr/lib/i386-linux-gnu/
  -rw-r--r-- root/root    363020 2012-12-06 17:22 ./usr/lib/i386-linux-gnu/libGL.so.1.2   <<<<<


while the newer libgl1-mesa-glx 9.1.6-2 has the library:
  => dpkg --contents /var/cache/apt/archives/libgl1-mesa-glx_9.1.6-2_i386.deb 
  drwxr-xr-x root/root         0 2013-08-12 02:50 ./
  drwxr-xr-x root/root         0 2013-08-12 02:50 ./usr/
  drwxr-xr-x root/root         0 2013-08-12 02:50
 ./usr/lib/
  drwxr-xr-x root/root         0 2013-08-12 02:50 ./usr/lib/i386-linux-gnu/
  -rw-r--r-- root/root    357692 2013-08-12 02:50 ./usr/lib/i386-linux-gnu/libGL.so.1.2.0 <<<<<
  drwxr-xr-x root/root         0 2013-08-12 02:50 ./usr/share/



glx-diversions postinst is checking for a final target of libGL.so.1.2 (not libGL.so.1.2.0) so it always

fails when the newer libgl1-mesa-glx is installed:
    validate_diverted_symlink /usr/lib${triplet}libGL.so.1 /usr/lib/mesa-diverted${triplet}libGL.so.1 mesa/libGL.so.1 libGL.so.1.2

Perhaps the postinst script could check only that the link is owned by the package libgl1-mesa-glx; here is a piece of the
postinst script showing the problem:

+ owner=libgl1-mesa-glx:i386: /usr/lib/i386-linux-gnu/libGL.so.1       <<<<< package installing an libGL.so.1
+ [ -L /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 ]
+ [ -z libgl1-mesa-glx:i386: /usr/lib/i386-linux-gnu/libGL.so.1 ]
+ readlink /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1
+ link=libGL.so.1.2.0                                                                        <<<<< readlink -f of its libGL.so.1
+ [ -L /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 ]
+ [ libGL.so.1.2.0 = mesa/libGL.so.1 ]
+ [ -L /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 ]
+ [ libGL.so.1.2.0 = libGL.so.1.2 ]
+ [ -L /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1 ]
+ [ libGL.so.1.2.0 != libGL.so.1.2 ]





+ echo Removing diverted 'libGL.so.1' symlink with unexpected target 'libGL.so.1.2.0'.
Removing diverted 'libGL.so.1' symlink
 with unexpected target 'libGL.so.1.2.0'.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-nvidia-devel/attachments/20130909/d69d5723/attachment-0001.html>


More information about the pkg-nvidia-devel mailing list