Another helpful hint

Warning, this post is going to be mostly written in the language of the geek. So, if you’re not one of us, please let your eyes go out of focus and scroll on down to the nice posts about turkey and graduation…

I’ve been using RedHat’s new “community-supported” distribution Fedora since the day it was announced. Now that Fedora-Core-1 has been released, I’m using it full-time. Everything was going great until I installed the NVidia drivers for my video card. Here are a few tips for anyone else having problems.

First, the NVidia drivers don’t include modules for the Fedora kernel. Luckily, the installer will compile them for you if you have everything set-up correctly before you start. Here’s what you need to do:

  1. Install the gcc32 compiler installed if you don’t already have it. In a terminal window type “up2date gcc32”.
  2. Make sure you have the kernel-source package installed – “up2date –force kernel-source”. Up2date won’t normally install kernel packages so you have to use the –force option to make it. Also note that this is a very large download (14MB+) so you might be better off installing it from your original CDs if you have a slow connection.
  3. Download the latest driver from http://www.nvidia.com/ if you haven’t already.
  4. Log out of GNOME
  5. Press Ctrl+Alt+F1 to switch to the first console
  6. Log in as root
  7. Type “telinit 3” to switch to runlevel 3 and kill the X Window System
  8. Change to the directory where you saved the driver
  9. Make the driver executable by typing “chmod +x NVIDIA-Linux-x86-1.0-4496-pkg2.run”
  10. Tell the system to use the gcc32 compiler by typing “export CC=gcc32”
  11. Install the driver with the command “./NVIDIA-Linux-x86-1.0-4496-pkg2.run” (that’s a dot and a forward slash followed by the name of the file you downloaded)
  12. After answering a few questions, the installer should compile a new module for you and install it.

Now we need to edit the XF86Config file so X will actually use the new driver. I normally use VI for editing files, but for these instructions I’ll use nano since it’s easier.

  1. Type “nano /etc/X11/XF86Config” to open your config file for editing.
  2. Scroll down to the line that says Load “dri” and put a # at the beginning of the line. This makes that line a comment which means it won’t be read by the X Server.
  3. Now keep scrolling down to the line that says Driver “nv”. Change the “nv” to “nvidia”
  4. Press Ctrl+O to save the file and Ctrl+X to exit

If you restart X right now, it will come up, but anytime you try to run a 3D application you’ll get this message Xlib: extension “XFree86-DRI” missing on display “:0.0”

I found a solution for this on the nV News Forums. Here’s what you need to do now:

  1. Get rid of a directory with some conflicting files by typing “mv /usr/X11R6/lib/tls/ /usr/X11R6/lib/tls-bad/”
  2. Tell your system about the change by typing “ldconfig”

You can now restart X and have good 3D acceleration. Type “telinit 5” to restart the login manager and get back into GNOME.

I’m sure this will make someone very happy one of these days. I still get e-mail about the last bit of technical advice I posted.