Xcompmgr

From ArchWiki
Revision as of 21:17, 1 July 2010 by Thestinger (Talk | contribs) (fixed header levels)

Jump to: navigation, search

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 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.

Prerequisites

Xcompmgr requires the following:

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

Installation

Both xcompmgr and the transparency tool transset, are available from the standard repositories:

# pacman -S xcompmgr transset

Configuration

To load xcompmgr, simply run:

$ xcompmgr -c

To have it load every time X starts, add the following to your ~/.xinitrc:

xcompmgr -c &

Instead of -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 &

For a full list of options, run:

$ xcompmgr --help

Window Transparency

Although its practical use is limited, due to its slow performance, the 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:

transset n

.. where 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, transset .25 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 either creating a executable file in /etc/profile.d called flash.sh including this line:

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)

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.

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