Compiz Fusion Community News for Decemeber 5, 2007: Keep those plugins coming!


And the Community News returns! This edition is all about what you love best about Compiz Fusion, the countless new features and fixes that get added every week. Each week adding to the excitement of what already makes this one of the greatest projects for the Linux Desktop (Spare X and the Kernel of course) we have ever known. This week, a couple of interesting patches to Compiz Core by our forum users, new plugins (We all love those) and a few interesting and cool new features from some older plugins.

On a side note, I heard you! The <!more> tags are being removed from the community news, however I will maintain them  for other off-topic and way-off-topic (It’s what I’m known for) blog posts.

Alright, lets look at some news.

News in Bugs

  • Fix expo termination bugs when no root window is present
  • Fix bug in CCSM with MultiList when entering a window match
  • Fix crash in CubeDBUS when you would delete an object
  • Fix problem in CubeDBUS where objects were being drawn the wrong way around
  • Anaglyph now loads after scale, fixing conflict problems
  • MPlayer no longer ‘hangs’ in the background after XWinWrap is killed in Livedesktop-Settings
  • Fix fish going into the ground in atlantis2

News in Features

Lots more new features this week. We have 4 new plugins and a couple more interesting features to show off brought to you unofficially by our community 😀


So last year we had snow,  and we were begging to be able to have things inside the cube. Well that wish was granted this year, and so now we have a Cube SnowGlobe(TM). Um, no, you can’t shake it and make the snowflakes twirl up and down and around and such (Although many users have asked for this feature and b0le says it’s certainly possible). But, we now have a nice snowy landscape and snow … sort of to have as an ambiance in our little cubes :D. It’s illegal not to post screenshots of these awesome things, so here you go

snowglobe.png snowglobe1.png

Oh and guess what. You can even have a snowman in it! 😀



This is a plugin that I have forgotten to cover over the past couple of weeks, so I think it deserves some attention now

Maximumize is a plugin which combines resize and maximize, to bring you maximumization. Now try saying that five times faster ;-). Anyways, what it will do is resize windows to occupy as much screenspace as possible *without* overlapping any other window. Unfortunately, it doesn’t work if the windows are already overlapping, but it does work if that is not the case. If you want to try it out I suggest the following.

Have your pidgin buddy list and a chat window on the same screen. Now just hit <Super>M on both of them and you have efficient screen usage .

Even more fun, if you are working with The GIMP or Glade, just grab all the windows they spawn and put them on the screen so that they don’t overlap. Now maximumize them. You will be thankful 😀


This is essentially a 2 Minute cheap-o hack that I did on freewins, replacing the rotation code with some scaling code. It basically allows you to scale up and down windows. Note that there is still no input redirection. Screenshot below


BasicBlur is a work-in-progress plugin that I found for a very old version of Compiz (Dating back to the QuinnStorm days), which uses a GL_CONVOLUTION filter to do blurring of windows. This means that it does not require pixel shaders or framebuffer object support. Note that it will only blur windows and not the background behind transparent windows or decorations.  Screenshot below.

Other cool new stuff

Windows INSIDE the cube

Well, b0le has done it again and has added a method to draw a window inside the cube, which essentially means that you can play movies INSIDE the cube! This is too hard to describe in detail, so I have added a screenshot below:

