Dropping Compiz for Mutter (Metacity 3) compositing?

Posted: 2009-09-22

I'd like to ask the Ubuntu developer community to consider freeing up valuable CD space by removing Compiz and just using Mutter (Metacity 3) compositing in the default installation for Ubuntu 10.04 LTS, Lucid Lynx. From what i have read, the core of Metacity is a lot better than that of Compiz, but some work is needed first to avoid making the change a regression. While Metacity does still lack the huge amount of features available through Compiz plugins, only the few basic essential ones are needed anyways. Extra effects using Compiz can still be easily installed just like everyone did before it came prepackaged with Ubuntu. Once Metacity compositing does everything that Compiz does under the "Normal" Desktop Effects setting in Ubuntu's appearance preferences, then we'll have reached the feature parity we need.

Metacity provides a number of benefits over Compiz. It doesn't depend on accelerated graphics so users that don't have the necessary hardware and drivers for Compiz can still use it and enjoy the applications which require compositing, although it would be nice if Metacity was able to take advantage of accelerated graphics. This does make it ever so slightly more CPU intensive than necessary for users with decent 3D drivers, but it is less resource intensive as a whole, and for the majority of users, the memory consumption is what they notice when Compiz is enabled.

Unlike Compiz, Metacity is actually standards compliant, so it doesn't malfunction when using certain applications. A smooth and consistent desktop shouldn't have any of that. Compiz deviates from the Unix philiosophy and, as Dylan McCall posted to the Ubuntu developer discussion list, many of "Compiz's effects are entirely out of scope for a window manager and rely on horrible, kludgey, unsightly workarounds. All of Metacity's effects are in scope and only exist if they're going to work consistently. Everything else, for example fancy window previews on the window list applet, can and should be implemented by the individual child applications."

He adds that switching between Compiz and Metacity produces an inconsistent user interface which is pronounced by the fact that depending on your hardware setup, Ubuntu will fall back onto Metaicty if it can't enable Compiz:

...users get confused when they switch between Compiz and Metacity, because the two have profoundly different feels, and in some cases different key bindings. Metacity uses workspaces, while default Compiz uses viewports (and a different number, if I remember right). One follows the extended window manager hints spec to precision, another has quirks.
Because of that, switching the window manager should not be considered standard operation. I definitely don't think it is acceptable to dump it as a prominently displayed option as if it is something user friendly to do.
Dylan brings the future of Gnome into consideration as well:
One obvious next step in GNOME's evolution as a desktop environment is the more rigid integration of the window manager with everything else. For example, GNOME-Shell is based on a heavily modified Metacity. In the future a lot of cool stuff will depend on Metacity (or whatever it comes to be called later on). It would be a shame to miss it.
Overall, Metacity is actually prettier, gives the desktop a smoother feel, provides better consistency, and takes up less system resources making Ubuntu feel faster, but some work is still needed before Compiz could be dropped. Can we commit to making this a long-term goal and put it on the roadmap?