openSUSE 11.1: How to install Nvidia video driver kernel module for Compiz

After a freshly-minted openSUSE installation, one of the first things that an user will want to do is to set up Compiz with its awesome 3D desktop effects.  I’ve yet to find a how-to guide online that cleanly explains the steps to take on an openSUSE system.  After a number of attempts with trial and error, I was able to figure out the correct steps and decided to write up a guide to save time/energy for any enterprising users who want their openSUSE system with a Nvidia video card to work with Compiz.

It may be possible to luck out and get a working 3D desktop if attempting the 1-click installation of Nvidia drivers for openSUSE.  While this step may seem to be trivial to have the Nvidia driver installed on the system, there is no control over the version of the driver. The version of the installed driver may not be fully compatible with the particular model of Nvidia video card on the running system.

For example, from my prior experience using Ubuntu on my system, Ubuntu recommends the older Nvidia Linux driver 180.44 for my video card which gives the best results, even when there are more recent Nvidia Linux drivers available.  To alleviate a lot of frustration on the users part, I believe that openSUSE team should look at and mimic how Ubuntu recommends a specific video driver. Ubuntu is able to present this critical piece of information to the user and makes it simple to install the correct video driver.

The steps I list below will skip the openSUSE 1-click installation of Nvidia driver and will instead download and install a specific version from Nvidia website.

1. Install openSUSE 11.1 from media then do a full update, including any new kernel upgrades. (YaST2 -> Online Update)

2. Reboot to ensure you are running up-to-date system.

3. Via YaST2 (Software management) or zypper, make sure ‘kernel’, ‘make’, and ‘gcc’ packages are installed.

5. Visit Nvidia Linux Driver webpage and find the version you want. (will use 180.44 for this example)

6. Download the script NVIDIA-Linux-x86-180.44.pkg1.run to  your Desktop

7. To exit the desktop environment to the shell so the driver can be installed, open a terminal, su to root, and type rcxdm stop

8. Once at shell, login as root

9. cd to the directory where you downloaded NVIDIA-Linux-x86-180.44.pkg1.run

10. sh NVIDIA-Linux-x86-180.44.pkg1.run -q

11. At this point, the Nvidia driver will be compiled and installed as a kernel module.

12. Reboot.  This is the easiest way to ensure you are running up-to-date system.

13. Once back in the desktop environment, need to exit it so can re-config Xorg to use the Nvidia driver. Open a terminal, su to root, and type rcxdm stop

14. Login as root

15. sax2 -r -m 0=nvidia  (The digit zero, not the letter o)
– Change configuration
– Select your monitor and resolution
– Save & exit

16. rcxdm start

17. open a terminal, su to root, and type nvidia-settings.  If you have dual screens, can set them here using twin-view.

18. close nvidia-settings, go back to terminal, exit from root back to your user login prompt.

19. simple-ccsm and check the ‘Enable Desktop Effects’ check box.

20. At this point, Compiz should start working and you’ll see all kinds of nifty 3D desktop effects.

Important note for future, if you update your kernel, Nvidia kernel module needs to be recompiled and put back in place.

To do this: cd to the directory where the Nvidia script is and run as root:

sh NVIDIA-Linux-x86-180.44.pkg1.run -K


Comments   openSuse
Related posts:

Adding terminator or gnome-terminal to desktop pop-up menu list

To add programs to the Ubuntu Gnome desktop popup menu list (when you right-click on the desktop):

Inside ~/.gnome2/nautilus-scripts:

Create a script:

#!/bin/bash
cd $NAUTILUS_SCRIPT_CURRENT_URI
exec /usr/bin/terminator

sudo chmod 755 ~/.gnome2/nautilus-scripts/your_script_name

ps wauxg | grep nautilus
kill -HUP pid_of_nautilus

Nautilus will restart and you may lose control of your desktop for a short while. Just wait and be patient for it to start working again.

Right-click on the desktop and find your script ready to run from the ‘Scripts’ selector.

alternatively, you can install:

apt-get install nautilus-open-terminal

which will directly put a link to gnome-terminal inside the desktop popup menu list.


Comments   FreeBSD, Ubuntu, openSuse
Related posts:

openSuse: nvidia-settings not working due to undefined control display

Xorg configuration under openSuSE can be fickle:

If attempting to run nvidia-settings but get stuck at:

ERROR: The control display is undefined; please run `nvidia-settings –help` for usage information.

From your regular user login (not root):
export DISPLAY=:0.0

Now can become root and run nvidia-settings

su
nvidia-settings


Comments   openSuse
Related posts:

fixing problems with Compiz on openSuse 11.1

The OpenSuse Linux distro got a major update to version 11.1 a few days ago.  While I’m still an Ubuntu fan, I decided to try out the latest version of openSuse. I’ve heard a lot of good things about that distro and it certainly doesn’t hurt that openSuse team can count on the corporate backing and support of Novell.   Novell sells Suse Linux Enterprise Desktop (SLED) and Suse Linux Enterprise Server (SLES), which closely follows the cutting-edge openSuse distro.

