As promised, here are the tips:
First, you need to upgrade to “Dapper Drake”, the development version. So, if you want to try this on a production machine (or maybe your work machine) be aware that things may be broken and you may have to reinstall the system. That warning being told, I must say that things are quite stable right now, except for the occasional Rhythmbox crash and some weird stuff going with my HD going to sleep very quickly and, on the good side, the ipw2200 driver (the wireless chip on Dell 9300) is working better on Dapper than on Breezy. To switch to Dapper, you need to open /etc/apt/sources.list and change every reference from “breezy” to “dapper”. It is easier to open it with some editor (like sudo gedit /etc/apt/sources.list) than trying to change them on Synaptics. Once you have change all references, do a sudo apt-get update to update the package list. Also, it is a good moment to do a sudo apt-get dist-upgrade to upgrade your whole system to Dapper, although I don’t think it is really necessary.
Then, you’ll need the NVidia-GLX extension. To get it, do sudo apt-get install nvidia-glx. You’ll note that it will bring the Kernel 2.6.15-14, while the most recent version is 2.6.15-15. It seems that the driver wasn’t ported yet, and my attempt to compile it “by hand” failed miserably. Of course, you’ll one need this if you have a NVidia based card. I can’t really say how to get the needed stuff on ATI as I don’t have one. So, just remember to select “2.6.15-14” on grub on next boot.
Restart your machine, to pick the changes on the kernel.
Next step is edit /etc/X11/xorg.conf. On the “Module” section, remove the “GLcore”, “dri” and “v4l” modules and add the “glx”. The best way to remove them is just add a “#” in the beginning of the line. The last module “v4l” doesn’t really need to be removed, but it will remove some annoying warning. In the end, you should have something like this:
# Load “GLcore”
# Load “dri”
# Load “v4l”
Also, on the “Device” section of the video card (look for the “Identifier”), change the driver from “nv” to “nvidia”. You should also add the options “NvAGP” to “1”, “RenderAccel” to “true” and “AllowGLXWithComposite” to “true”. In the end, you should have something like this:
Identifier “Generic Video Card”
Option “NvAGP” “1”
Option “RenderAccel” “true”
Option “AllowGLXWithComposite” “true”
Last thing is change the default server to Xgl. To do this, change the X symbolic link on /etc/X11 to point to /usr/bin/Xgl instead of /usr/bin/Xorg. Do something like
sudo mv X X.original
sudo ln -s /usr/bin/Xgl X
Now exit your session (if you are doing all this inside X), go back to gdm and, on the login prompt, press <Ctrl><Alt><Backspace>. That should kill X, but gdm would bring it back again. If everything went correctly, you should have your old boring GNOME screen back. :)
Now we need to change the window manager from Metacity to Compiz, which will allow us to do all those nice stuff everyone is talking about. To do that, call compiz on a console with
compiz --replace gconf decoration wobbly fade minimize cube rotate zoom scale move resize place menu
Now every window should be borderless, but you can drag the console using the mouse and the <Alt> key. To add the borders, call
If it, for some reason, doesn’t work, open gconf-editor locate Compiz on the Apps and on “general” -> “allscreens” -> “options”, look at the “active_plugins” field. Click on it and add “decoration” to the list, moving it to just before gconf. Once you click on “Ok”, the borders should appear. Also, sometimes, the switcher goes away and you can’t use <Alt><Tab> anymore. Go on the same place and add “switcher” just before “decoration” and everything should be ok.
The only remaining bit needed to close this is making the gnome-session remember to run compiz and gnome-window-decorator on every start. To do this, go to “System” -> “Preferences” -> “Sessions”. On startup programs, add
Don’ t worry if they get in the reverse order: that’s the idea (Compiz should load before window-decorator). Now, everytime you log on, you’ll get a fun X. :)
If you have any doubts or questions, feel free to add to the comments.