Kalpana Kalpana (Editor)

Compiz

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Written in
  
C, C++, Python

Type
  
Window manager

Operating system
  
Unix-like

Compiz

Developer(s)
  
David Reveman, Sam Spilsbury, Danny Baumann, Dennis Kasprzyk, Daniel van Vugt

Initial release
  
2006; 11 years ago (2006)

Stable release
  
0.9.13.1 / January 7, 2017; 55 days ago (2017-01-07)

Compiz /kɒmpɪz/ is a compositing window manager for the X Window System, using 3D graphics hardware to create fast compositing desktop effects for window management. Effects, such as a minimization animation or a cube workspace, are implemented as loadable plugins. Because it conforms to the ICCCM standard, Compiz can be used as a substitute for the default Mutter or Metacity, when using GNOME Panel, or KWin in KDE Plasma Workspaces. Internally Compiz uses the OpenGL library as the interface to the graphics hardware.

Contents

Hardware requirements

Initially, Compiz only worked with 3D hardware supported by Xgl. Most NVIDIA and ATI graphics cards are known to work with Compiz on Xgl. Since May 22, 2006 Compiz works on the standard X.Org Server, by using AIGLX. Besides Intel GMA graphics cards, AIGLX also supports using AMD graphics cards (including R300 and newer cards) using the open-source radeon driver which supports GLX_EXT_texture_from_pixmap since fall 2006.

NVIDIA's binary drivers (since Version 1.0-9629) support GLX_EXT_texture_from_pixmap on standard X.Org server; ATI/AMD's binary drivers do since version 8.42.

History

The first version of Compiz was released as free software by Novell (SUSE) in January 2006 in the wake of the (also new) Xgl. It was one of the earliest compositing window managers for X.

In March 2006 Compiz was ported to AIGLX by Red Hat.

Beryl

Beryl was the project name for the quinnstorm branch of Compiz, announced on September 19, 2006 after Compiz developer Quinn Storm and the development team decided that the fork had come too far from the original Compiz started by Novell (compiz-vanilla). After the Novell XGL/Compiz team (mostly David Reveman) refused the proposition to merge the Quinnstorm changes with compiz-vanilla, the decision was made to make a real differentiation.

Among the differences to Compiz, Beryl had a new window decorator named Emerald based on cgwd along with a theme manager called emerald-theme-manager, used a flat file backend instead of gconf, and had no GNOME dependencies.

Merge of the Compiz and Beryl communities

On March 30, 2007, discussions between the Beryl and Compiz communities led to a merger of the two communities which results in two new software packages:

  • Compiz, (also Compiz-core) which contains only the core functionality of Compiz and base plugins
  • Compiz Fusion, consisting of the plugins, decorators, settings tools and related applications from the Beryl and Compiz communities. Compiz Fusion concentrates on installation, configuration and additional plugins to add to the core functionalities of Compiz.
  • Outcomes include plans to fund a code review panel consisting of the best developers from each community who will see that any code included in a release package meets the highest standards and is suitable for distribution in an officially supported package.

    Further branches

    In the fourth quarter of 2008, two separate branches of Compiz were created: compiz++ and NOMAD; compiz++ was geared toward the separation of compositing and OpenGL layers for the rendering of the window manager without compositing effects, and the port from C to C++ programming language. NOMAD was geared towards the improvement of remote desktop performance for Compiz installations.

    Merge of the Compiz branches

    On February 2, 2009 a conference call was held between developers of Compiz, Compiz++, NOMAD and Compiz Fusion where it was decided to merge the projects together into a unified project, simply named Compiz, with a unified roadmap.

    Compiz 0.9 series

    On July 4, 2010, Sam Spilsbury, lead Compiz developer, announced the release of Compiz 0.9.0 with a new API, rewritten in C++.

    Canonical Ltd. hired Spilsbury to further develop Compiz for Ubuntu in October 2010. Since then Compiz development mostly coincides with Ubuntu development. Main development moved to Canonical's Launchpad service. The 0.9.x versions up to 0.9.5 were seen as unstable/beta software. With version 0.9.6 in progress, Canonical hired developer Daniel van Vugt to work on Compiz full-time. While 0.9.6 never officially released, Compiz 0.9.7.0 was released a month ahead of enterprise-targeted Ubuntu 12.04 LTS (Long Term Support) and declared stable. A few days before the official release of Ubuntu 12.04 a new development branch, 0.9.8, was created in preparation for Ubuntu 12.10. For Compiz version 0.9.8 development has moved to a new Launchpad page.

    In November 2012 Spilsbury announced that he left Canonical. A month later he wrote that he has no plans porting Compiz to Wayland, although he is "still as committed as ever to maintaining compiz in its current form." Half a year later, he stated that he had stopped working on the project in August 2013. Despite this, a small team continues to work on Compiz with version 0.9.13 being the focus of development as of November 2016.

    Compiz Reloaded

    A group forked the Compiz 0.8 series code base and modernized it and maintains it as of 2016.

    Features

    Almost all available Compiz features – except translucency, dimming, and desaturation – are delivered using plugins.

    Compiz plugins include the famous cube effect, Alt-Tab application-switching with live previews or icons, and a feature similar to macOS's Mission Control. The Composite extension to X is used, as is the OpenGL extension GLX_EXT_texture_from_pixmap.

    The Compiz project categorizes the plugins into four main groups: Main, Extra, Unsupported, and Experimental.

    Window managers use a program called a window decorator to provide the window borders with the usual minimize, maximize and close buttons. Unlike many window managers which have only one window decorator, Compiz users have a choice of three:

  • gtk-window-decorator uses either a basic cairo-based rendering engine or can use Metacity themes.
  • kde-window-decorator uses native KWin themes.
  • Emerald, a custom decorator with its own theme format that has been ported to Compiz. It used to be Beryl's default decorator.
  • Deployments

    Compiz or Beryl have usually been deployed on Linux and other X11-based Unix-like platforms together with GNOME 2 and KDE 3. Since version 4.2, however, KDE's own KWin ships with capabilities similar to Compiz. As such, Compiz is not usually deployed with recent Plasma Workspaces versions.

    GNOME version 3.0 uses GNOME Shell which is built as a plugin to the Mutter compositing window manager. This means Compiz cannot be used in conjunction with GNOME Shell.

    Citing a lack of maintenance on the part of the Compiz developers, Fedora removed Compiz from the Fedora repositories from Fedora 17 however Compiz has been reinstated in the Fedora repositories since Fedora 18. An official MATE spin which includes Compiz has been available since Fedora 19.

    Compiz was dropped from the Debian repositories from Debian 7 (Wheezy) onwards in August 2013 due to broken packages and a lack of upstream development on the part of the Compiz developers. Compiz have been reintroduced into Debian in December 2016 by the Hypra.fr Team.

    Compiz was dropped from the Arch Linux repositories in May 2013. Compiz can still be installed from packages available in the Arch User Repository.

    Ubuntu 6.06 LTS and later included Compiz in the universe repository. A limited version was included by default as "Desktop Effects" in Ubuntu 7.04. From Ubuntu 7.10 onwards, Compiz was enabled by default. In 2010 Canonical released their new Unity interface which is written as a plugin for Compiz.

    References

    Compiz Wikipedia