Installing Ubuntu on T60 with XGL and Beryl

Introduction

I decided for my reference and by requests of various people, that I would write a full installation tutorial for Ubuntu with all of the cool features of XGL and Beryl on the T60. The cool thing about Ubuntu is it installs and configures a lot of your drivers for you (including wireless) so it is fairly painless to get everything up and running. I wrote this tutorial dual-booting Windows XP with my T60p (2007-93U).

Getting the live cd

Snag the latest desktop download iso from here. Burn it off and boot her up. When everything boots up and you are in UBUNTU, double click the installer. Follow the instructions for partitoning and the keyboard and everything. I will post pictures soon. Then sit back and watch it install. After it is done installing, reboot and pull the cd out.

This is how my partitions are set up.

Holy moly, the majority of our stuff is installed aready. Network support for the T60 hardware is fully functional for both the wired and wireless connection. That definatly makes things easy. You are going to want to be online for this so go configure your networking. It is in:

System->Administraton->Networking

Once you set up your network settings, you can test them by opening up a browser and trying to navigate to a site.

Video

Now that we can access the internet, we need to get the video drivers installed so we can use XGL. In order to do that, we need to change our package manager to have the restricted packages. So open up a terminal (Applications->Accessories->Terminal) and type the following:

sudo nano /etc/apt/sources.list

I went and uncommented every line that started with deb in order to get all of the packages we could use. Also, if you are on a broadband connection, I usually delete the top cdrom line as well. Once this is done, type ctrl-x-y and hit enter to get back to the terminal. Now we must update our packages and it is a good idea to upgrade any packages we have installed and may be out of date so type into the terminal:

sudo aptitude update
sudo aptitude upgrade
sudo aptitude install linux-restricted-modules
sudo aptitude install xorg-driver-fglrx
sudo depmod -a

There we go, now we have video driver support installed. But we have to set up our xserver to reflect our new found drivers.

sudo aticonfig –initial
sudo aticonfig –overlay-type=Xv

And now, I like to go into my configuration and give myself a higher resolution to run at:

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
sudo nano /etc/X11/xorg.conf

Scroll down to where it says Section “Screen” and look for a section called SubSection “Display with a Depth of 24. Under Modes, I like a higher resolution so add 1600x1200 like shown below:

SubSection "Display”
Depth 24
Modes“1600x1200” “1024x768” “800x600” “640x480”
EndSubSection

Now scroll all the way to the bottom and add the following to the bottom of the configuration file.

Section “Extensions”
Option“Composite” “0”
EndSection

Just for those wondering why this is done, the fglrx drivers at the time of this writing don’t have support for composite extensions. Now press ctrl-x-y and press alt+backspace to restart the x-server. You should see a higher resolution x-server, and when you log in, things should be smoother. Just to verify, open up a terminal (Applications->Accessories->Terminal) and type:

glxinfo |grep direct

If the response is:

direct rendering: Yes

Congratulations you have working video drivers!

XGL and Beryl

Well that was fairly boring, now on to XGL. Using your terminal, open up your sources.list again by typing:

sudo nano /etc/apt/sources.list

Scroll to the bottom and add this line:

deb http://ubuntu.beryl-project.org/ edgy main-edgy

ctrl-x-y to save and exit and now we can get the key. The key? Well the packages are digitally signed with a key for validation and we need to add that key. So type this in command to get the key:

sudo wget http://ubuntu.beryl-project.org/quinn.key.asc –quiet -O - | sudo apt-key add -

And it should come back with the response: OK. Now we can install XGL and beryl with our package manager. So type:

sudo apt-get update
sudo apt-get install beryl beryl-core beryl-plugins beryl-plugins-data beryl-settings beryl-manager emerald emerald-themes xserver-xgl

We have everything we need installed, now we just have to configure it. We are going to create a custom session for XGL. So type the following into your terminal:

sudo nano /usr/share/xsessions/xgl.desktop

When it opens, add this too it:

[Desktop Entry]
Encoding=UTF-8
Name=Xgl
Exec=/usr/bin/startxgl.sh
Icon=
Type=Application

ctrl-x-y to save and close the file and then type:

sudo nano /usr/bin/startxgl.sh

When it opens, add this to it:

#!/bin/sh
Xgl -fullscreen :1 -ac -accel glx:pbuffer -accel xv:pbuffer &
sleep 4
export DISPLAY=:1 
exec gnome-session

ctrl-x-y to save and close. We need to be able to execute the scripts we just wrote so type:

sudo chmod a+x /usr/bin/startxgl.sh

If you are wondering exactly what we just did with this text editing, we created a desktop entry for our xserver session manager (The first edit). This entry points to our script that executes gnome with xgl (Second edit). Now we just type ctrl-alt-backspace to kill the xserver again. At the login screen, click sessions and select XGL. Now login as normal.

Well things changed, but it looks a little worse then before. Don’t worry, we will get to that. We need to test beryl first. Open up a terminal again (Applications->Accessories->Terminal) and type:

beryl-manager

Holy wow again. a logo should pop up and all your borders dissapear, and then … your windows are all wavy when you move them. Pretty cool. Now we have to finish it all up. First thing we have to do is make beryl start on your startup so click System->Preferences->Sessions. Click on the startup tab and click Add. Type beryl-manager under the startup command and press ok. This will make beryl-manager load on the start. However, we also want to make it look a little better so press add again and type gnome-settings-daemon and press ok. Now press ctrl+alt+backspace to restart xserver again and login again.

Wow, super cool huh? The little red ruby is where you do all your configuration. Have fun!

Another little issue I have is accidentally hitting shift-backspace. If you find this is annoying as well, I have another post about it below.

Note: When using OpenGL games and other programs of the sort, it is better to run them using regular gnome and not XGL. You can do this just by switching the session when you login.

For more information the ATI Wiki and the Beryl Project Wiki are both really good resources.