blogage.de > Forlong > Forlong's Blog > Entry > 02 October 2007 > Desktop effects by default in Gutsy -...
  De | En | Sign up | Login

Desktop effects by default in Gutsy - how Compiz Fusion enhances Ubuntu's desktop of version 7.10

The beta of Ubuntu's next release (7.10 Gutsy Gibbon) is out - time to review the well discussed decision to incorporate desktop effects by default in this version.

 

Desktop effects vs. Compiz

Since this topic has caused a lot of confusion lately (especially since Feisty introduced it's Desktop Effects), I feel it's time to shed some light.

Let me say this right away: the desktop effects in Ubuntu are Compiz.
Unlike Xfce there is no support for compositing effects in GNOME (it would be possible but nobody makes use of it right now) and the same goes for KDE (but this will change at the end of the year with the release of KDE4).
In addition to that, the desktop effects of Xfce are very basic and can not really be compared to the many possibilities of Compiz.

 

So what is Compiz exactly?

Compiz is a window manager, that means it takes care of all the basic needs to interact with the windows on your desktop - like moving, minimizing and resizing.
In GNOME the default window manager is Metacity. Most people won't have even heard about it, because it's integrated in the desktop environment and its name is nowhere mentioned.
This results in the fact that the usual user isn't aware of the mere existing of such software or rather that it's a separate application that can be replaced like any other on Linux.

The bottom line is: Ubuntu's desktop effects are not just an enhancement of the desktop environment but it replaces a specific part of it.

 

Compiz in Gutsy

Compiz has been integrated very well in the GNOME desktop of Ubuntu.
Just like GNOME obscured the existence of Metacity, many people won't know they're running Compiz on Gutsy.

Certain options of Compiz can be configured directly through the panel menu of GNOME in Gutsy.

None of those entries are specifically related to desktop effects.
While the brand new Appearance menu combines a couple of previously separate settings menus, the last two entries were until now exclusively to configure Metacity.

Furthermore if you install the CompizConfig Settings Manager provided by the Compiz Fusion project, you will get an entry in the panel menu, named "Advanced Desktop Effects Settings"

The tab for the effects in the new Appearance menu introduced in Gutsy, replaces the separate Desktop Effects application of Feisty. The second screenshot demonstrates how the menu gets altered automatically, when the CompizConfig Settings Manager is installed:

Then there's the Window Preferences menu, that could only manage Metacity properly before. With the recent version of Compiz, the changes on Metacity get parsed and Compiz adopts them.

Same goes for Keyboard shortcuts, since there are many settings for window management located there, this had to be adjusted to work with Compiz as well:

The only problem that hasn't been resolved, is that you can't change the number of desktops in the panel's Workspace Switcher.
You would have to do that in gconf or turn off the effects, change them in the context menu of the workspace switcher and turn the effects back on.

 

The default configurations

Ubuntu Gutsy is the first distribution to install and use Compiz with the plugins of Compiz Fusion.
By default there are, besides the core, the main plugins of Compiz as well as the main and extra plugins of Compiz Fusion installed.

So let's have a look at the default settings.
As you could see in the screenshot above, we can choose between "normal" and "extra" effects.

The plugins used by the normal effects (besides the basic plugins for moving and resizing windows etc.) are:

  • Animations
  • Application Switcher
  • Desktop Wall
  • Enhanced Zoom Desktop
  • Expo
  • Negative
  • Scale
  • Viewport Switcher
As you can see, that's really not too much and accordingly tame are the effects that you will get to see.
Ubuntu obviously aimed to mimic Metacity's behaviour mostly and added some flavour of Compiz.
There is no cube nor wobbly windows by default, nothing screams "look at those fancy effects!"

The first thing you might notice are the shadows on panels and windows and maybe the transparent part of the titlebar on inactive windows.
And when you change desktops for the first time, you'll see a nice animation that shows you where you switch to - although it has to be pointed out that it's pretty superfluous with Ubuntu's two desktops by default.

Only the window animations are a little more intense then I would have thought and, to be honest, I think is appropriate. Particularly the open animation can get quite annoying in the long run.
Same goes for the Alt+Tab switcher, that doesn't really follow the one you are used to from Metacity.

 

New Features

Compiz isn't just about effects, it provides a lot of nice usability features.

Viewport Switcher

That's a feature that has already been implemented in many window managers before (except Metacity). It allows you to switch desktops with the mousewheel, while hovering with the mousecursor over the desktop.
This replaces the scrolling over the workspace switcher in the panel.
But you can still change desktops the way you are used to with the keyboard, of course.

Scale

This is one of the most practical features of Compiz and many users claim they couldn't live without it anymore.
Once initiated, it will display all the open windows of the current desktop at once and you can choose which one you would like to have on focus next.
It's basically like an application switcher but much more clearly arranged and intuitive to use.

Unfortunately, this feature hasn't been mapped to a screen corner in Ubuntu (in contrary to Compiz' default settings), so many people won't even know that such a feature exists until somebody tells them.

 

