Language Selection

English French German Italian Portuguese Spanish

Howto: ATI fglrx driver + Xgl + compiz on Debian Sid for KDE users

Filed under
Howtos

A how-to on manually installing Xgl and compiz on Debian Sid, for KDE users, with the proprietary ATI graphics driver ("fglrx").

Note: This how-to was done with Kanotix, which is very close to stock Debian Sid. I think it'll work on stock Debian Sid, but since I don't have Sid on my spare partition at the moment, I can't test it. If someone here can, it would be much appreciated.

Note: You should already have the fglrx driver installed and enabled before you start installing Xgl.

Note: If you have an nvidia card, AIGLX is a much better way to go than XGL. The new beta nvidia driver, v1.0-9626, supports AIGLX. AIGLX is better for the following reasons: AIGLX is built into X.org (whereas Xgl runs on top of X.org), so it's easy to enable and will get regular updates along with the rest of X.org; and you still get 3D accelleration with AIGLX, meaning you can run, for example, Google Earth (you don't get 3D accelleration with Xgl).

So why not run AIGLX with the ATI driver? Because, as far as I can tell, the proprietary ATI driver doesn't support the "composite" extension. Evidently you can run AIGLX using the non-proprietary "radeon" driver, but it's much slower. So, on my laptop, which has an ATI Radeon Xpress 200M, for example, if I want those fancy desktop effects, I'm stuck with Xgl.

1.Install the following packages from the normal Sid repositories:
libdrm2
libpng3
libxdamage1
libxcomposite1
libxfont1
libglitz1
libglitz-glx1
libgl1-mesa-glx
libfontenc1

Note: Even though compiz packages are in Sid now, they're aimed at GNOME users and don't come with a Preferences utility or a Theme Selector utility. So we'll install a more functional compiz package later.

2. Add to /etc/apt/sources.list:
deb http://cairographics.org/packages/debian/ unstable/
deb-src http://cairographics.org/packages/debian/ unstable/

Then "apt-get update" and install:
libsvg-cairo1
libsvg1

3. Add to /etc/apt/sources.list:
deb http://www5.autistici.org/debian-xgl/debian/ binary-i386/

Then "apt-get update" and install:
xgl
compiz
cgwd-themes

4. Edit /etc/kde3/kdm/kdmrc:
In section "[X-:*-Core]":
change
"ServerCmd=/usr/bin/X -br"
to
"ServerCmd=/usr/bin/Xgl :1 -fp /usr/share/fonts/X11/misc -fullscreen -ac -accel glx:pbuffer -accel xv:pbuffer -br"

Even better, comment out the existing "ServerCmd" so you can go back and forth between Xgl and regular X.

5. Edit /etc/X11/xorg.conf:
In the keyboard section, add: "Option "XkbOptions" "altwin:super_win" "
In the screen section, make sure the default color depth is 24
In the graphics card section, make sure that "sw_cursor" is disabled/commented out

6. Edit /etc/init.d/kdm:
After the "set -e" line, add this line (omit the quotation marks):
"export LIBGL_DRIVERS_PATH=/usr/lib/dri"

At this point, Xgl should be running when you log in to KDE.

7. To start compiz:
Bring up a konsole window and type "compiz-start.py &" You should now have compiz window decorations, wobbly windows, a desktop cube, etc.
You should also have a cgwd icon in your system tray (click on it to set compiz options and select themes!).

In order to start compiz when KDE starts, make a file named "compiz.desktop" with the following text:

[Desktop Entry]
Encoding=UTF-8
Exec=xmodmap -e 'keycode 113 = Mode_switch' -e 'keycode 22 = BackSpace';compiz-start.py
GenericName[en_US]=
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
X-KDE-autostart-after=kdesktop

Double-click on it, and the screen should flicker and...you have compiz going, with all the effects (wobbly windows; destop cube; etc.). You should also have an icon in your system tray that allows you to select themes and set preferences.

If you want it to run every time you log into KDE, put it in ~/.kde/Autostart.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

problem with Gtk

I did every step. At my lovely desktop IBM machine it worked. But now i tried it to a laptopt that has an intel videocard it didnt worked.Here is the output when i tried compiz-start.py

/usr/bin/compiz-start.py:199: GtkWarning: Can't set a parent on widget which has a parent

menu.append(item)
compiz: No composite extension
Couldn't load settings. Reverting to defaults.

** (cgwd:3529): WARNING **: Cannot open pixmap: unshade

** (cgwd:3529): WARNING **: Cannot open pixmap: above

** (cgwd:3529): WARNING **: Cannot open pixmap: unabove

