I think Constantine (Fedora 12) is nice, but I just spent a frustrating day trying to disable the new experimental"Nouveau" video driver. There are a number of things I do that require more driver functionality than Nouveau offers right now:
-
Switching displays and dimming the backlight from the keyboard.
-
Using multiple monitors including some without EDID outputs, which requires a more flexible way to integrate explicit modeline information than Nouveau seems able to manage.
-
A cooperative relationship with other video drivers (Nouveau takes over and won't let go).
Nouveau is meant to replace the proprietary NVidia driver for those with NVidia hardware, but contrary to its press and IMHO, this driver is not ready for prime time -- there are still too many things it cannot do. And it is rather difficult to dislodge.
Without repeating all that has been written about Nouveau and its difficulties, here is how to disable it and install a different driver (this is Fedora 12 specific):
-
First surprise -- one can't just install the proprietary NVidia driver or another driver as in the past. The install will fail when the NVidia installer discovers it can't dislodge the Nouveau driver, and "modprobe -r nouveau" won't work.
-
This means we need to prevent the Nouveau driver from loading in the first place. Here's how.
-
Add this to the kernel line in /boot/grub/grub.conf: "nouveau.modeset=0".
-
Add this to /etc/modprobe.d/blacklist.conf: "blacklist nouveau".
-
Reboot your machine to runlevel 3, e.g. don't allow the X window system to start.
-
Install the Nvidia/alternate driver in the usual way.
-
Create and/or edit /etc/X11/xorg.conf -- change the video driver from "nouveau" to "nvidia" (Constantine will default to nouveau in the absence of an /etc/X11/xorg.conf file). Note that there is no default /etc/X11/xorg.conf file any more.
-
If you don't have an easy way to acquire a generic /etc/X11/xorg.conf, type this from a root shell in runlevel 3: "Xorg -configure". Then copy the resulting file from /root/xorg.conf.new to /etc/X11/xorg.conf, after replacing "nouveau" with "nvidia" as the video driver name.
-
Almost forgot -- to avoid a version conflict between the proprietary NVidia driver and the version 1.7 X server, add this to your /etc/X11/xorg.conf:
Section "ServerFlags" Option "IgnoreABI" "On" EndSection
I personally think the Nouveau developers could have shown a bit more flexibility in how this driver is integrated into Fedora 12. It's not ready to assume the full responsibilities of the driver it replaces, but it's integrated into the system in a way that suggests no one considered the possibility that someone might want or need a different driver.
Obviously much effort has gone into Nouveau by a team of very dedicated and knowledgeable programmers, and it will certainly become the default NVidia driver at some point in the future, but IMHO it's not ready to take over just yet.