However, I’ve ran into numerous annoyances with openSuse (which I’m not going into details here) which were at times difficult and time-consuming to resolve.  While none of these problems were major roadblocks or prevented me from using the system, I still have much higer expectations of modern Linux Desktop environments nowadays since they are all trying to target the general non-technie populace, instead of the hacker minority.  For newcomers to the Linux desktop, I would still highly recommend Ubuntu since I rarely ran into problems that weren’t easily resolved.  I’ve been very impressed with Ubuntu because “it just works.”

While I use the CLI (command-line interface) often, I also like my eye candy.  On Desktop Linux distros, the software responsible for the fancy graphical interface that can do all sort of nifty things is called Compiz.  I ran into problems using Compiz on openSuse and after some research, came across this:

[ Try these steps to get Nvidia drivers and Compiz running

1. one-click install Nvidia drivers from OpenSUSE website
2. reboot (with new kernel if updated)
3. as root in terminal: rcxdm stop , sax2 -r -m 0=nvidia
(zero not the letter o)
4. Change configuration, select right monitor and resolution, save and exit
4. rcxdm start
5. In a terminal, run nvidia-settings as root
9. exit to your user login inside terminal: simple-ccsm and turn on 'Enable desktop effects'

You should start to see the full special effects of Compiz.

If the one-click installation of Nvidia drivers doesn't work, try these steps instead.]

Compiz on openSUSE 11.1
by cyberorg, Thursday, December 4th, 2008 @ 3:31 pm

Although openSUSE 11.1 is almost ready, Compiz that is in it is still not there yet. If you run into some of the remaining annoyances, here is how to get Compiz Fusion bliss on openSUSE 11.1.

Add X11:XGL repository that contains compiz without NOMAD patches
zypper ar http://download.opensuse.org/repositories/X11:/XGL/openSUSE_11.1/ X11:XGL

Update all compiz packages from that repo
zypper up -t package -r X11:XGL

After making sure compiz is switched off and disabled, remove old configuration:
rm -rf /home/your-username/.config/compiz
Launch simple-ccsm and enable Compiz.

Hopefully, this will provide a short-term solution to getting compiz from freezing or muckling up the X display until a long term solution is devised and included as the default in openSuse.

Off the subject note: What do I think of openSuse Desktop environment when compared to Ubuntu Desktop?  The only major differences between them are the package repositories management and menu layout.  While these distros have different package repo management, they are both excellent and execute very well (as long as I don’t have to struggle with package dependencies and these are resolved for me automatically).  Menu layout is pretty much a matter of personal taste.  Everything else with the distros is pretty much the same.  Which is why I think it’s critical for openSuse to make absolutely sure that their distro doesn’t cause all sort of small and irriating problems that have to be cleaned up by the user.  Ubuntu distro is hands-down beating them in this usability area.


Comments   Ubuntu, Web/Tech, openSuse
Related posts:

Nvidia when running under Xen

You’re running a Dom 0 Xen kernel with a nvidia graphic card?

And you’re frustrated by the low-res X (vesa) when running on X?  Want a higher res X cuz you have a kick-ass Nvidia video card?

sax2 -m 0=nv

should resolve all your troubles.

note: Don’t expect 3D acceleration yet.  Nvidia is currently working on a xen video driver.


Comments   Uncategorized, Web/Tech, openSuse
Related posts:

Forget ifconfig and route. Use iproute2 instead.

The legacy ifconfig and route commands can now be seen as being deprecated and be no longer used for setup of network configuration.

People who are comfortable using ifconfig and route will be fine with the new iproute2 suite, which provides similar functionality and improves upon the older net tools.

Here’s a short n’ sweet cheat sheet using iproute2 for network configuring.  If you want more in-depth information, go here.

Configure network card:
ip link set mtu 1500 dev eth0 (use mtu 9000 if on 1000M gigabit network for more efficiency)

Showing all network cards/IP information

ip addr show

Adding one or several IP addresses on network card.
The iproute2 suite doesn’t need fictitious interfaces such as eth0:1, eth0:2, etc.  This is legacy naming scheme for ifconfig. The ‘label’ will allow older ifconfig to be able to see all the addresses.
Using the CIDR notation with network prefix (after the slash) will automatically calculate the broadcast and netmask.
ip addr add 192.168.0.213/24 label eth0:1 dev eth0

Removing an IP address from network card
ip addr del 192.168.0.213/24 dev eth0

Adding default route
ip route add default via 192.168.0.1

Viewing routes
ip route show

Turning up/down network card
ip link set eth0 up
ip link set eth0 down


Comments   FreeBSD, Ubuntu, Web/Tech, openSuse
Related posts: