Difference between revisions of "Xcompmgr"

From ArchWiki
Jump to: navigation, search
m (fixed header levels)
(templates; link to xprofile)
Line 4: Line 4:
 
{{i18n|Xcompmgr}}
 
{{i18n|Xcompmgr}}
  
Xcompmgr is a simple [http://en.wikipedia.org/wiki/Compositing_window_manager composite window manager], capable of rendering drop shadows and, with the use of the <tt>transset</tt> utility, primitive window transparency. Designed solely as a proof-of-concept, xcompmgr is a lightweight alternative to Compiz Fusion and similar composite managers.
+
Xcompmgr is a simple [http://en.wikipedia.org/wiki/Compositing_window_manager composite window manager], capable of rendering drop shadows and, with the use of the {{Codeline|transset}} utility, primitive window transparency. Designed solely as a proof-of-concept, xcompmgr is a lightweight alternative to Compiz Fusion and similar composite managers.
  
 
Because it does not replace any existing window manager, it is an ideal solution for [[Openbox]] and [[Fluxbox]] users seeking a more elegant desktop.
 
Because it does not replace any existing window manager, it is an ideal solution for [[Openbox]] and [[Fluxbox]] users seeking a more elegant desktop.
  
 
== Prerequisites ==
 
== Prerequisites ==
 +
 
Xcompmgr requires the following:
 
Xcompmgr requires the following:
 
* [[Xorg]] must be installed, configured and running
 
* [[Xorg]] must be installed, configured and running
Line 14: Line 15:
  
 
== Installation ==
 
== Installation ==
Both <tt>xcompmgr</tt> and the transparency tool <tt>transset</tt>, are available from the standard repositories:
+
 
 +
Both {{Codeline|xcompmgr}} and the transparency tool {{Codeline|transset}}, are available from the standard repositories:
 
  # pacman -S xcompmgr transset
 
  # pacman -S xcompmgr transset
  
 
== Configuration ==
 
== Configuration ==
 +
 
To load xcompmgr, simply run:
 
To load xcompmgr, simply run:
 
  $ xcompmgr -c
 
  $ xcompmgr -c
  
To have it load every time X starts, add the following to your <code>~/.xinitrc</code>:
+
To have it load at session start, add the following to [[xprofile]]:
 
  xcompmgr -c &
 
  xcompmgr -c &
  
Instead of <code>-c</code> you can experiment with the other switches to modify the drop-shadows or even enable fading. Below is a common example:
+
Instead of {{Codeline|-c}} you can experiment with the other switches to modify the drop-shadows or even enable fading. Below is a common example:
 
  xcompmgr -c -t-5 -l-5 -r4.2 -o.55 &
 
  xcompmgr -c -t-5 -l-5 -r4.2 -o.55 &
  
Line 32: Line 35:
 
=== Window Transparency ===
 
=== Window Transparency ===
  
Although its practical use is limited, due to its slow performance, the <tt>transset</tt> utility can be used to set the transparency of individual windows.
+
Although its practical use is limited, due to its slow performance, the {{Codeline|transset}} utility can be used to set the transparency of individual windows.
  
 
To set the transparency of a program window, make sure the desired program is already running, then execute:
 
To set the transparency of a program window, make sure the desired program is already running, then execute:
  transset ''n''
+
  transset n
.. where ''n'' is a number from 0 to 1, zero being transparent and 1 being opaque.
+
.. where {{Codeline|n}} is a number from 0 to 1, zero being transparent and 1 being opaque.
  
Once executed, the mouse cursor will transform to a crosshair. Simply click the desired window and the transparency will change to the value specified. For example, <code>transset .25</code> will set the target window to 75% transparency.
+
Once executed, the mouse cursor will transform to a crosshair. Simply click the desired window and the transparency will change to the value specified. For example, {{Codeline|transset .25}} will set the target window to 75% transparency.
  
 
== Troubleshooting ==
 
== Troubleshooting ==
  
 
=== Fluxbox windows won't raise ===
 
=== Fluxbox windows won't raise ===
This is fixed in fluxbox CVS after 0.9.10. See [http://freedesktop.org/bugzilla/show_bug.cgi?id=1264] for more info.<br> A workaround in 0.9.10 is to set the layer of the Slit to "Desktop" (flux menu -> Configure -> Slit -> Layer -> Desktop).
+
 
 +
This is fixed in fluxbox CVS after 0.9.10. See [http://freedesktop.org/bugzilla/show_bug.cgi?id=1264] for more info.
 +
 
 +
A workaround in 0.9.10 is to set the layer of the Slit to "Desktop" (flux menu -> Configure -> Slit -> Layer -> Desktop).
  
 
=== Mozilla Firefox crashes when entering a Flash site ===
 
=== Mozilla Firefox crashes when entering a Flash site ===
You can fix it by either creating a executable file in /etc/profile.d called ''flash.sh'' including this line:
+
 
 +
You can fix it by creating an executable file named {{Filename|/etc/profile.d/flash.sh}} containing this line:
 
  export XLIB_SKIP_ARGB_VISUALS=1
 
  export XLIB_SKIP_ARGB_VISUALS=1
Or adding the line into line 184 of /opt/mozilla/bin/firefox.
 
  
 
=== Background turns light gray briefly after logging in (e.g. in Openbox) ===
 
=== Background turns light gray briefly after logging in (e.g. in Openbox) ===
This is fixed by installing hsetroot (it's in AUR) and setting the background color by executing ''hsetroot -solid "#000000"'' (just type the code of the colour you want instead of 000000) before xcompmgr.
+
 
 +
This is fixed by installing hsetroot (it's in AUR) and setting the background color by executing {{Codeline|hsetroot -solid "#000000"}} (just type the code of the colour you want instead of 000000) before xcompmgr.
  
 
== Tips ==
 
== Tips ==

Revision as of 16:20, 30 July 2010

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Xcompmgr is a simple composite window manager, capable of rendering drop shadows and, with the use of the Template:Codeline utility, primitive window transparency. Designed solely as a proof-of-concept, xcompmgr is a lightweight alternative to Compiz Fusion and similar composite managers.

Because it does not replace any existing window manager, it is an ideal solution for Openbox and Fluxbox users seeking a more elegant desktop.

Prerequisites

Xcompmgr requires the following:

  • Xorg must be installed, configured and running
  • Composite must be enabled via graphics drivers, AIGLX, or Xgl

Installation

Both Template:Codeline and the transparency tool Template:Codeline, are available from the standard repositories:

# pacman -S xcompmgr transset

Configuration

To load xcompmgr, simply run:

$ xcompmgr -c

To have it load at session start, add the following to xprofile:

xcompmgr -c &

Instead of Template:Codeline you can experiment with the other switches to modify the drop-shadows or even enable fading. Below is a common example:

xcompmgr -c -t-5 -l-5 -r4.2 -o.55 &

For a full list of options, run:

$ xcompmgr --help

Window Transparency

Although its practical use is limited, due to its slow performance, the Template:Codeline utility can be used to set the transparency of individual windows.

To set the transparency of a program window, make sure the desired program is already running, then execute:

transset n

.. where Template:Codeline is a number from 0 to 1, zero being transparent and 1 being opaque.

Once executed, the mouse cursor will transform to a crosshair. Simply click the desired window and the transparency will change to the value specified. For example, Template:Codeline will set the target window to 75% transparency.

Troubleshooting

Fluxbox windows won't raise

This is fixed in fluxbox CVS after 0.9.10. See [1] for more info.

A workaround in 0.9.10 is to set the layer of the Slit to "Desktop" (flux menu -> Configure -> Slit -> Layer -> Desktop).

Mozilla Firefox crashes when entering a Flash site

You can fix it by creating an executable file named Template:Filename containing this line:

export XLIB_SKIP_ARGB_VISUALS=1

Background turns light gray briefly after logging in (e.g. in Openbox)

This is fixed by installing hsetroot (it's in AUR) and setting the background color by executing Template:Codeline (just type the code of the colour you want instead of 000000) before xcompmgr.

Tips

Starting/Stopping xcompmgr on Demand

This script (e.g. in ~/bin) allows easy (re)starting and stopping the composition manager.

#!/bin/bash
#
# Start a composition manager.
# (xcompmgr in this case)

function comphelp () {
  echo "Composition Manager:"
  echo "   (re)start: COMP"
  echo "   stop:      COMP -s"
  echo "   query:     COMP -q"
  echo "              returns 1 if composition manager is running, else 0"
  exit
}

function checkcomp () {
  ( ps nc -C xcompmgr &>/dev/null ) && exit 1
  exit 0
}

function stopcomp () {
  ( ps nc -C xcompmgr &>/dev/null ) && killall xcompmgr
}

function startcomp () {
  stopcomp
# Example settings only. Replace with your own.
  xcompmgr -CcfF -I-.015 -O-.03 -D6 -t-1 -l-3 -r4.2 -o.5 &
  exit
}

case "$1x" in
    "x") startcomp;;
  "-qx") checkcomp;;
  "-sx") stopcomp; exit;;
      *) comphelp;;
esac

I bound COMP and COMP -s to two hot keys in IceWM because there are a few glitches using xcompmgr in this WM. This allows for fast restart or temporary composition removal if needed without interrupting other work.

Additional Resources

  • AIGLX
  • Xgl
  • Composite -- A Xorg extension required by composite managers
  • Compiz Fusion -- A composite and window manager offering a rich 3D accelerated desktop environment
  • Compiz -- The original composite/window manager from Novell
  • Xcompmgr -- A simple composite manager capable of drop shadows and primitive transparency
  • Cairo Composite Manager -- A versatile and extensible composite manager which uses cairo for rendering.
  • Wikipedia: Compositing Window Managers