Compiz
From Wikipedia, the free encyclopedia
It has been suggested that Beryl (window manager) be merged into this article or section. (Discuss) |
It has been suggested that Compiz Fusion be merged into this article or section. (Discuss) |
Screenshot showing the Cube plugin for Compiz on Fedora. |
|
Developed by | David Reveman, Danny Baumann, Dennis Kasprzyk, Matthias Hopf, Dave Arlie, Adam Jackson, Jon Smirl |
---|---|
Latest release | 0.8.2 / 2009-03-19[1] |
Written in | C / OpenGL |
Operating system | Unix-like |
Type | Compositing manager |
License | MIT License |
Website | compiz.org |
Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management. The effects, such as a minimization effect and a cube workspace are implemented as loadable plugins. Because it conforms to the Inter-Client Communication Conventions Manual standard, Compiz can substitute for the default Metacity in GNOME or KWin in KDE.
Some of its features mimic those of competitors, such as Exposé in Apple's Mac OS X and an Alt-Tab application-switcher that uses live previews, instead of just icons. The Composite extension to X is used, as is the OpenGL extension GLX_EXT_texture_from_pixmap [2]. The first version of Compiz was released as free software by Novell (SUSE) in January 2006 in the wake of the also new Xgl.
Contents |
[edit] Hardware requirements
Initially, Compiz only worked with 3D hardware which was 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 the Intel GMA graphics cards, AIGLX also supports using the ATI graphics cards (including R300,R400 and R500 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.[3]
[edit] History
[edit] Merge of the Compiz and Beryl communities
On March 30, 2007 the discussions between the Beryl (a fork of Compiz) and Compiz communities led to a merge 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. Its main activity is focused in installation, configuration and additional plugins to be added to the core functionalities of Compiz.
It has been also agreed 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.[4][5][6]
[edit] Further branches
In the fourth quarter of 2008, two separate branches of Compiz were created: compiz++ and NOMAD; while 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.[7] NOMAD was geared towards the improvement of remote desktop performance for Compiz installations.[8]
[edit] Merge of the Compiz branches
On February 2nd, 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.[9][10][11]
[edit] Features
[edit] Internal
- translucency, dimming, desaturation
[edit] Included plugins
- Annotate: draw things on top of all windows
- Clone: duplicate output on two screens
- Cube: each virtual desktop becomes a face on a cube
- Decoration: a plugin to communicate decoration settings to a decorator
- D-Bus: D-Bus interfacing
- Fade: windows fade in and out
- Gconf: settings come from GNOME
- Ini: Text based configuration
- Inotify: an inotify plugin which allows plugin developers to easily access inotify. It is currently used to notify settings programs when new plugins are added to the plugins directory.
- Minimize: windows minimize (and maximize/restore) with an animation effect
- Move: window moving
- Place: placement of new windows
- Png: allows plugin developers to load PNG files as textures without worrying about the image format.
- Resize: window resizing
- Rotate: the desktop cube can be rotated
- Scale: an overview of all open windows (similar to Mac OS X's Exposé)
- Svg: allows plugin developers to load svg files as textures. Other image plugins can be added so that extra image types will be seamlessly supported.
- Switcher: active window can be chosen with Alt-Tab
- Video: accelerated video output
- Water: ripples trailing mouse and rain effect
- Wobbly: windows wobble while they move
- Zoom: magnifies a part of screen
[edit] Community plugins (Compiz Fusion)
- Animation: animation effects for window events
- Benchmark: plugin to gauge performance
- Bs: brightness and saturation control
- Crashhandler: crash handling through gdb and recovery
- Cube Gears: 3D animated gears in the center of the cube
- Cube Reflection: Draws a reflection of the cube
- Group And Tabs: group windows and access them through a tab bar similar to the well-known feature in browsers
- Negative: inverts color of a window or screen
- Put: moves windows using key binds
- Reflection: watermarks window decorations, similar to Aero-Glass by default
- Screenshot: mode to capture screen regions with the mouse
- Shift Switcher: Provides Flip 3d and Cover Switching of windows
- State: set default opacity and other options for types of windows
- Trailfocus: unfocused windows fade with time
- Mousegestures: advanced mouse gestures to control effect
[edit] Decorators
Compiz uses small programs called decorators which draw the window borders with the usual minimize, maximize and close buttons. Compiz provides two window decorators.
- gtk-window-decorator uses either a basic cairo based rendering engine or can use metacity themes.
- kde-window-decorator uses native KDE themes
In addition, Emerald, Beryl's custom decorator with its own theme format, has been ported to Compiz as part of the Compiz Fusion project (see below) and is available in unofficial packages.[12]
[edit] Patches
Along with plugins, the Compiz community developers often release code patches for existing plugins when the feature does not warrant a plugin of its own; or when it utilizes many of the portions of an existing plugin. Code patches can then be sent to the mailing list for eventual inclusion in the main Compiz distribution. The community provides a valuable testing ground for new ideas.
[edit] Deployments
Compiz is currently available in OpenSolaris and the following Linux distributions (either officially or through a third party):
- Arch Linux - available in the [community] repository.
- CentOS 5
- Debian GNU/Linux - available in stable (etch) and later versions.
- Linux Tiger - available as default settings.
- Fedora Core and Fedora 7-installed but not activated in Fedora 8 DVD installation
- Foresight Linux - installed but not activated in a default 1.0.1 installation.
- Frugalware Linux - available in the extra repository in 0.4 and onwards (see howto)
- Gentoo Linux - available in main portage tree
- SabayonLinux - a live DVD-CD distribution based on Gentoo that automatically sets up Xgl when added to boot time parameters
- Kororaa - a live CD distribution of Gentoo Linux
- VidaLinux - available in the 1.3-alpha4 release. VidaLinux homepage
- Mandriva Linux - both Xgl and Aiglx with Compiz are included as standard in Mandriva starting in version 2007, and continuing until their most recent version, 2008.1. It is also included in the "Mandriva One" live CDs.
- openmamba - available as default settings.
- PCLinuxOS - both Compiz and Beryl are available in the 2007 release.
- PLD Linux Distribution - available in PLD 3.0 (Th)
- Slackware Linux - available in the stable 12.0[1], release.
- openSUSE - Version 10.1 and above of this Linux distribution contains out of the box support for Xgl and Compiz. Tutorials for using Xgl and Compiz on older SUSE Linux version are available at the OpenSUSE.org website.
- SUSE Linux Enterprise Desktop - SLED 10 and newer include both Xgl and Compiz, along with an easy configuration panel icon to enable/disable the visual effects.
- Ubuntu - available in Ubuntu 6.06 LTS and later from in the universe apt repository. A limited version is included by default as "Desktop-Effects" in Ubuntu 7.04 (Feisty Fawn). Since Ubuntu 7.10 (Gutsy Gibbon), Compiz Fusion is enabled by default. [13].
- Yoper - installed but not activated in a default installation as well as on version 3 - Titanum's live CD.
Compiz (Aiglx and XGL) can also be set up on almost any other GNU/Linux-based distribution if the code is compiled correctly; however, there is no support available for this and it is not always a straight-forward procedure. In addition to these Linux distributions, PC-BSD also provides out of the box support for Compiz. However, this option is not enabled by default. FreeBSD is also capable, and the required sources are found in the ports tree[14].
[edit] See also
[edit] References
- Official Compiz site (redirects to the Compiz page to freedesktop.org)
- Compiz community forum
- Compiz on AIGLX
- A Simple Compiz Plugin Walkthrough
- Compiz source code
- ^ http://lists.compiz-fusion.org/pipermail/community/2009-March/000185.html
- ^ http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
- ^ http://www2.ati.com/drivers/linux/linux_8.42.3.html#188413
- ^ Storm, Quinn. "[beryl-dev Merge On (details still to be decided)"]. http://lists.beryl-project.org/pipermail/beryl-dev/2007-March/000356.html. Retrieved on 2007-03-23.
- ^ Carr, Robert. "[beryl-dev Beryl and Compiz Merge: What's actually going on?"]. http://lists.beryl-project.org/pipermail/beryl-dev/2007-March/000371.html. Retrieved on 2007-03-25.
- ^ Laramie, Jeffrey. "[compiz Compiz and Beryl are Reuniting"]. http://lists.freedesktop.org/archives/compiz/2007-April/001809.html. Retrieved on 2007-04-04.
- ^ Compiz feature branch compiz++, Dennis "onestone" Kasprzyk, Wed Dec 24 04:48:17 PST 2008
- ^ NOMAD home page
- ^ Lange, Kevin. "Compiz is Dead, Long Live Compiz!". http://blog.phpwnage.com/article.php?id=34. Retrieved on 2009-02-04.
- ^ Lyngstøl, Kristian. "The Future of Compiz - Take two". http://kristian.blog.linpro.no/2009/02/04/the-future-of-compiz-take-two/. Retrieved on 2009-02-04.
- ^ Lyngstøl, Kristian. "Annoucement: Creation of the Compiz Council and the road ahead". http://lists.freedesktop.org/archives/compiz/2009-February/003284.html. Retrieved on 2009-02-04.
- ^ OpenCompositing forums - Compiz and Compiz Fusion GIT repository for Ubuntu. Retrieved on 2007-06-21.
- ^ Ubuntu Technical Board votes on Compiz for Ubuntu 7.10
- ^ "bsdforums.org -- XGL/Compiz on FreeBSD". http://www.bsdforums.org/forums/showthread.php?p=217677&postcount=8. Retrieved on 2008-04-14.
[edit] External links
Wikimedia Commons has media related to: Compiz |
- Video demonstration of Compiz on Xgl
- Video demonstration of IBM motion sensor integration
- Freedesktop.org wiki for Compiz
- Video Card Support Under XGL
- Linux Edge report Compiz Window Manager Released - Slides, screenshots and a video with more effects
- Install Compiz on Ubuntu - HOWTO
- OpenSolaris Compiz community
- Compiz on openSUSE - HOWTO
- Install Compiz on Gentoo - HOWTO
- Install Compiz on ArchLinux - HOWTO
- Simplest configuration on debian etch - step by step guide
- Debian HOW-TO : AIGLX + Compiz How to install Compiz with AIGLX on Debian
|
|
|