To invoke it, just make sure you are using an up-to-date version of the CubeDBUS plugin, and run ‘./window.’ and select a window (EDIT: You may have to open the file, and remove the line that begins with a ‘//’. This will cause the script to crash). That window should then be displayed inside the cube :D. Note that if you close that window, there may be a chance that compiz will crash.


Some new water for atlantis and Atlantis-2

Well, the water creating method had been replaced in both the normal atlantis and the Atlantis-2 and this time includes sand!

Not only that, but there is also an updated version of the atlantis-2 plugin which contains some newer looking fish and coral! (No pun on the community name please!)  Screenshot below


Note that the alternate version with smoother models seems to run really slow on this hardware. Don’t know why yet however.

Ungrab water wave and clickability while drawing waves patch for water!

Well, my patch to add in ungrab window waves and the patch to add clickability  to water have been merged into one and you can download it here.

Other New Stuff

  • There is now an option in scaleaddon to display the window title for all windows
  • Livedesktop-Settings can now loop and mute your video (Thanks to some mplayer command line switches :D)

Object Framework

To all you developers and more advanced users out there, David Reveman has posted a few mails to the mailing list about the upcoming object-framework and some details on how it works. The first, ‘Object Model’ can be found here, and the second, ‘Communication’ can be found here,

For those who don’t know, the object framework is essentially a revision of compiz code regarding plugins and such, with features that are planned to make development a little bit easier. David Reveman describes it as “If we ever had a compiz 1.0 release, this would qualify for a 2.0 release”.

Tip of the Week

It’s time for another tips section! This weeks tip was something I found on the forums (But I can’t remember where, the creator of this idea can claim it in the comments if he/she wants to :D)

Anyways, you’re not just limited to screencorners and keybindings for compiz actions, you can also use actual application .desktop launchers and the magic of DBUS to launch effects too. Here’s a practice two to try.

  1. Lets try activating the scale plugin through a button on the taskbar. First of all, we need to create a DBUS script to invoke the scale plugin. The code for this is  dbus-send –type=method_call –dest=org.freedesktop.compiz /org/freedesktop/compiz/scale/allscreens/initiate org.freedesktop.compiz.activate string:’root’ int32:`xwininfo -root | grep id: | awk ‘{ print $4 }’`
    Now we just put that in a script, make it executable and copy it to somewhere like /usr/local/bin or /usr/bin. (Or whatever your PATH variable is set to). Now create a new launcher, and make it execute the name of the script (so if you called your script ‘foo-fighting-scale’ when what would be the command. Now, just add an icon from the CCSM icons dir (/usr/share/pixmaps) and voila. You can now call scale from your taskbar.
  2. You can do the same for expo too! Just use this code and follow the previous instructions:
    dbus-send –type=method_call –dest=org.freedesktop.compiz /org/freedesktop/compiz/expo/allscreens/expo org.freedesktop.compiz.activate string:’root’ int32:`xwininfo -root | grep id: | awk ‘{ print $4 }’

Note that I was not able to get this to work, but other users have reported success. You could try replacing ‘allscreens’ with ‘display’ if you wanted.


Yep, thats it. New plugins. Awesome new features. The lot. Hope you liked this entry!

– SmSpillaz

Now go put this on digg already 😀


55 thoughts on “Compiz Fusion Community News for Decemeber 5, 2007: Keep those plugins coming!

  1. [[ Note that it will only blur windows and not the background behind transparent windows or decorations. ]]

    Why? We want to blur decorations and windows too!

  2. Hi, Sam! Just a couple of items I wanted to point out/ask:

    1) The Maximumize binding is the same as Negative’s binding for inverting the entire screen, and it seems (from my testing) that Negative always has priority when it comes to catching this keyboard combo. So, perhaps you’ll want to recommend that users edit their bindings (because people should, IMHO, be familiar with their own settings). Or, maybe they should just disable Negative (because Maximumize is much more useful than Negative ;).

    2) That alternative blur method looks really interesting; how’s the speed, though? Is it a practical alternative to the old and current blur methods? Are there plans to put it to use in other (existing?) plugins? Right now, seeing as it only blurs window contents, I can only think of Focus Blur (within the Blur Windows plugin)…

  3. After your post I wanted to give compiz another shot. I had some problems with it in the past and figured it wasnt worth installing. Wow I was missing alot. Thanks for a great post

  4. Thanks Vincent!

    Fyda: Yeah, this appears to be the case. Were actually coming across the problem of conflicting keybindings a lot now. Maybe I will put an edit in.

    As for basic blur, it essentially uses GL_ARB_imaging and works fairly fast on my i915. There is no slowdown when moving windows, and things tend to go at around the same speed (Maybe a tad slower, but I haven’t really noticed it)

  5. Question: Does the hack with freewins mean I can have something like my “Shelf” plugin, only scaled manually? That would be cool.

    Your screenshot doesn’t seem to show that, but the description seemed to. Can you scale windows without putting them in perspective? That would be neat-o, maybe I would consider going back to git for that… 😀

  6. With freewins (and also freescale), the input doesn’t match up with where the window appears to be (it stays as it was), so it wouldn’t be possible (but once we have input redirection …)

    Also, SmSpillaz: its ./window (not ./, plus window isn’t executable (at least I don’t think so) on the git repo (and it has a //comment in there (its wasn’t meant to be a script)- which should throw an error))

  7. hey SmSpillaz:

    what your recommended way of installing the latest and greatest git for compiz-fusion? I’m currently using this italian script partly because it can get git without recompiling x11 with xcb support. It does not have all the latest features though. Is there a script that can do this, or should I install every new plugin individually? Any suggestions?

  8. Now seriously, why dont you focus more on stability, speed a bugfixing only, instead of creating new useless plugins. They are good for nothing, please focus more on best possible functionality, not eye candy…I personally love simple, default effect in Ubuntu 7.10 and dont need more plugins.

  9. I agree : nothing useful usability-wise … some damn wrecked development … but if you have fun developing it … that’s fine. I wonder if the ppl developing this kind of plugins will use them more than 1 hour on their desktop 🙂

  10. How can I get the latest effects?

    And if you think this stuff is useless, don’t use it. You aren’t being forced to 😉

  11. blurymind “The 3d object inside cube- It will be the real thing when the plugin supports custome obj files!”

    It (cubedbus) does now (unfortunately I need to leave now, and don’t have access to my computer with git access, but will upload it tonight when I get home). It doesn’t yet support much (only draws a white object, no textures, and things like groups and animation don’t work)

    Also, that was the whole point of cubedbus, to allow flexiblity in drawing what you want (and maybe drawing what other applications want as well… (think of a REAL 3d dock (not just 3d looking) – AWN))

  12. Pingback:
  13. hey smspillaz,
    there is an error in your dbus-command! you call “-type” and “-dest” but the right way to call the options is with double minus “–“, so: “–type” “–dest”.

    apart of this for me still doesnt work

  14. oh the blog eats double minus and spit out a long minus… so, know, that there have to be 2 minus’ before the option…

  15. basicblur doesn’t compile.

    $ make
    convert : -> build/basicblur.xml
    bcop’ing : build/basicblur.xml -> build/basicblur_options.h/bin/sh: –header=build/basicblur_options.h: Nie ma takiego pliku ani katalogu (“No such file or directory”)
    make: *** [build/basicblur_options.h] Błąd 127 (“Error 127”)

  16. Ok, I’ve installed compiz-bcop, but I have next issue.

    $ make
    convert : -> build/basicblur.xml
    bcop’ing : build/basicblur.xml -> build/basicblur_options.h
    bcop’ing : build/basicblur.xml -> build/basicblur_options.c
    schema’ing: build/basicblur.xml -> build/compiz-basicblur.schemawarning: failed to load external entity “/schemas.xslt”
    cannot parse /schemas.xslt
    make: *** [build/compiz-basicblur.schema] Błąd 4

    —- Error in Makefile? —-

    $ cat Makefile |grep xslgen-schemas := $(shell if [ -e $(PLUGIN) -o -e $(PLUGIN).xml -a -n “`pkg-config –variable=xsltdir compiz-gconf`” ]; then $(ECHO) true; fi )
    @xsltproc `pkg-config –variable=xsltdir compiz-gconf`/schemas.xslt $ $@

    $ pkg-config –variable=xsltdir compiz-gconf
    (“no output”)

  17. Whether compiz works or not depends on your hardware. You need good hardware to run compiz – it will not work properly on certain video cards like ATI. My 32 bit desktop cannot run compiz (It has an ati Radeon video card) and my 64 bit laptop runs it well enough that it is stable.


  18. My 32bit ATI thinkpad runs compiz fusion very well fine. Only I have never gotten the water plug-in to work. Unfortunatly I have not yet found a git source to install the news compiz fusion on Ubuntu Gutsy without compiz breaking. 😦 I had a newer version of compiz fusion on feisty 2 months ago.

  19. How Do I install these plugins?

    Im running compiz on ubuntu gutsy – intel mac

    64 bit version

    Where do i go to find them and how do i install them?

    Can someone post the necessary commands?

  20. hi, i saw your blog and very use from you content if you would you like to exchange link with me give the messege to me we give link to your site thank you my friend

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s