Compiz on Debian Unstable
Debian dropped the Compiz window manager in the 7.x "wheezy" release. Compiz 8.x is distributed for Debian Jessie by tuxfamily.org, based on the compiz-reloaded releases. As of October 2016, these source packages can be easily patched, built, and run on Debian Unstable. Compiz 9 seems closely tied to Ubuntu, and I have never successfully run it on Debian.
wget -q http://download.tuxfamily.org/compiz/apt/key.pub -O- | \ sudo apt-key add - && \ echo "deb-src http://download.tuxfamily.org/compiz/debian jessie main" | \ sudo tee /etc/apt/sources.list.d/compiz-debian.list && \ sudo apt-get update
the binary packages cannot generally be installed on sid, and I discourage attempting to do so.
I've built binaries and published them to https://nick-black.com/compiz-unstable, if you'd prefer not to build from source.
I have not successfully built compiz 8 against GTK3 in isolation, due to dependencies on libraries that depend on libgtk-2.0-dev. This is true even if --with-gtk=3.0 is provided to compiz's configure script via debian/rules. GTK includes code to determine whether an object has been linked against both GTK2 and GTK3, aborting if so. If libgtk-3-dev is installed, it will be picked up, even if --with-gtk=2.0 is provided to compiz's configure script. The build will succeed, but resulting binaries will fail when run. I have only successfully run compiz's gtk-window-decorator when built in the absence of libgtk-3-dev.
This implies we must also rebuild mate-desktop, as this is built against GTK3 in unstable, and compiz wants libmate-desktop-dev.
It is probably possible to disable GTK and MATE support, and simply run emerald as one's window decorator.
Acquire the source package mate-desktop, and amend it to build against GTK2.
Here's a diff against 1.16.1.
- Acquire and build compiz. Install the resulting compiz-dev and libdecoration-dev packages.
- Acquire and build libcompizconfig. Install the resulting libcompizconfig-dev package.
- Acquire and build compizconfig-python. Install the resulting python-compizconfig package.
- Acquire and build ccsm. Install the resulting compizconfig-settings-manager package.
- Acquire and build compiz-fusion-bcop. Install the resulting compiz-fusion-bcop package.
- Acquire and build compiz-fusion-plugins-main. Install the resulting compiz-fusion-plugins-main package.
- Optionally, acquire and build compiz-fusion-plugins-extra and compiz-fusion-plugins-unsupported.
- Install the compiz package that resulted from the first step.