Woohoo, I finally got it working! Here’s how, in case someone with the same problem finds this thread:
Step 0. Prepare your system in case this upgrade borks your Xserver, as the first few tries did mine. You want to change the default run level from 5 (autostart Xserver on startup) to 3 (boot into the console with networking, but do NOT autostart Xserver on startup).
sudo vim /etc/inittab
or use emacs, pico, nano, gedit, or whatever editor you prefer in place of vim.
Find the following line and change 5 to 3:
id:5:initdefault:
Save and exit (:x in vim).
After this change, booting Linux will stop at the console, just short of starting Xserver. You will have to start Xserver manually using the following command:
sudo /etc/init.d/xdm start
I believe the this command also works, but not certain:
sudo startx (or /usr/bin/startx if that is not in your $PATH)
If the driver upgrade fails and causes X to crash and hang, then making this change lets you do a hard restart of your computer, boot into a non-graphic console, and prevent X from starting automatically (and crashing and hanging again) so you can troubleshoot the problem.
Now for the install:
Step 1. Had to do it the Hard Way.
Step 2. Download the latest Nvidia driver from Nvidia’s download site. As of this writing it was 195.36.08. If there are multiple versions, use the one with the highest ‘pkg#’ where ‘#’ is the highest available. For example, the three options I had were:
NVIDIA-Linux-x86_64-195.36.08-pkg0.run
NVIDIA-Linux-x86_64-195.36.08-pkg1.run
NVIDIA-Linux-x86_64-195.36.08-pkg2.run
Use ‘-pkg2.run’. I also recommend their excellent README if you’re trying to wrap your head around how drivers and Xservers all work.
Step 3. Download the Linux kernel sources and binutils required to compile the kernel. Don’t worry, the Nvidia installer will do the compile for you, but you need the sources and tools installed for it to work. Follow the Prerequisite instructions at the openSUSE Nvidia the Hard Way wiki page:
Start YaST, select the Software Management tool, and
make sure the following packages are installed and updated:
gcc
make
kernel-source
kernel-syms
kernel-desktop-devel
If any are not installed, install them, then run the Software Management tool again to see if there are any updates. Sometimes the initial install may not install the latest version.
Step 4. Shut down the Xserver & GUI so you can install the driver:
sudo /etc/init.d/xdm stop
This will exit the window system and deliver you to a full-screen command prompt.
Step 5. Configure the kernel sources:
cd /usr/src/linux
make cloneconfig
make prepare
Step 6. Change to run level 3 (not sure if this is necessary after the steps 0 and 4, but I did it anyway):
sudo /sbin/init 3
Step 7. Run the driver installer. Change the directory you downloaded the driver and run it:
sudo sh NVIDIA-Linux-<arch>-<version>-<build>-<pkg#>.run -q
It is mostly automatic, just agree to the ToS.
Step 8. Configure a new xorg.conf file using the driver’s built-in tool:
sudo nvidia-xconfig
Step 9. Skip sax2. The openSUSE wiki ‘Nvidia the Hard Way’ instructions say to run sax2 after nvidia-xconfig, but I found this step was not necessary. If your installation fails, then try running sax2.
That’s it, enjoy Compiz!
My Hardware
Motherboard: ASUS M3N78-EM
GPU: ZOTAC ZT-20405-10L GeForce GT 240 512MB 128-bit GDDR5 PCI Express 2.0 x16 HDCP Ready Overclocked AMP! Edition
Useful References
Nvidia Driver Download Readme
Nvnews Forums (this thread in particular)
openSUSE Nvidia the Hard Way
alt.os.linux.suse (this thread in particular)
Linux Unbound (this post in particular)