Unity works as a plugin for Compiz using the glib mainloop. Currently the development version of Compiz available in OBS X11:Compiz already provides this requirement (glib mainloop) as a plugin. This version and two git snapshots I’ve builded were crashing heavilly, so I’ve decided to take a closer look into Ubuntu’s packages and build from their sources on my devel project. This has proven wise as their snapshots (2010-11-25) with their patches removed the crashes on compiz.

The patches applied include the new unity-window-decorator which works fine. Here’s a small screenshot of GNOME’s System Monitor using Unity’s window decorator (which relies on a patch on metacity to enable UX Shadows).

The theme for this screenshot is Ambiance (also from Ubuntu) with a changed color scheme. This shot was taken on M6 with the newest FireGL drivers from ATI. I’ve noticed some changes on the blur effects on this driver, but I really can’t develop much.

I haven’t seen crashes on individual components when I test them (ex: unity-panel-service and unity-window-decorator), which seems to be a good pointer.

Currently I’m working out in porting the Unity wrapper and some scripts from Ubuntu to the reality on openSUSE as many files seem to be distributed on the filesystem in very different places. Just to name an example… compiz on openSUSE currently stores it’s profiles and stuff on $HOME/.config/compiz-1, and Unity is searching those files on $HOME/.compiz-1, and as such, fails to find them. This is where I’m currently placing my efforts. This should fix soon the ‘unity’ wrapper.

To make this short… Compiz isn’t crashing anymore or seg faulting, and Unity is picking up the information required from different file locations on the file system. Once fixed, we should have a running Unity for BETA soon.

My very special thanks to Malcolm Lewis for making the integration of Unity with Compiz possible in a very nice way and for fixing many bugs that allowed us to successfully build this packages.