[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

what package responsible for creating divertions?



Howdy,..
i have found  a bug when using package nvidia-glx-legacy and how to fix it .

the issue is that i don't know what package is responsible :
is it apt or nvidia-glx-legacy.


the bug happens only when you upgrade from nvidia-glx-legacy to nvidia-glx (7174 to 8xxx version).

description:

the bug will hapen if all condition are true:
person installed nvidia-glx-legacy and then removed it without purge.
person tried to install nvidia-glx by apt-get install.
happen both in testing and unstable.

when you try to install nvidia-glx you will get the next error :

debian:/var/lib/dpkg# apt-get install nvidia-glx
Reading package lists... Done
Building dependency tree... Done
Suggested packages:
 nvidia-settings
The following NEW packages will be installed
 nvidia-glx
0 upgraded, 1 newly installed, 0 to remove and 79 not upgraded.
Need to get 0B/3291kB of archives.
After unpacking 10.9MB of additional disk space will be used.
(Reading database ... 131868 files and directories currently installed.)
Unpacking nvidia-glx (from .../nvidia-glx_1.0.8762-2_i386.deb) ...
dpkg-divert: `diversion of /usr/lib/xorg/modules/extensions/libGLcore.a to /usr/lib/nvidia/libGLcore.a.xlibmesa by nvidia-glx' clashes with `diversion of /usr/lib/xorg/modules/extensions/libGLcore.a to /usr/lib/nvidia/libGLcore.a.xlibmesa by nvidia-glx-legacy'
dpkg: error processing /var/cache/apt/archives/nvidia-glx_1.0.8762-2_i386.deb (--unpack):
subprocess pre-installation script returned error exit status 2
Errors were encountered while processing:
/var/cache/apt/archives/nvidia-glx_1.0.8762-2_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)


after this error apt (or nvidia-glx) create dpkg-divertions witch prevent installing(for purging) both nvidia-flx and nvidia-glx-legacy.

eatch of the packages will say that the other one is installed (glx vs legacy).

to  fix it you should :
list divertions.

debian:/home/mha13# dpkg-divert --list nvidia-glx-legacy
diversion of /usr/lib/xorg/modules/extensions/libGLcore.a to /usr/lib/nvidia/libGLcore.a.xlibmesa by nvidia-glx-legacy
diversion of /usr/lib/xorg/modules/extensions/libglx.a to /usr/lib/nvidia/libglx.a.xlibmesa by nvidia-glx-legacy
diversion of /usr/lib/xorg/modules/extensions/libglx.so to /usr/lib/nvidia/libglx.so.xlibmesa by nvidia-glx-legacy

then remove the diverstions.

dpkg-divert --rename --remove /usr/lib/xorg/modules/extensions/libglx.a
dpkg-divert --rename --remove /usr/lib/xorg/modules/extensions/libglx.so dpkg-divert --rename --remove /usr/lib/xorg/modules/extensions/libGLcore.a

and now you can install freely the nvidia-glx.


the issue with the bug that apt(or nvidia-glx) create divertions even if it is not installed (exit with error)



Reply to: