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

Red Hat and Fedora

Android Leftovers

Leftovers: OSS and Sharing

  • Apache Graduates Another Big Data Project to Top Level
    For the past year, we've taken note of the many projects that the Apache Software Foundation has been elevating to Top-Level Status. The organization incubates more than 350 open source projects and initiatives, and has squarely turned its focus to Big Data and developer-focused tools in recent months. As Apache moves Big Data projects to Top-Level Status, they gain valuable community support. Only days ago, the foundation announced that Apache Kudu has graduated from the Apache Incubator to become a Top-Level Project (TLP). Kudu is an open source columnar storage engine built for the Apache Hadoop ecosystem designed to enable flexible, high-performance analytic pipelines. And now, Apache Twill has graduated as well. Twill is an abstraction over Apache Hadoop YARN that reduces the complexity of developing distributed Hadoop applications, allowing developers to focus more on their application logic.
  • Spark 2.0 takes an all-in-one approach to big data
    Apache Spark, the in-memory processing system that's fast become a centerpiece of modern big data frameworks, has officially released its long-awaited version 2.0. Aside from some major usability and performance improvements, Spark 2.0's mission is to become a total solution for streaming and real-time data. This comes as a number of other projects -- including others from the Apache Foundation -- provide their own ways to boost real-time and in-memory processing.
  • Why Uber Engineering Switched from Postgres to MySQL
    The early architecture of Uber consisted of a monolithic backend application written in Python that used Postgres for data persistence. Since that time, the architecture of Uber has changed significantly, to a model of microservices and new data platforms. Specifically, in many of the cases where we previously used Postgres, we now use Schemaless, a novel database sharding layer built on top of MySQL. In this article, we’ll explore some of the drawbacks we found with Postgres and explain the decision to build Schemaless and other backend services on top of MySQL.
  • GNU Hyperbole 6.0.1 for Emacs 24.4 to 25 is released
    GNU Hyperbole (pronounced Ga-new Hi-per-bo-lee), or just Hyperbole, is an amazing programmable hypertextual information management system implemented as a GNU Emacs package. This is the first public release in 2016. Hyperbole has been greatly expanded and modernized for use with the latest Emacs 25 releases; it supports GNU Emacs 24.4 or above. It contains an extensive set of improvements that can greatly boost your day-to-day productivity with Emacs and your ability to manage information stored across many different machines on the internet. People who get used to Hyperbole find it helps them so much that they prefer never to use Emacs without it.
  • Belgium mulls reuse of banking mobile eID app
    The Belgium government wants to reuse ‘Belgian Mobile ID’ a smartphone app for electronic identification, developed by banks and telecom providers in the country. The eID app could be used for eGovernment services, and the federal IT service agency, Fedict, is working on the app’s integration.
  • Water resilience that flows: Open source technologies keep an eye on the water flow
    Communities around the world are familiar with the devastation brought on by floods and droughts. Scientists are concerned that, in light of global climate change, these events will only become more frequent and intense. Water variability, at its worst, can threaten the lives and well-beings of countless people. Sadly, humans cannot control the weather to protect themselves. But according to Silja Hund, a researcher at the University of British Columbia, communities can build resilience to water resource stress. Hund studies the occurrence and behavior of water. In particular, she studies rivers and streams. These have features (like water volume) that can change quickly. According to Hund, it is essential for communities to understand local water systems. Knowledge of water resources is helpful in developing effective water strategies. And one of the best ways to understand dynamic water bodies like rivers is to collect lots of data.

Development News

  • JavaScript keeps its spot atop programming language rankings
    U.K.-based technology analyst firm RedMonk just released the latest version of its biannual rankings of programming languages, and once again JavaScript tops the list, followed by Java and PHP. Those are same three languages that topped RedMonk’s list in January. In fact, the entire top 10 remains the same as it was it was six months ago. Perhaps the biggest surprise in Redmonk’s list—compiling the “performance of programming languages relative to one another on GitHub and Stack Overflow”—is that there are so few surprises, at least in the top 10.
  • Plenty of fish in the C, IEEE finds in language popularity contest
    It's no surprise that C and Java share the top two spots in the IEEE Spectrum's latest Interactive Top Programming Languages survey, but R at number five? That's a surprise. This month's raking from TIOBE put Java at number one and C at number two, while the IEEE reverses those two, and the IEEE doesn't rank assembly as a top-ten language like TIOBE does. It's worth noting however that the IEEE's sources are extremely diverse: the index comprises search results from Google, Twitter, GitHub, StackOverflow, Reddit, Hacker News, CareerBuilder, Dice, and the institute's own eXplore Digital Library. Even then, there are some oddities in the 48 programming environments assessed: several commenters to the index have already remarked that “Arduino” shouldn't be considered a language, because code for the teeny breadboard is written in C or C++.