** (cgwd:3529): WARNING **: Cannot open pixmap: sticky

** (cgwd:3529): WARNING **: Cannot open pixmap: unsticky

I can see the icon that will show preferences and the seelection at the tray. But there is no compiz effects on the desktop.
I will be happy if you help me.

compiz not installable on Sid

I tried your instructions for installing compiz on Sid. I ran into a dependency problem as the compiz package requires libdbus-1-2, but Sid only has libdbus-1-3 and dpkg/apt-get doesn't recognize it as fulfilling the dependency.

Any ideas as to if compiz will work with libdbus-1-3?

More in Tux Machines

Building A Linux HTPC / Storage Server With The SilverStone CS381

SilverStone recently sent over their CS381 chassis that has proven to be quite a versatile micro-ATX enclosure that can accommodate up to twelve hard drives (eight of which are hot-swappable) all while coming in at just 400 x 225 x 316mm. The SilverStone CS381 could work quite well as a Linux HTPC / DIY Steam Linux gaming living room PC or SOHO file server system with its compact size while offering immense storage potential. Here's more on the SilverStone CS381 and our build with using a Ryzen 5 3400G that is playing well under Linux with an ASUS B450 motherboard. It's been a while since last taking a look at any SilverStone enclosure, but with continuing to be impressed by their high-end cases over the years, it was exciting to look at the CS381 from their Case Storage Series. The key features of this case are offering support for up to twelve HDD/SSDs, up to a microATX motherboard, and other components while occupying just 30 liters of space. The case can be positioned in either a vertical or horizontal position depending upon the environment and eight of the drives being hot-swappable primes the case for interesting storage server options. Read more

Intel Icelake Thunderbolt Support, Stratix10 Additions & Other Material Hits Linux 5.4

The "char/misc" changes for the Linux 5.4 are as eventful as ever. Greg Kroah-Hartman sent in the char/misc changes earlier this week for the Linux 5.4 merge window that's now half-way through. The since merged material contains a lot of notable hardware support improvements. Exciting us the most is that the Intel Icelake Thunderbolt support is now squared away. Intel had most of the Icelake CPU support in good shape going back months including for the Gen11 graphics, but the Thunderbolt support was the last holdout. With Icelake, the Thunderbolt controller has moved onto the CPU package itself sans the power deliver infrastructure. These changes yielded additional work to get Icelake Thunderbolt support going under Linux, but it's finally there for Linux 5.4 with Icelake laptops beginning to hit retail channels. Read more

Python Programming Leftovers

  • Cogito, Ergo Sumana: Futureproofing Your Python Tools

    The people who maintain Python and key Python platforms want to help you protect the code you write and depend on. [...] Publishing that package is a great way of making it so other people can run and deploy it, even within other parts of your organization. But -- who actually has the keys to the castle? Who can upload a new version, or delete a version that has a problem? You should probably make sure multiple people have either "owner" or "maintainer" privileges on the project on PyPI. And you should review your project security history display, which lists sensitive events (such as "file removed from release version 1.0.1") in your PyPI user account and your PyPI project. We just added this display, so you can look at things that have happened in your user account or project, and check for signs someone's stolen your credentials.

  • py3status v3.20 – EuroPython 2019 edition

    Shame on me to post this so long after it happened… Still, that’s a funny story to tell and a lot of thank you to give so let’s go!

  • Finding Python Developers for Your Startup

    Recently I stumble across a situation while I was helping out for one of the events for JuniorDev SG. There was not a lot of Python developers and some of my other developer's friend. Said that they hardly encounter any developer friends who are using Python for their work. It begins during a conversation, where one of the attendees for a JuniorDev SG event. Approached me to search for Python developers to work for their startup based in Singapore.

Geary 3.34 Debuts with Deeper GNOME Contacts Integration, Other Changes

The Geary email client has issued a brand new release, and in this post I tell you a bit about it. Geary 3.34.0 — you may recall that Geary switched to following GNOME numbering last year — is the latest update to this web-mail friendly mail tool, and there’s healthy dose of improvement on offer, as noted in the release notes. Among them is deeper integration with GNOME Contacts. Geary’s in-app contacts pop-over now supports adding and editing contacts stored in the GNOME Contacts app, and is able to auto-complete email addresses based on data from contacts too. Serial typo-makers like me will appreciate the spell checker now covering the mail composer’s subject line; while the addition of support for Outlook-specific email attachments (TNEF) will please those who regularly run in to issues on that front. Other changes in Geary 3.34.0 include “a substantial number” of server compatibility improvements, background syncing tweaks, and other bug fixes. Read more