Moving Compiz to a local overlay in Gentoo

Sadly, Compiz’s heyday has passed and the Compiz ebuilds in the Gentoo Portage main tree were recently masked for removal. I rarely use Compiz these days, as KWin’s Desktop Effects are now almost as good. Nevertheless I want to keep Compiz installed for the time being, so I decided to move the ebuilds to a local overlay before the Gentoo developers remove them from the main Portage tree. Here’s how I did it.

The masked Compiz packages installed on my machine were:

# eix -I compiz
[D] dev-python/compizconfig-python
Available versions: [M](~)0.8.4 [M](~)0.8.4-r1 [M](~)0.8.4-r3
Installed versions: 0.8.4-r3(00:52:18 01/09/11)
Homepage: http://www.compiz.org/
Description: Compizconfig Python Bindings

[D] x11-libs/compiz-bcop
Available versions: [M](~)0.8.4
Installed versions: 0.8.4(23:33:17 27/08/11)
Homepage: http://www.compiz.org/
Description: Compiz Option code Generator

[D] x11-libs/compizconfig-backend-gconf
Available versions: [M](~)0.8.4-r2
Installed versions: 0.8.4-r2(18:39:26 27/08/11)
Homepage: http://www.compiz.org/
Description: Compizconfig Gconf Backend

[D] x11-libs/compizconfig-backend-kconfig4
Available versions: [M](~)0.8.4 {aqua}
Installed versions: 0.8.4(23:35:31 27/08/11)(-aqua -kdeenablefinal)
Homepage: http://www.compiz.org/
Description: Compizconfig Kconfig Backend

[D] x11-libs/libcompizconfig
Available versions: [M](~)0.8.4-r2!t
Installed versions: 0.8.4-r2!t(18:32:41 27/08/11)
Homepage: http://www.compiz.org/
Description: Compiz Configuration System

[D] x11-plugins/compiz-plugins-extra
Available versions: [M](~)0.8.6-r1 {gconf libnotify}
Installed versions: 0.8.6-r1(23:35:08 27/08/11)(libnotify -gconf)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Extra Plugins

[D] x11-plugins/compiz-plugins-main
Available versions: [M](~)0.8.6-r1 {gconf}
Installed versions: 0.8.6-r1(18:33:51 27/08/11)(-gconf)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Plugins

[D] x11-plugins/compiz-plugins-unsupported
Available versions: [M](~)0.8.4-r1!m
Installed versions: 0.8.4-r1!m(18:36:55 27/08/11)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Unsupported Plugins

[D] x11-wm/compiz
Available versions: [M](~)0.8.6-r3 {+cairo fuse gconf gnome gtk kde +svg}
Installed versions: 0.8.6-r3(18:54:59 23/11/11)(cairo gtk kde svg -fuse -gconf -gnome)
Homepage: http://www.compiz.org/
Description: OpenGL window and compositing manager

[D] x11-wm/compiz-fusion
Available versions: [M](~)0.8.4-r1 [M](~)0.8.6 {emerald gnome kde unsupported}
Installed versions: 0.8.6(18:55:16 23/11/11)(emerald kde -gnome -unsupported)
Homepage: http://www.compiz.org/
Description: Compiz Fusion (meta)

Found 10 matches.
# eix -I fusion
[D] x11-apps/fusion-icon
Available versions: [M](~)0.1-r2 {gtk qt4}
Installed versions: 0.1-r2(18:55:09 23/11/11)(gtk qt4)
Homepage: http://compiz-fusion.org
Description: Compiz Fusion Tray Icon and Manager

[D] x11-wm/compiz-fusion
Available versions: [M](~)0.8.4-r1 [M](~)0.8.6 {emerald gnome kde unsupported}
Installed versions: 0.8.6(18:55:16 23/11/11)(emerald kde -gnome -unsupported)
Homepage: http://www.compiz.org/
Description: Compiz Fusion (meta)

Found 2 matches.
# eix -I ccsm
[D] x11-apps/ccsm
Available versions: [M](~)0.8.4-r1
Installed versions: 0.8.4-r1(23:33:31 27/08/11)
Homepage: http://www.compiz.org/
Description: Compizconfig Settings Manager

# eix -I emerald
[D] x11-themes/emerald-themes
Available versions: [M](~)0.5.2
Installed versions: 0.5.2(18:47:58 27/01/11)
Homepage: http://compiz-fusion.org
Description: Emerald window decorator themes