Expo

Similar to Scale, this plugin displays all of your desktops at once.
What you'll get to see is a live preview of your desktops and windows. You are even able to re-arrange windows between the desktops in this mode.
It can be used as a more visual way to change desktops as well, because this way it's much easier to identify the desktop you want to switch to.

And again, no hot corner for this feature in Ubuntu. I know it brakes Fitts' law but those are two killer features of Compiz and acquiring them through the upper screen corners is very effective once you get used to it.

 

Enhanced Zoom Desktop

This is pretty much a magnifier for your desktop. But the clou is, you get to have full control over your desktop and applications while zooming in.
This includes typing in form fields or any application like a text editor.
Additionally you can move/resize/minimize/etc. your windows, open the panel menus or start an application - everything you usually do.

And it's not limited to the magnified section, you can indefinitely zoom in and still move into every corner of the desktop.
It even works with other features activated, like scale and expo.

 

Negative

Ever stumbled upon a website that had such lousy contrast, you had troubles reading the text?
Then this is for you.
This feature provides high-contrast window contents by simply inverting the colors.

You can either invert the current windows or all open windows at once.

 

Extra Effects

Now, lets have a look at the extra option that »provides more aesthetically pleasing set of effects« and even »requires faster computer«
Sounds exciting, eh? Well, don't hold your breath.
The number of additional plugins isn't exactly mind-bogglingly large:

  • Shift Switcher
  • Wobbly Windows

Yes, that's it. Two plugins.

And while it's perfectly understandable that the wobbly windows aren't part of the default settings, it would have been no problem to add the Shift Switcher to the "normal" set, because it's mapped to another shortcut than the usual one.
And it doesn't require a faster computer, of course. So there isn't really a reason, why it's not there by default - it's much nicer than the usual Application Switcher anyway.

So it boils down to this: the only real difference between the normal and the extra set are the wobbly windows. Which is a little disappointing.
There's no cube (and that's particularly disappointing, since Feisty had an option to get it), no additional transparency effects like Trailfocus, no Window Previews, no Scale Addons or - and that would have made the "disclaimer" about faster computers comprehensible - Water Effects.

 

Worst case scenario

Travis Watkins (aka Amaranth) described the worst case in his blog as someone that doesn't get Compiz to work at all.
But it's enabled by default, so what happens to anyone with unsuitable hardware?

To answer this, I will have to get a little techie but I can assure you this already: you won't have to worry about not being able to start your graphical interface or something like this.
Ubuntu makes sure on several levels that everything will be as usual and you'll end up using GNOME's default window manager Metacity.
So you won't even notice there has been changed anything from Feisty to Gutsy in terms of window managers when your graphics card (driver) doesn't support composition.

First of all there's the gnome-wm script.
This is the default way in GNOME to run the window manager on startup.
And a comment in that script says it right there:

