Compiz 0.9.0 released

Compiz has been in the works for a long time, but just now 0.9.0 has been released.

Packages for openSUSE are on their way and will arrive in OBS://X11:Compiz:Next in a few minutes.
THEY ARE COMPLETELY UNTESTED BY ME YET


This is what the NEWS, posted by the compiz project team, says:

This is the first unstable release of the Compiz
0.9 series. This release represents a complete rewrite of the 0.8 series from
C to C++, brings a whole new developer API, splits rendering into plugins,
switches the buildsystem from automake to cmake and brings minor functionality
improvements. This release represents the first developer and tester preview of
what will eventually make the 0.10.x stable series. Please note that as such, it
is not yet ready for general use as there are a number of known issues,
regressions and incomplete functionality.

The Compiz 0.9.0 tarballs are available at http://releases.compiz.org/0.9.0/ .
You can verify these tarballs using the sha1sums in
http://releases.compiz.org/0.9.0/compiz-0.9.0.sha1 , which are
signed by Compiz Release Team GPG key (C2B8F46E) at
http://releases.compiz.org/0.9.0/compiz-0.9.0.sha1.asc .
Please note that each component is also available in its own directory in
http://releases.compiz.org/components/ .

Quick changelog:

compiz-core:
————
* Completely rewritten developer API in C++, using boost and stl to simplify a
number of tasks originally handled in core.
* Reworked plugin function hooking system, where the WRAP / UNWRAP macros
have been replaced with ‘smart’ function call chains using real function lists
that can have any component turned off at any time to save unneeded CPU cycles
* Rendering framework split into the composite and opengl plugins, the former
making compiz a compositing window manager and the latter performing that
compositing using OpenGL. Such a split will allow new rendering plugins such
as XRender and Clutter to be developed as well as for compiz to run as a
non-compositing window manager
* Added copytex plugin, which re-implements part of the ‘copy mode’ texture
binding from Beryl. While this is slower, it allows for textures that are
larger than the maximum texture size allowed by the host’s OpenGL
implementation
* Added decoration reparenting to the decoration plugin. This will allow compiz
to run with decorations as a non-compositing window manager.
Reparenting support added to both gtk-window-decorator and
kde4-window-decorator
* Added KDE Plugin to integrate with the QT main loop and create a KApplication,
for further integration into KDE.
* Added compiztoolbox library plugin, allows developers to do tedious but
repeated actions in many plugins such as set up the application switcher
window and draw thumbnails of window
* Plugins rewritten in C++ using the new API
* DBus plugin now uses the screen number to identify compiz instance.
This means that scripts which use /allscreens will no longer work.
In general this means that paths have now changed to be
/org/freedesktop/compiz/screen{screen_number}/ …
In a single instance of compiz, {screen_number} would generally be 0 (i.e
screen0)
* Shape drawing implemented in annotate. Also fixed long standing damage bug
that caused skips in line drawing.
* Added serialization interface to core, which allows plugins to save activity
states on plugin load/unload and through compiz relaunches. The data is stored
in X11 window properties and automatically dropped when relevant X11 resources
are destroyed

plugins-main:
————-
* Rewritten animations interface; supports object oriented animation
construction, which should further simplify creating new animations
* Switchers support viewing only icons
* Added support to drag windows to edges and have them fill the adjacent side of
the screen
* Plugins rewritten in C++ using the new API

plugins-extra:
————–
* Added support for automatic wallpaper rotation
* Added edge support to grid plugin so windows can easily be resized by dragging
to an edge or corner
* Plugins rewritten in C++ using the new API

plugins-unsupported:
————–
* Rewritten elements interface – allows definition of elements in an object
oriented fashion, easily create new plugins that hook into the existing
functionality of the plugin
* Plugins rewritten in C++ using the new API

ccsm:
—–
* Number of buttons increased to 20
* Fixed bug newer gtk exposed where values were not read before destroying the
dialog window resulting in blank entries