[D] x11-wm/emerald
Available versions: [M](~)0.8.4-r2
Installed versions: 0.8.4-r2(21:28:46 27/08/11)
Homepage: http://www.compiz.org/
Description: Emerald Window Decorator

Found 2 matches.

Using the locate command I quickly located the ebuilds:

/usr/portage/dev-python/compizconfig-python/compizconfig-python-0.8.4-r3.ebuild
/usr/portage/x11-libs/compiz-bcop/compiz-bcop-0.8.4.ebuild
/usr/portage/x11-libs/compizconfig-backend-gconf/compizconfig-backend-gconf-0.8.4-r2.ebuild
/usr/portage/x11-libs/compizconfig-backend-kconfig4/compizconfig-backend-kconfig4-0.8.4.ebuild
/usr/portage/x11-libs/libcompizconfig/libcompizconfig-0.8.4-r2.ebuild
/usr/portage/x11-plugins/compiz-plugins-extra/compiz-plugins-extra-0.8.6-r1.ebuild
/usr/portage/x11-plugins/compiz-plugins-main/compiz-plugins-main-0.8.6-r1.ebuild
/usr/portage/x11-plugins/compiz-plugins-unsupported/compiz-plugins-unsupported-0.8.4-r1.ebuild
/usr/portage/x11-wm/compiz/compiz-0.8.6-r3.ebuild
/usr/portage/x11-wm/compiz-fusion/compiz-fusion-0.8.6.ebuild
/usr/portage/x11-apps/fusion-icon/fusion-icon-0.1-r2.ebuild
/usr/portage/x11-apps/ccsm/ccsm-0.8.4-r1.ebuild
/usr/portage/x11-themes/emerald-themes/emerald-themes-0.5.2.ebuild
/usr/portage/x11-wm/emerald/emerald-0.8.4-r2.ebuild

I first created the necessary directories in my local overlay:

mkdir -p /usr/local/portage/dev-python/compizconfig-python
mkdir -p /usr/local/portage/x11-libs/compiz-bcop
mkdir -p /usr/local/portage/x11-libs/compizconfig-backend-gconf
mkdir -p /usr/local/portage/x11-libs/compizconfig-backend-kconfig4
mkdir -p /usr/local/portage/x11-libs/libcompizconfig
mkdir -p /usr/local/portage/x11-plugins/compiz-plugins-extra
mkdir -p /usr/local/portage/x11-plugins/compiz-plugins-main
mkdir -p /usr/local/portage/x11-plugins/compiz-plugins-unsupported
mkdir -p /usr/local/portage/x11-wm/compiz
mkdir -p /usr/local/portage/x11-wm/compiz-fusion
mkdir -p /usr/local/portage/x11-apps/fusion-icon
mkdir -p /usr/local/portage/x11-apps/ccsm
mkdir -p /usr/local/portage/x11-themes/emerald-themes
mkdir -p /usr/local/portage/x11-wm/emerald

Then I copied the ebuilds and associated files into each directory and generated a manifest for each:

cd /usr/local/portage/dev-python/compizconfig-python
cp -r /usr/portage/dev-python/compizconfig-python/* .
ebuild compizconfig-python-0.8.4-r3.ebuild manifest
cd /usr/local/portage/x11-libs/compiz-bcop
cp -r /usr/portage/x11-libs/compiz-bcop/* .
ebuild compiz-bcop-0.8.4.ebuild manifest
cd /usr/local/portage/x11-libs/compizconfig-backend-gconf
cp -r /usr/portage/x11-libs/compizconfig-backend-gconf/* .
ebuild compizconfig-backend-gconf-0.8.4-r2.ebuild manifest
cd /usr/local/portage/x11-libs/compizconfig-backend-kconfig4
cp -r /usr/portage/x11-libs/compizconfig-backend-kconfig4/* .
ebuild compizconfig-backend-kconfig4-0.8.4.ebuild manifest
cd /usr/local/portage/x11-libs/libcompizconfig
cp -r /usr/portage/x11-libs/libcompizconfig/* .
ebuild libcompizconfig-0.8.4-r2.ebuild manifest
cd /usr/local/portage/x11-plugins/compiz-plugins-extra
cp -r /usr/portage/x11-plugins/compiz-plugins-extra/* .
ebuild compiz-plugins-extra-0.8.6-r1.ebuild manifest
cd /usr/local/portage/x11-plugins/compiz-plugins-main
cp -r /usr/portage/x11-plugins/compiz-plugins-main/* .
ebuild compiz-plugins-main-0.8.6-r1.ebuild manifest
cd /usr/local/portage/x11-plugins/compiz-plugins-unsupported
cp /usr/portage/x11-plugins/compiz-plugins-unsupported/* .
ebuild compiz-plugins-unsupported-0.8.4-r1.ebuild manifest
cd /usr/local/portage/x11-wm/compiz
cp -r /usr/portage/x11-wm/compiz/* .
ebuild compiz-0.8.6-r3.ebuild manifest
cd /usr/local/portage/x11-wm/compiz-fusion
cp -r /usr/portage/x11-wm/compiz-fusion/* .
ebuild compiz-fusion-0.8.6.ebuild manifest
cd /usr/local/portage/x11-apps/fusion-icon
cp -r /usr/portage/x11-apps/fusion-icon/* .
ebuild fusion-icon-0.1-r2.ebuild manifest
cd /usr/local/portage/x11-apps/ccsm
cp -r /usr/portage/x11-apps/ccsm/* .
ebuild ccsm-0.8.4-r1.ebuild manifest
cd /usr/local/portage/x11-themes/emerald-themes
cp -r /usr/portage/x11-themes/emerald-themes/* .
ebuild emerald-themes-0.5.2.ebuild manifest
cd /usr/local/portage/x11-wm/emerald
cp -r /usr/portage/x11-wm/emerald/* .
ebuild emerald-0.8.4-r2.ebuild manifest

My /etc/make.conf file contains the following lines required for my local overlay and to accept any licences:

PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage/"
ACCEPT_LICENSE="*"

and I named my local overlay ‘local_overlay':

mkdir /usr/local/portage/profiles
echo "local_overlay" > /usr/local/portage/profiles/repo_name

I then unmasked the ebuilds in my local overlay by listing them in the file
/etc/portage/package.unmask:

=dev-python/compizconfig-python-0.8.4-r3::local_overlay
=x11-libs/compiz-bcop-0.8.4::local_overlay
=x11-libs/compizconfig-backend-gconf-0.8.4-r2::local_overlay
=x11-libs/compizconfig-backend-kconfig4-0.8.4::local_overlay
=x11-libs/libcompizconfig-0.8.4-r2::local_overlay
=x11-plugins/compiz-plugins-extra-0.8.6-r1::local_overlay
=x11-plugins/compiz-plugins-main-0.8.6-r1::local_overlay
=x11-plugins/compiz-plugins-unsupported-0.8.4-r1::local_overlay
=x11-wm/compiz-0.8.6-r3::local_overlay
=x11-wm/compiz-fusion-0.8.6::local_overlay
=x11-apps/fusion-icon-0.1-r2::local_overlay
=x11-apps/ccsm-0.8.4-r1::local_overlay
=x11-themes/emerald-themes-0.5.2::local_overlay
=x11-wm/emerald-0.8.4-r2::local_overlay

I right-clicked on the Fusion Icon on the Panel and selected Quit, then I uninstalled the packages and reinstalled them from my local overlay:

emerge -aC compizconfig-python compiz-bcop compizconfig-backend-gconf compizconfig-backend-kconfig4 libcompizconfig compiz-plugins-extra compiz-plugins-main compiz-plugins-unsupported compiz compiz-fusion fusion-icon ccsm emerald-themes emerald

USE="-kde qt4" emerge -1v compizconfig-python compiz-bcop compizconfig-backend-gconf compizconfig-backend-kconfig4 libcompizconfig compiz-plugins-extra compiz-plugins-main compiz-plugins-unsupported compiz compiz-fusion fusion-icon ccsm emerald-themes emerald

The installed packages are now:

# eix -I compiz
[I] dev-python/compizconfig-python
Available versions: [M](~)0.8.4 {M}(~)0.8.4[1] [M](~)0.8.4-r1 {M}(~)0.8.4-r1[1] [M](~)0.8.4-r3 {M}(~)0.8.4-r3[1]
Installed versions: 0.8.4-r3[1](02:03:18 28/01/12)
Homepage: http://www.compiz.org/
Description: Compizconfig Python Bindings

[I] x11-libs/compiz-bcop
Available versions: [M](~)0.8.4 {M}(~)0.8.4[1]
Installed versions: 0.8.4[1](02:01:00 28/01/12)
Homepage: http://www.compiz.org/
Description: Compiz Option code Generator

[I] x11-libs/compizconfig-backend-gconf
Available versions: [M](~)0.8.4-r2 {M}(~)0.8.4-r2[1]
Installed versions: 0.8.4-r2[1](02:03:34 28/01/12)
Homepage: http://www.compiz.org/
Description: Compizconfig Gconf Backend

[I] x11-libs/compizconfig-backend-kconfig4
Available versions: [M](~)0.8.4 {M}(~)0.8.4[1] {aqua}
Installed versions: 0.8.4[1](02:03:59 28/01/12)(-aqua)
Homepage: http://www.compiz.org/
Description: Compizconfig Kconfig Backend

[I] x11-libs/libcompizconfig
Available versions: [M](~)0.8.4-r2!t {M}(~)0.8.4-r2!t[1]
Installed versions: 0.8.4-r2!t[1](02:01:31 28/01/12)
Homepage: http://www.compiz.org/
Description: Compiz Configuration System

[I] x11-plugins/compiz-plugins-extra
Available versions: [M](~)0.8.6-r1 {M}(~)0.8.6-r1[1] {gconf libnotify}
Installed versions: 0.8.6-r1[1](02:05:19 28/01/12)(libnotify -gconf)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Extra Plugins

[I] x11-plugins/compiz-plugins-main
Available versions: [M](~)0.8.6-r1 {M}(~)0.8.6-r1[1] {gconf}
Installed versions: 0.8.6-r1[1](02:02:55 28/01/12)(-gconf)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Plugins

[I] x11-plugins/compiz-plugins-unsupported
Available versions: [M](~)0.8.4-r1!m {M}(~)0.8.4-r1!m[1]
Installed versions: 0.8.4-r1!m[1](02:06:11 28/01/12)
Homepage: http://www.compiz.org/
Description: Compiz Fusion Window Decorator Unsupported Plugins

[I] x11-wm/compiz
Available versions: [M](~)0.8.6-r3 {M}(~)0.8.6-r3[1] {+cairo fuse gconf gnome gtk kde +svg}
Installed versions: 0.8.6-r3[1](02:41:46 28/01/12)(cairo gtk svg -fuse -gconf -gnome -kde)
Homepage: http://www.compiz.org/
Description: OpenGL window and compositing manager

[I] x11-wm/compiz-fusion
Available versions: [M](~)0.8.4-r1 {M}(~)0.8.4-r1[1] [M](~)0.8.6 {M}(~)0.8.6[1] {emerald gnome kde unsupported}
Installed versions: 0.8.6[1](02:07:11 28/01/12)(emerald -gnome -kde -unsupported)
Homepage: http://www.compiz.org/
Description: Compiz Fusion (meta)

[1] "local_overlay" /usr/local/portage

Found 10 matches.
# eix -I fusion
[I] x11-apps/fusion-icon
Available versions: [M](~)0.1-r2 {M}(~)0.1-r2[1] {gtk qt4}
Installed versions: 0.1-r2[1](02:06:20 28/01/12)(gtk qt4)
Homepage: http://compiz-fusion.org
Description: Compiz Fusion Tray Icon and Manager

[I] x11-wm/compiz-fusion
Available versions: [M](~)0.8.4-r1 {M}(~)0.8.4-r1[1] [M](~)0.8.6 {M}(~)0.8.6[1] {emerald gnome kde unsupported}
Installed versions: 0.8.6[1](02:07:11 28/01/12)(emerald -gnome -kde -unsupported)
Homepage: http://www.compiz.org/
Description: Compiz Fusion (meta)

[1] "local_overlay" /usr/local/portage

Found 2 matches.
# eix -I ccsm
[I] x11-apps/ccsm
Available versions: [M](~)0.8.4-r1 {M}(~)0.8.4-r1[1]
Installed versions: 0.8.4-r1[1](02:05:30 28/01/12)
Homepage: http://www.compiz.org/
Description: Compizconfig Settings Manager

[1] "local_overlay" /usr/local/portage
# eix -I emerald
[I] x11-themes/emerald-themes
Available versions: [M](~)0.5.2 {M}(~)0.5.2[1]
Installed versions: 0.5.2[1](02:07:05 28/01/12)
Homepage: http://compiz-fusion.org
Description: Emerald window decorator themes

[I] x11-wm/emerald
Available versions: [M](~)0.8.4-r2 {M}(~)0.8.4-r2[1]
Installed versions: 0.8.4-r2[1](02:06:55 28/01/12)
Homepage: http://www.compiz.org/
Description: Emerald Window Decorator

[1] "local_overlay" /usr/local/portage

Found 2 matches.

I launched KRunner (Alt-F2) and entered the command “fusion-icon” (without the quotes) to get the Fusion Icon back on the Panel, and then rebooted to check if everything was working correctly.

The only way I could get compiz-0.8.6-r3 to build this time was to specify "-kde" as a USE flag. The last time I merged that package, back in November 2011, it would build with USE="kde qt4" and enable me to select Emerald, GTK Window Decorator or KDE Window Decorator as the window decorator in Compiz. But, as the package will no longer build with the kde USE flag, I now only have the choice of Emerald or GTK Window Decorator. Perhaps this old, unmaintained compiz ebuild will no longer build with USE="kde" because I have since installed new versions of other packages on which it depends, and/or because I am now using KDE 4.8.0 instead of KDE 4.7.3. Anyway, at least I now have Compiz available for a while yet and can still select KWin or Compiz as the Window Manager.

EDIT (February 1, 2012): The stuff overlay has the following ebuilds, which do enable the KDE4 Window Decorator to be used with Compiz in KDE 4.8.0:

dev-python/compizconfig-python-0.8.4-r3
x11-libs/compiz-bcop-0.8.8
x11-libs/compizconfig-backend-gconf-0.8.8
x11-libs/compizconfig-backend-kconfig4-0.8.8
x11-libs/libcompizconfig-0.8.8
x11-plugins/compiz-plugins-extra-0.8.8
x11-plugins/compiz-plugins-main-0.8.8
x11-plugins/compiz-plugins-unsupported-0.8.8
x11-wm/compiz-0.8.8
x11-wm/compiz-fusion-0.8.8
x11-apps/fusion-icon-0.1-r2
x11-apps/ccsm-0.8.4-r1
x11-themes/emerald-themes-0.5.2
x11-wm/emerald-0.8.8

which can be installed as follows:

# layman -a stuff
# USE="kde qt4" emerge -1v compizconfig-python::stuff compiz-bcop::stuff compizconfig-backend-gconf::stuff compizconfig-backend-kconfig4::stuff libcompizconfig::stuff compiz-plugins-extra::stuff compiz-plugins-main::stuff compiz-plugins-unsupported::stuff compiz::stuff compiz-fusion::stuff fusion-icon::stuff ccsm::stuff emerald-themes::stuff emerald::stuff

Pimping my Desktop: have KWin Desktop Effects improved in KDE 4.6.2?

KWin Desktop Effects in past releases of KDE 4 were lacking in comparison to Compiz. After installing KDE 4.6.2 recently I decided to see if there has been any progress, and was pleasantly surprised. Although KWin is still not quite up to the standard of Compiz in all areas (the behaviour of 3D windows, especially around the corners of the Desktop Cube, being one example), KWin’s Desktop Effects are now very pleasant and a viable alternative to Compiz. I’ll talk you though my Desktop-pimping exercise using KWin on my main laptop running KDE 4.6.2, and then I’ll describe briefly a similar exercise using Compiz on the same machine.

KWin

I decided to have water and the colour blue as my theme. For wallpaper I chose a striking image created by Sabayon Linux user tarabaz.

I selected Oxygen for the widget and icons style (System Settings > Application Appearance) and for the Window Decorations (System Settings > Workspace Appearance), and Air for the Desktop Theme (System Settings > Workspace Appearance). With an attractive wallpaper, it is nice to have the ability, using the Folder View plasmoid, to contain the contents of the directory ~/Desktop in a window on the Desktop. The only other thing I placed on the Desktop was the excellent yaWP plasmoid. To download and install yaWP, follow the instructions on the yaWP page at KDE-Look.org.

I right-clicked on the Pager widget on the Panel, selected Pager Settings, and configured the Pager as follows in order to be able to switch Desktops in KWin in a similar way to Compiz:

General

  • Number of rows: 1

Virtual Desktops (Shortcuts on the ‘Switching’ tab):

  • Switch One Desktop Down > Ctrl+Alt+Down
  • Switch One Desktop to the Left > Ctrl+Alt+Left
  • Switch One Desktop to the Right > Ctrl+Alt+Right
  • Switch One Desktop Up > Ctrl+Alt+Up

The result looks like this:

KDE 4.6.2 Desktop

KDE 4.6.2 Desktop

KDE 4.6.2 Desktop with open windows

KDE 4.6.2 Desktop with open windows

I thought dolphins would look cool on the top and bottom of the Desktop Cube, and I found a gorgeous wallpaper from Vladstudio which matched my vision. I loaded the image into the GIMP, cropped and resized it to the required 800×800 pixels and saved it as a PNG image cubecap.png in my directory ~/Pictures/ (the images on the top and bottom of the Desktop Cube must be the same, unlike Compiz). To specify a KWin cubecap, you have to click on System Settings > Desktop Effects, click on the spanner icon for the Desktop Cube on the All Effects tab, and tick both ‘Show caps’ and ‘Display image on caps’ on the Advanced tab.

The KWin cubecap image must be stored in the /usr/share/apps/kwin/ directory. I backed up the default KWin cubecap first:

mv /usr/share/apps/kwin/cubecap.png /usr/share/apps/kwin/cubecap.png.bak

and then moved my new cubecap to that directory:

mv /home/fitzcarraldo/Pictures/cubecap.png /usr/share/apps/kwin/cubecap.png

For the background wallpaper behind the Desktop Cube (what in Compiz is called the ‘Skydome’), I selected a graduated undersea image that shows off the reflection of the base of the Desktop Cube and complements well the dolphins on the cubecaps. I saved the image in my directory ~/Pictures/. To set the background wallpaper, you have to click on System Settings > Desktop Effects, select the Desktop Cube on the All Effects tab, click on the spanner icon, and under Background on the Basic tab you’ll find a field in which to specify the Wallpaper. I hope you like the results, shown below.

KDE 4.6.2 Desktop Cube

KDE 4.6.2 Desktop Cube

KDE 4.6.2 Desktop Cube

KDE 4.6.2 Desktop Cube

KDE 4.6.2 Desktop Cube viewed from above

KDE 4.6.2 Desktop Cube viewed from above

KDE 4.6.2 Desktop Cube viewed from below

KDE 4.6.2 Desktop Cube viewed from below

Unlike the Desktop Cube, which I do find useful when I have many windows open, wobbly windows are pure ‘eye candy’. Nevertheless, they are fun to show off and impress users of that other OS. The trouble is, the default settings for wobbly windows in KWin Desktop Effects are too stiff for my liking, and the wobble is much less satisfying than in Compiz. Fortunately it is possible to adjust the behaviour in KWin, and I have found settings which make wobbly windows more like those in Compiz and more satisfying. To set the parameters for wobbly windows, you have to click on System Settings > Desktop Effects, then click on the spanner icon for Wobbly Windows on the All Effects tab. The settings that I like are:

Wobbliness: move the slider to More
Wobble when moving: ticked
Wobble when resizing: ticked
Enable advanced mode: ticked
Stiffness: 10
Drag: 50
Move factor: 9

KDE 4.6.2 Desktop Effects - Wobbly Windows

KDE 4.6.2 Desktop Effects - Wobbly Windows

So, there we have it. With little effort it is possible to set up an attractive and eminently usable 3D Desktop environment in KDE 4.6.2. I was so pleased with the result that I’m keeping it for the moment.

I have not yet tried it, but, as with Compiz, it is possible to configure KWin to use a Desktop Cylinder or Desktop Sphere instead of a Desktop Cube.

Compiz

I’ve been using Compiz, its ‘mother’ Compiz-Fusion and its ‘grandmother’ Beryl since 2007. As is the case with the newer KWin Desktop Effects, Compiz is a mixture of useful 3D effects and eye candy. I like Compiz very much. I use the Fusion Icon on the Panel to switch between KWin window manager and Compiz window manager. So, now let’s look at pimping my Compiz Desktop in KDE 4.6.2. This time I chose a darker theme.

I used a brushed aluminium wallpaper created in the GIMP by Sabayon Linux user alonsoty. I saved the wallpaper in my directory ~/Pictures/ and used the standard KDE 4 method of setting the Desktop wallpaper.

A dark Panel looks best with this wallpaper, so I selected a user-customised Desktop Theme (System Settings > Workspace Appearance) ‘(Customized)’ that is installed from the Sabayon Linux LiveDVD, although KDE’s Oxygen theme looks similar to this and would also work.

KDE 4.6.2 with Compiz Desktop

KDE 4.6.2 with Compiz Desktop

I used the Fusion Icon to launch the Emerald Theme Manager, and selected DarkLight v1.1 as the window theme. This Emerald theme was originally developed for use with Beryl and still looks gorgeous today with Compiz.

KDE 4.6.2 with Compiz Desktop with open windows

KDE 4.6.2 with Compiz Desktop with open windows

The above images show that Compiz looks good with KDE 4.6.2. The only problem I have found is with the Pager on the Panel: occasionally it shows all four Desktops, but usually only displays Desktop 1. Nevertheless I can rotate the Desktop Cube using either the keyboard shortcuts or the mouse, so this is only a minor issue. The CCSM (Compiz Config Settings Manager) is used in a similar way to System Settings > Desktop Effects in KWin. However, CCSM has an even more bewildering set of configuration options and is more complicated to use than the KWin equivalent.

Unlike KWin, it is possible for the cubecaps on the top and bottom of the Desktop Cube to be different to each other. I downloaded from the Web an image of the Earth and Moon from space for the top of the Desktop Cube and and an image of the Moon for the bottom of the Desktop Cube, saved them in my directory ~/Pictures/ and used CCSM > ‘Cube Reflection and Deformation’ > Appearance and specified the location of the top and bottom image files. Unlike KWin, they can have any file name.

The Skydome (the background wallpaper behind the Desktop Cube) is specially designed so that it pans when you rotate the Desktop Cube, providing you have selected ‘Animate Skydome’ in CCSM > Desktop Cube > Appearance > Skydome. The image, which must be 2048×1024 pixels, looks distorted when viewed in a browser window or graphics application but looks good in Compiz. This is more sophisticated than KWin’s Desktop Effects. Various Web sites have Skydome files for Compiz (Skydomes for Beryl and Compiz-Fusion work in Compiz too), and, in keeping with my space images on the top and bottom of the Desktop Cube, I downloaded a space-themed Skydome to my directory ~/Pictures/ and used CCSM > Desktop Cube > Appearance > Skydome to specify the file. Any file name is allowed.

Compiz Desktop Cube in KDE 4.6.2

Compiz Desktop Cube in KDE 4.6.2

Compiz Desktop Cube in KDE 4.6.2

Compiz Desktop Cube in KDE 4.6.2

Compiz Desktop Cube viewed from above in KDE 4.6.2

Compiz Desktop Cube viewed from above in KDE 4.6.2

Compiz Desktop Cube viewed from below in KDE 4.6.2

Compiz Desktop Cube viewed from below in KDE 4.6.2

Setting up wobbly windows was as simple as ticking Wobbly Windows in CCSM. I stayed with the default settings.

Compiz Wobbly Windows in KDE 4.6.2

Compiz Wobbly Windows in KDE 4.6.2

Compiz has some more features up its sleeve, though, and I show a couple of them below.

Compiz window top corner pulled down in KDE 4.6.2

Compiz window top corner pulled down in KDE 4.6.2

Compiz window top centre pulled down in KDE 4.6.2

Compiz window top centre pulled down in KDE 4.6.2

The picture above illustrates one area where Compiz (and its predecessor Compiz-Fusion) is less sophisticated than Beryl used to be: notice the polygonal shape of the top of the window that I was pulling down. I won’t bother posting one of the images I have from my Beryl-using days, but, with Beryl, the top of the pulled-down window had a smooth curvature and looked much nicer.

Something else which I don’t believe KWin Desktop Effects has is the ability to vary the transparency of a window by using the Alt key and the mouse wheel, as illustrated in the image below.

Compiz window transparency changed by mouse in KDE 4.6.2

Compiz window transparency changed by mouse in KDE 4.6.2

EDIT (April 28, 2011): Reader lefty.crupps has pointed out that it is possible to do this with KWin too; see his post in the COMMENTS section for how to do it.

Summary

I hope I have given you a taste of what is possible in KDE 4.6.2 using either KWin or Compiz. I have only scratched the surface of either window manager, as there are many features. And, hopefully, KWin Desktop Effects will continue to improve in future releases of KDE, as it has improved noticeably in this release.

Follow

Get every new post delivered to your Inbox.

Join 49 other followers