# metacity is still the default wm in GNOME
It makes use of a gconf key (that's actually considered as depracted because of the gnome-wm script but things are a little more complex now than with the usual GNOME).
As you can see, the key points to /usr/bin/compiz which is the startscript for Compiz.

 

The Compiz wrapper

The actual binary that starts Compiz is called 'compiz.real' in Ubuntu.
What you start with 'compiz' is a script that takes care of everything for you.
It has mainly been written due to the fact that if you build Compiz from source, you will have to run it with certain extensions. For example, when compiling from git, I used to run Compiz like this:

LIBGL_ALWAYS_INDIRECT=1 compiz --replace --indirect-rendering --sm-disable --ignore-desktop-hints ccp


In order to run the proper command, the script needs to check how you are trying to run Compiz.

 

Whitelist and blacklist for drivers and hardware

Apart from taking care of running Compiz properly, the wrapper contains a whitelist as well as a blacklist in Ubuntu - and that's the interesting part.

The whitelist contains only five drivers: nvidia, intel, ati, radeon and i810.
So the script checks your Xorg.0.log, if one of those drivers are in use.
If not, you'll start with Metacity. So this basically locks out all

  • Nvidia users that didn't install the proprietary driver
  • ATI users whose card isn't supported by the open radeon driver
  • Savage users
  • Via users
  • Matrox users
  • users that are trying to run Compiz on Ubuntu in a virtual machine


But even if your set-up passes this test, there's a blacklist, that checks for problematic hardware or hardware that shouldn't run Compiz on those drivers (currently, that applies only to newer ATI cards whose 3D support by the open radeon driver is only experimental).

Last but not least, there are also certain hardware tests such as checking the amount of memory and the maximum 3D texture size of the card, compared to the resolution in use.

So as you can see, Ubuntu doesn't take a chance here.

 

BulletProof-X

If all else fails, there is still the new feature introduced in Gutsy called BulletProof-X.

This is a new failsafe mode that comes into operation if the graphical X-Server fails to start.
Instead of the infamous scrambled blue screen telling you this and redirecting you to a root shell to adjust this manually, it now starts a basic graphics environment (see here for screenshots).
In this failsafe X mode runs only a single application: displayconfig-gtk

This is a GTK frontend for the displayconfig of the KDE guidance project, introduced in Gutsy.
The user is able to choose a monitor type and graphics driver from a list and can do further adjustments (resolution and the like).
The best case would be that you make a backup of the configurations before fiddling with them. Then all you have to do is choose it from the dropdown menu and start the X-Server just fine.

But as already pointed out, this is really the last resort. Normally disabling the Visual Effects yourself - even if you have to log in to your failsafe GNOME session - should solve any problems related to Compiz.

 

Possible problems for ATI users

ATI users that want or have to use the proprietary fglrx driver might ask now: what about us? Our driver is not on the whitelist!
Don't worry, the script checks for Xgl prior to the whitelist (in case you didn't know: fglrx doesn't support AIGLX right now, so those users need to install this in order to run Compiz) - so if Xgl is running, your free to go.

But that's actually a weak point in the script. If Xgl is not running, the script proceeds and comes to the conclusion that it's not possible to run Compiz.

The problem is, the user doesn't get any information that he needs to install Xgl to get the effects.
Even if you try to enable the effects yourself, all you'll get is a vague error message.

So you actually have to go ahead and run compiz in the terminal (which the usual user will probably never do, because he doesn't even know it's Compiz that he's looking for in the first place):

Checking for Xgl: not present.
No whitelisted driver found
aborting and using fallback: /usr/bin/metacity

And still no word of that it is something the user can install...

This is particularly unfavorable in the light of Gutsy's new feature that it tells people right after the install, that a restricted driver is available for them:

So all users with ATI cards, that are supported by the radeon driver, will have desktop effects out-of-the-box on first boot but when they follow this popup (and who wouldn't?) it will break Compiz and they are left without a clue as to way it worked before and now, when they are using their hardware "more efficiently", it doesn't.

It would be easy to blame this new feature, where the restricted drivers manager checks for available drivers by default or you could say the text is misleading.
But that wouldn't address this issue in its entirety, since it is perfectly appropriate for Nvidia users. As we saw, Nvidia users in fact rely on the proprietary driver in order to use desktop effects.

So the only solution to this would be to inform the user about this issue before or at least after the install of the fglrx driver.

This could be for instance a comment in the GUI of the Restricted Drivers Manager.
Or, even better, a detailed description in the popup window that asks you whether you really want to enable fglrx.

Another possible way would be a popup after the install of the xorg-driver-fglrx package.

That this would be possible, shows the installation process of Xgl.
When you install the package xserver-xgl in Gutsy, there's a message now telling you about the new features of that package.

Ever since Dapper you had to set up a separate X-session, which involved gathering a lot of cryptic commands and if you didn't do it properly, the session either didn't start at all or you had to face certain drawbacks. Although they haven't been resolved entirely, the new solution in Gutsy is a major step in the right direction.

 

Conclusion

Since I know the troubles of compositing effects very well (as I'm doing support for Beryl/Compiz for nearly a year now in various forums, including the ones of the now defunct Beryl site, the german Ubuntu community, compiz-fusion.org and the ubuntuforums) I was very sceptical that Ubuntu could really carry it off.

Even in the face of how well integrated Compiz is in the GNOME desktop and the (mostly) reasonable default settings, I still would have been rather put off by the idea of having them switched-on by default.
But after an exhaustive examination, I think they have done an amazing job (and by "they", I refer to the Ubuntu devs as well as the Ubuntu community, that participated so well in bug triaging) which persuades me, that this was anything but a rushed decision.

 

Why desktop effects by default?

That's a legitimate question. Do we really need them?
As I tried to show you, Compiz is not just about eye candy. It has some pretty convenient features and because of the already vast number of plugins available, it is very customizable.
Besides, it can be configured to replace Metacity pretty seamless.

Then, no matter what you may think about this, Compiz has become a killer application for Linux in the past few years. The internet is packed with videos showing off desktop effects and people keep asking »where can I get my hands on this, that's awesome!«
What an impact this has, shows the many people that are still asking about Beryl, although the project has already been ended (and it's features incorporated in Compiz Fusion mostly) but those videos are still around.

In the end many users get drawn to Linux because of that and the desktop has to get ready for them, so Ubuntu had to take a brave step (some might even call it gutsy) to show the people willing to change, this is the right distribution to choose.
On a side note, Ubuntu heavily relies on community support and from that point of view the decision to install and set up Compiz Fusion by default, has made things considerably easier.

In addition to that, Ubuntu has a large community that takes great interest in those effects as well as a powerful infrastructure with Launchpad.
Compiz and Compiz Fusion will benefit from both.
Both bugzillas of Compiz (located at fd.o) and Compiz Fusion (located at opencompositing for now) haven't exactly been overrun with reporters.
That's mostly due to the fact that both aren't well known but you would also have to set up a new account for each. Since it's common to report upstream bugs on Launchpad as well, there's actually no reason to hesitate from reporting the bugs you stumble upon.

 

Is it the right time?

I don't know, frankly. It's definitely the first time this could come into serious consideration but it may have been better to wait until the next release.
The Compiz Fusion project is fairly new and this is the very first time it's plugins have been incorporated.
But the problem is, the next version (code name: Hardy Heron) of Ubuntu is a LTS release, so it's best to test those packages thoroughly before this. It's even questionable if Compiz will be turned on by default in Hardy anyway, so we would have to wait for the release after the next one.

Besides, Compiz has already been installed by default in Feisty (although not turned on) and Beryl is in Feisty's (universe) repository as well - since most Compiz Fusion plugins come from there, you could say both applications have already been tested thoroughly by the Ubuntu community.

 

Synopsis

The desktop effects have been integrated very well in the (GNOME) desktop of Ubuntu 7.10 Gutsy Gibbon.
Compiz replaces Metacity almost seamlessly and adds convenient functionality with the help of Compiz Fusion.
While there are still certain issues to resolve until everybody benefits from this (such as fglrx users, although it has to be pointed out that Xgl may not be necessary anymore, at the end of the year) most are taken care of.
Nevertheless, Ubuntu doesn't want to take risks and excludes certain set-ups without further ado from this decision, so the concerned users shouldn't even notice there has been changed anything at all.

Trackbacks



No trackbacks, yet.

Comments Help Feed

henriquemaia (Anonymous)
4 years ago

Excellent review. Congratulations.

Jadd (Anonymous)
4 years ago

Those ATI problems suck! I was hoping for it to be handled better than that.

Marex (Anonymous)
4 years ago

The best "Compiz by befault" review I have read so far. :)

sxfNf (Anonymous)
4 years ago

What is in the "Custom" entry for Desktop effects? Can you choose other effects not available in the Normal and Extra settings (such as the cube)? If the cube is the killer "must have" effect, how does one go about installing/enabling it?

Ernst Lanser (Anonymous)
4 years ago

Jadd, remember, ubuntu is handling the ati problem very well. If it doesn't work it'll switch back to metacity. And if you mess up your settings the fail safe config will popup! Blaim ati for all the false and late promises. Let's hope ati keeps their deadline for the new driver at the end of this month.

Maarten Kooiker (Anonymous)
4 years ago

Nice review! There are some very nice and useful features, and it runs on ''slow'' computers! unlike Vista (which would not even install on my computer I guess....

sread (Anonymous)
4 years ago

Thanks for the excellent article...very complete and informative!

hoellp (Anonymous)
4 years ago

Hey sxfNf.
As mentioned in the article, you have to install CompizConfig Settings Manager (ccsm), so you can activate any additional plugins.
If the ccsm is installed, you get the custom radio, which will activate the settings chosen via ccsm.
Have fun.

Shark (Anonymous)
4 years ago

good review, can't wait to get my hands on Gutsy :)

Waldo (Anonymous)
4 years ago

Very eloquent review. Thanks.

ANTONISS (Anonymous)
4 years ago

How do U install compiz on Kubuntu 7.10???
Any good step by step guide..that i can follow?

Thanks for your help
aantoniss@gmail.com

4 years ago

Have a look at this guide and ignore everything regarding the repository.

Abhisek (Anonymous)
4 years ago

Great review! thank you so much for this...

Larry (Anonymous)
4 years ago

Very informative article. I have not been able to get Compiz working right and this article gives me the best explanation as to why.

I'm using a Radeon graphics card, the fglrx driver, 2 monitors and the ATI big desktop configuration.

I can enable Compiz, but it breaks the big desktop. The 2 monitors still work, but the panels are misplaced, and windows lose their sensitivity to the break between the 2 screens. Applications often boot up stradleing the 2 screens. It's distracting and I end up spending more time moving windows around.

I reverted back to the original configuration of big desktop. Efficient use of the 2 screen setup is more important to me than the extra features of compiz.

Ozzyprv (Anonymous)
4 years ago

Excellent review.
Thank you one more time. Gracias.

Oz.

Somayaji (Anonymous)
4 years ago

Simply superb. The review is fantastic.

Robert Lankford (Anonymous)
4 years ago

Thank you for such an excellent blog post. This was exactly what I was looking for this afternoon!

Col (Anonymous)
4 years ago

Just wanted to say thanks for writing this - extremely informative.

Samus (Anonymous)
4 years ago

Very informative. Thank you for writing this. I hope many more Linux noobs, like me, can discover this article. Spent many excruciating hours troubleshooting my ATI setup. Its good to understand why, what, and how its not working.

Universal Cynic (Anonymous)
3 years ago

Good article.
BTW, I struggled to get Compiz to run on my ATI X1300 (running openSUSE 10.3) for weeks. And then it just works after I updated to Xorg 7.3 and reinstalling (and recompiling) the proprietary ATI Catalyst 8.3. Just got me confused but it works superbly and I am just so happy now!
Now, if only I can get vnc to listen to other port than 5900 (my firewall have no port masquerading), that XP partition is going bye-bye. :)

3 years ago

Very impressive desktop. I think I'll ditch my buggy Vista install and migrate to Hardy Heron. Thanks for the post.

RSA course (Anonymous)
3 years ago

I've recently switched from Microsoft to Ubuntu. It was a bit of a learning curve, but I'm pleased I made the change. It boots much faster and Open Office serves all my needs.

 

Thanks for th post.

fintip (Anonymous)
3 years ago

Even running 8.04, this was the most informative article on compiz I've yet read- helped me diagnos my problems very well (I'm one of those unfortunate blacklisted and formerly confused ATI users).

Seems many of the problems have not yet changed. I wished Ubuntu would use this same philosophy on safety before features for their sound- I wish pulse audio wasn't being force on me, and it would default back to the much more functional sound server it was using before. :\

L

Holland Blinds (Anonymous)
3 years ago

I've just got myself a bootable version of Fedora 10. It boots from a USB drive. very slick indeed. It's not as easy to install packages as Ubuntu, but at least it can boot from a USB without too much effort.

Blogshot (Anonymous)
2 years ago

Yes, I wish Ubuntu would get it's act together when it comes to bootable USB versions. Some versions support it, some don't.

Renjuuu (Anonymous)
2 years ago

nice review!!

monicauk (Anonymous)
one year ago

Thanks for sharing these interesting informatin.

Monique (Anonymous)
one year ago

Thanks for the info. this has saved me alot of time

Stacked Stone (Anonymous)
one year ago

Good review, very informative. Spot on....

electric winch (Anonymous)
one year ago

 This is great! It really shows me where to expand my blog. I think that sometime in the future I might try to write a book to go along with my blog, but we will see.Good post with useful tips and ideas.

魔域私服 (Anonymous)
one year ago

Your blog site is excellent. Say thanks to you truly for providing plenty of both useful and interesting advise. I will bookmark bookmark your website and will be absolutely coming back.

one year ago

Great Article. im not to much of a nerd, but you dumbed it down well.

Bullet Proof X sounds like a great addition,

foam insulation (Anonymous)
11 months ago

 Great review, really is fantastic!

Antenna Installation (Anonymous)
11 months ago

This had been a very informative article. I've struggled to get Compiz working right and this article gives me the best explanation as to why. Cheers.



Add comment


(not required)

Please enter the white text to the text field "code" (spam protection).

r k A L P A V