Intrepid: ia32-lib conflict with nvidia-glx-177

Bug #247984 reported by cariboo
14
Affects Status Importance Assigned to Milestone
ia32-libs (Ubuntu)
Invalid
Undecided
Unassigned
Intrepid
Invalid
Undecided
Unassigned
nvidia-graphics-drivers-177 (Ubuntu)
Fix Released
Medium
Alberto Milone
Intrepid
Fix Released
Medium
Alberto Milone

Bug Description

While trying to install the flashplugin-nonfree package I get the following error:

Unpacking ia32-libs (from .../ia32-libs_2.2ubuntu11_amd64.deb) ...
dpkg: error processing /var/cache/apt/archives/ia32-libs_2.2ubuntu11_amd64.deb (--unpack):
 trying to overwrite `/usr/lib32/libGL.so.1', which is also in package nvidia-glx-177

Revision history for this message
Andreas Simon (andreas-w-simon) wrote :

The problem is that the nvidia-glx-177 package is missing a diversion on /usr/lib32/libGL.so.1 like it has for /usr/lib/libGL.so.1.

Changed in ia32-libs:
status: New → Confirmed
Revision history for this message
Alberto Milone (albertomilone) wrote :

Actually nvidia-glx-177 does divert /usr/lib32/libGL.so.1 to /usr/lib32/nvidia/libGL.so.1.xlibmesa. This is necessary since the NVIDIA driver has its own 32bit compatibility libraries which ia32-libs should not overwrite.

I'll see if I can make ia32-lib and the NVIDIA driver coexist with some patches (for both packages).

Changed in nvidia-graphics-drivers-177:
assignee: nobody → albertomilone
importance: Undecided → Medium
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package nvidia-graphics-drivers-177 - 177.13-0ubuntu6

---------------
nvidia-graphics-drivers-177 (177.13-0ubuntu6) intrepid; urgency=low

  * Fix (LP: #247984) Add dependency on ia32-libs for amd64
  * Add the name of the package to the modalias list

 -- Alberto Milone (tseliot) <email address hidden> Sun, 13 Jul 2008 20:36:26 +0200

Changed in nvidia-graphics-drivers-177:
status: Confirmed → Fix Released
Revision history for this message
cariboo (cariboo) wrote :

Thank you,

Revision history for this message
litemotiv (nospam-capstone) wrote :

why are the ia32 compatibility libs included in nvidia-glx-177? this wants to install a lot of stuff i never used or needed on my 64bit install?

Revision history for this message
Alberto Milone (albertomilone) wrote :

This was the only solution. Did you have a look at the source of ia32-lib?

Furthermore ia32-lib is a dependency of the nvidia driver so that the 32bit compatibility libraries are installed before the ones shipped by NVIDIA and then diverted. If everyone used NVIDIA I could remove /usr/lib32/libGL.so.1 from ia32-lib but this is not the case. Furthermore most users will install the flash plugin and the ia32-libs shouldn't overwrite NVIDIA's 32bit compatibility libraries.

Of course I'm open to better solutions.

Revision history for this message
litemotiv (nospam-capstone) wrote :

I currently have no better solution to offer by lack of insight, but i do expect a lot of criticism from the community for automatically pushing 32bit libs on 64bit systems, also because it's quite a large install.

I and many others don't use flashplugin-nonfree since it's proprietary and requires ia32, so we resort to swfdec instead which doesn't involve those.

Revision history for this message
Alberto Milone (albertomilone) wrote :

Well, the nvidia driver is proprietary too. You can use the "nv" driver and swfdec so that no 32bit libraries will be installed. In this way you won't use proprietary products.

Revision history for this message
litemotiv (nospam-capstone) wrote :

I think that when the 'word' gets out you'll have to come up with a better argumentation than that Alberto, but you're intelligent enough to have concluded that yourself already ofcourse.

No offense, obviously.

Revision history for this message
litemotiv (nospam-capstone) wrote :

Is it an option to move this procedure to the ia32 installer, and in the worst case have that remove/reinstall/divert things if the situation requires it?

Revision history for this message
Alberto Milone (albertomilone) wrote :

that was the 1st thing I tried to do. If you have a look at the source package you will see why it's not feasible to do so.

Revision history for this message
Andreas Simon (andreas-w-simon) wrote :

Maybe an other solution could be the usage of update-alternatives instead of dpkg-divert. But that requires that all OpenGL providing packages cooperate and probably has other problems too, of which I may not be aware of.

Maybe someone will come up with an better idea, but for the meantime: thanks for making it possible to install nvidia-glx and ia32 together.

Revision history for this message
Martin Pitt (pitti) wrote :

Sorry, that doesn't work. The nvidia drivers are in restricted, thus they cannot depend on ia32-libs which is in universe. Also, n-glx does not actually *need* ia32-libs, thus we shouldn't force this huge package upon everyone who uses the nvidia driver. Can you please revert that dependency?

Changed in nvidia-graphics-drivers-177:
status: Fix Released → Confirmed
Revision history for this message
Martin Pitt (pitti) wrote :

IMHO, the correct solution here is to check for this situation in ia32-libs's preinst, and move away /usr/lib32/libGL.so.1 with a diversion.

Changed in ia32-libs:
status: New → Triaged
Martin Pitt (pitti)
Changed in ia32-libs:
assignee: nobody → pitti
status: Triaged → In Progress
Revision history for this message
Alberto Milone (albertomilone) wrote :

Ok, so here's the situation as far as the nvidia packages are concerned:

libGL.so is a symlink to libGL.so.$VERSION
libGL.so.1 is a symlink to libGL.so.$VERSION
libGL.so.$VERSION is the real file

(where $VERSION can be something like 173.14.09, etc.)

Currently the nvidia-glx-VER packages add a diversion on /usr/lib32/libGL.so.1 to /usr/lib32/nvidia/libGL.so.1.xlibmesa

Revision history for this message
Martin Pitt (pitti) wrote :

Sorry, that was bogus. We want nvidia's library to win, thus the diversion needs to be set in nvidia's preinst, not in ia32-libs'.

Changed in ia32-libs:
assignee: pitti → nobody
status: In Progress → Invalid
Revision history for this message
Alberto Milone (albertomilone) wrote :

Ok, I've found the solution to this problem.

nvidia-glx-VER used to add a diversion of libGL.so.1 and libGL.so.1.2 *only if* such files existed. This is wrong and is the real cause of the problem.

After having a 2nd look at ia32-libs and nvidia-glx-VER, I came to the following solution:

in the preinst:
add diversions of libGL.so, libGL.so.1, libGL.so.1.2 as I used to do before but this time I won't test the existence of these files.

in the postrm:
simply remove these diversions

In this way it doesn't matter which packages you install first, since NVIDIA's libGL.so.xx will always win.

I'll upload the new packages soon.

Revision history for this message
Alberto Milone (albertomilone) wrote :
Revision history for this message
Martin Pitt (pitti) wrote :

All uploaded. Thanks a lot, Alberto!

Changed in nvidia-graphics-drivers-177:
status: Confirmed → Fix Released
Revision history for this message
Herbert Post (roberine) wrote :

I just installed Ibex Alpha 5 and have the above mentioned problem.
I've use Envy to install the nVidia drivers (tried 173 and 177) resulting
in the IA32-LIBS error. I've not had this error with 8.04 and 8.04.1
Is there a way around this because I really need flash and wine.

Revision history for this message
Herbert Post (roberine) wrote :

After removing nVidia drivers 177 using ENVY and then installing IA32-LIBS
everything is fine. I then installed the 177 drivers again and everything is still fine.
Flashplugin-nonfree, wine, adobe acrobat; everything still works.

Revision history for this message
Antonio D'souza (quikchange) wrote :

I'm using the x64 version of Ubuntu and just upgraded to Intrepid but lost nvidia-glx-177 in the process and now I can't instal it because of a reported mismatch in the divert-to :-(

Revision history for this message
Antonio D'souza (quikchange) wrote :

The problem seems to stem from the now defunct nvidia-glx-new pkg.

Revision history for this message
mario3699 (mario-chianti-doc) wrote :

I try to install the 173.14.xx driver, but i have all the timethe libGL.so.1 problem during the compilation. I have the 10.04 Beta1 installed. any suggestions ?

Thanks, Mario

<email address hidden>

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.