compizconfig-backend-gconf:
—————————
* CMake buildsystem

compizconfig-python
——————-
* Distutils buildsystem

libcompizconfig:
—————-
* CMake buildsystem
* Plugins rewritten in C++ using the new API

Please note that there are new build dependencies for this release, including
boost-devel, cmake and cython. Additionally, libboost is a required
runtime dependency.

This is a development release and as such there will likely be bugs. Feel free
to report bugs at our bug tracker at http://bugs.opencompositing.org/. Currently
known issues are:
* Miscompilation with GCC 4.5 resulting in the occasional crash on window
closes or plugin unloads. Please compile with GCC 4.4, or see bug 1308[1]:
for a workaround to compile with GCC 4.5
* Some SDL applications like frozen-bubble and qemu will not display correctly.
Please launch these applications in a window manager like metacity or kwin
first and then switch back to compiz.

Compiz is entirely developed as a volunteer project, and we’d like to thank
everyone who contributed to this release. Translators, testers, the support team
and developers: thank you, your continuous contributions made it all possible.

We hope you will enjoy using Compiz as much as we enjoyed writing it!

– The Compiz Team

8 responses to “Compiz 0.9.0 released”

  1. Rainer Klier Avatar
    Rainer Klier

    hi dominique,
    i tried the compiz 0.9 packages for opensuse11.2 but the decorateurs don’t work.
    neither kde4- nor gtk-decorateur.
    and of course not the emerald from the 0.8.6 compiz release.

    kde4 decoratuer crashes with segmentation fault and gtk-decoratuer does simply nothing.

    is this known?
    what is the problem?
    what can i do?

    i hope you can help me.
    thanks.

  2. Dominique Leuenberger Avatar

    Reiner, Thanks for testing. As in my post, I did not yet come around doing any basic testing, so your input is most valuable. Can you maybe manage to get a backtrace of the decorator? Anyhow: I hope to finally find time this evening to do some basic testing on my openSUSE 11.3 installation (rc2).

  3. Rainer Klier Avatar
    Rainer Klier

    ok, how can i do a backtrace?

    i can try both decorateurs.

    and another question:
    where is emerald?????

    until now, with the 0.8.6 release of compiz, i am using emerald for decoration.

    and i know, emerald also exists for compiz 0.9.

    but i can’t find it in the repo.
    in the past and until now, emerald worked best for me.
    so i whould like to keep it also with compiz 0.9.

  4. Sam Spilsbury Avatar

    Emerald is 100% unsupported and not being packages, and it wasn’t actually released. You can get it from git if you want.

    A replacement is being written, and it will support emerald themes.

  5. […] Dominique Leuenberger: Dominique Leuenberger: Compiz 0.9.0 released […]

  6. […] Dominique Leuenberger: Dominique Leuenberger: Compiz 0.9.0 released […]

  7. J.M. Stoorvogel Avatar
    J.M. Stoorvogel

    I’ve used the 0.9 version and aside from a strange occasional glitch it seems very functional and smooth to me.

    Sometimes compiz crashes, but nog frequently. I’ve just installed the debug packages to get a proper backtrace.

    How can I assist? If I produce a useable backtrace, who should I mail it to?

    Some other strange glitch: when running full screen apps (rdesktop, kaffeine, VirtualBox) the edges don’t work, but after a restart of compiz, then they do work.

    I have experience in C(++) programming. You’re Dutch, (like me), aren’t you?

    Keep up the good work!

  8. Dominique Leuenberger Avatar

    Thank you very much for your testing efforts!
    As for any kind of reports on the codebase of compiz (or even better patches), please report them directly to the compiz project (http://bugzilla.opencompositing.org). A very good way is also to discuss with the developers on irc, channel #compiz-dev (freenode).

    About my ‘dutchness’: I DO live in Amsterdam, but am not actually dutch.