Ubuntu Edgy Installation Guide

In Ubuntu Edgy you can choose between two methods of installing the proprietary ATI driver. If you are new to linux you should use the first method as it is a lot easier than the second one and will work well in most cases. The second method describes how to install the very latest driver version, but requires some additional work and knowledge.

Method 1: Installing Edgy's Included Driver (8.28.8)
The included fglrx driver supports Radeon 8500+ and the X-series cards up to X1900.

Disable Composite Extension
In Ubuntu Edgy the Composite extension is enabled by default, however, fglrx does not yet support Composite with DRI. In order to to disable Composite you have to edit the xorg.conf file: sudo gedit /etc/X11/xorg.conf and add these lines at the end of the file:

Installing the driver
Make sure the restricted repository is enabled in /etc/apt/sources.list or this guide will not work!

sudo apt-get update sudo apt-get install linux-restricted-modules-$(uname -r) #Okay if it is already installed sudo apt-get install xorg-driver-fglrx sudo depmod -a sudo aticonfig --initial sudo aticonfig --overlay-type=Xv

Now Reboot your system:

sudo shutdown -r now

An alternative to the aticonfig --initial command is to edit /etc/X11/xorg.conf and replace the string "ati" with "fglrx" in the "Device" section. This way you won't lose your old "Screen" and "Monitor" settings. Afterwards you can use aticonfig for setting overlay etc.

Confirm that it works
fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: RADEON 9600 Generic OpenGL version string: 2.0.6011 (8.28.8)

Troubleshooting for Method 1

 * The output of dmesg | grep fglrx and /var/log/Xorg.0.log are most useful when looking for errors. You should really include this when you are asking for help somewhere.


 * If you used Method 2 before, you have to unblacklist fglrx again by editing /etc/default/linux-restricted-modules-common. You may have to run sudo lrm-manager afterwards.


 * See Troubleshooting for both Methods

Method 2: Generating/Installing Ubuntu packages for the new 8.29.6 drivers in Ubuntu Edgy Manually
The new fglrx driver supports Radeon 9500+ (older cards will not work!) and the X-series cards up to X1900.

Disable Composite Extension
In Ubuntu Edgy the Composite extension is enabled by default, however, fglrx does not yet support Composite with DRI. In order to to disable Composite you have to edit the xorg.conf file: sudo gedit /etc/X11/xorg.conf and add these lines at the end of the file:

Blacklist old fglrx module from linux-restricted-modules
As ubuntu's linux-restricted-modules package includes the fglrx module from an old driver version (8.28.8), we have to blacklist this module to make sure the new kernel module which is needed by the new driver will be used instead.

sudo gedit /etc/default/linux-restricted-modules-common Edit DISABLED_MODULES to include fglrx

Installing the new driver
Download the ATI driver installer: ati-driver-installer-8.29.6.run (this installer is for 32bit and 64bit systems)

This guide refers to the 32bit version of the driver. The installation procedure for 64bit should be the same as for 32bit, except some filenames will differ slightly.

Change to the download directory. Make sure that you have the universe and multiverse repositories enabled in /etc/apt/sources.list before doing these steps.

Install necessary tools:

sudo apt-get update sudo apt-get install module-assistant build-essential sudo apt-get install fakeroot dh-make debconf libstdc++5 linux-headers-$(uname -r)

Create .deb packages:

sudo ln -sf bash /bin/sh bash ati-driver-installer-8.29.6.run --buildpkg Ubuntu/edgy sudo ln -sf dash /bin/sh

Install .deb packages:

sudo dpkg -i xorg-driver-fglrx_8.29.6-1_i386.deb sudo dpkg -i fglrx-kernel-source_8.29.6-1_i386.deb sudo dpkg -i fglrx-control_8.29.6-1_i386.deb

Remove any old fglrx debs from /usr/src/:

sudo rm /usr/src/fglrx-kernel*.deb

Compile the kernel module:

sudo module-assistant prepare sudo module-assistant update sudo module-assistant build fglrx sudo module-assistant install fglrx sudo depmod -a

Note: You have to recompile the kernel module after each kernel update!

Update the xorg.conf file:

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

Reboot:

sudo shutdown -r now

Confirm that it worked
$ fglrxinfo display: :0.0 screen: 0 OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: RADEON 9700 Generic OpenGL version string: 2.0.6065 (8.29.6)

xorg.conf
The aticonfig --initial command will not update the xorg.conf file if it already has a "fglrx" Device section. However, you may force aticonfig to generate default Monitor, Device, and Screen sections with the following command:

sudo aticonfig --force --initial

General
The output of dmesg | grep fglrx and /var/log/Xorg.0.log are most useful when looking for errors.

2D speed
If you suffer from slow 2D speed it might help to set Option		"XaaNoOffscreenPixmaps" in the fglrx section of /etc/X11/xorg.conf

Is the rebooting really necessary?
No.

However, rebooting is the easiest method to ensure that the kernel module(s) from the old driver are unloaded and the fglrx module is loaded instead. If you don't want to reboot for some reason, you may manually shut down Xorg, unload any old "drm", "radeon" or "fglrx" modules and then start Xorg again.

Revert to Xorg driver
If (for any reason) the fglrx install fails, you can revert to the Xorg driver by executing sudo dpkg-reconfigure xserver-xorg and selecting the "ati" driver, or simply restoring the previous /etc/X11/xorg.conf file, if you made a backup.

You also need to remove the xorg-driver-fglrx or your manually installed drivers to get the 3D acceleration back, since it is provided by file /usr/lib/libGL.so.1.2 which belongs to libgl1-mesa package and which is moved to backup and replaced at the installation of xorg-driver-fglrx (or the manually built) package. In case the removal of the fglrx drivers fails to restore the file from libgl1-mesa, you have to reinstall the package by running:

sudo apt-get install --reinstall libgl1-mesa