View Full Version : Go-Compiz Tray Icon
Keeguon
January 4th, 2007, 07:49 PM
Go-Compiz Tray Icon
Go-Compiz Tray Icon is a small program written in python which lets you control your GL Desktop it handles your different decorators (non-GL/GL) and configurator (compiz-settings and gconf-editor).
P.S.: Instructions are inside...
Screenshot:
=> The Tray Icon
http://thorfolio.free.fr/misc/compiz/go-compiz_trayicon.png
=> The graphical installer
http://thorfolio.free.fr/misc/compiz/go-compiz_installer.png
Stable version to fit with compiz stable:
http://thorfolio.free.fr/misc/compiz/go-compiz_trayicon-0.3.1.tar.gz
Developpement version to fit with compiz dev/git:
http://thorfolio.free.fr/misc/compiz/go-compiz_trayicon-0.4.1.tar.gz
amgeex
January 4th, 2007, 11:21 PM
Looks like a hybrid between gnome compiz manager and compiz-settings. Should be attractive to distribution developers to include it as its main compiz launcher. :D
baze
January 4th, 2007, 11:44 PM
the "switch to metacity" option is pretty useless for xfce or kde users that run compiz ;)
amgeex
January 5th, 2007, 12:25 AM
Maybe it should check to see which is the default window decorator and switch to that. Thus the option should be called "Switch to default window manager", or something like that.
Waddaya think?
nightfrost
January 5th, 2007, 03:07 PM
Maybe it should check to see which is the default window decorator and switch to that. Thus the option should be called "Switch to default window manager", or something like that.
Waddaya think?
Much better, I think. But how to find out what's default? It would be nice if it would e.g. switch back to openbox for people who use gnome + openbox as a default setup. Maybe, if this would actually be part of compiz-settings, there could be an option there for setting the default window manager. Just an idea...
Keeguon
January 5th, 2007, 03:26 PM
I'm actually rewriting some stuff to handle kwin and the kde-window-manager for KDE users. I'll manage Xfce later and about the configurator it'll support gconf now if you haven't installed compiz-settings.
mikedee
January 5th, 2007, 03:46 PM
Much better, I think. But how to find out what's default?
You can tell which WM is currently running by checking the _NET_SUPPORTING_WM_CHECK hint on the root window.
From what I can work out we need to read this hint which will lead us to a window which has _NET_WM_NAME set. This will be the name of the active WM.
More info here
http://standards.freedesktop.org/wm-spec/1.4/ar01s03.html#id2526559
It is possible to access xlib with python, although it isnt very nice :)
I will try to eventually add these things to a netwm dbus object which can be read easily without having to use xlib. It will not help much until all the WM's use it, but its a start ;)
Keeguon
January 7th, 2007, 06:28 PM
I've just updated it (see first post), now we're in 0.02 the changes are:
=> Autodetect what non-GL decorators you have installed (doesn't support Xfce yet).
=> Autodetect what GL decorators you have installed.
=> Autodetect if you have compiz-settings installed or not and if you haven't using gconf as configurator.
Have fun !
nightfrost
January 7th, 2007, 07:25 PM
Nice little package. And I like the artwork too ;-)
Archlinux package uploaded to the AUR: here (http://aur.archlinux.org/packages.php?do_Details=1&ID=8025&O=0&L=0&C=0&K=go-compiz&SB=&SO=&PP=25&do_MyPackages=0&do_Orphans=0&SeB=nd)
Keeguon
January 8th, 2007, 08:39 AM
Thanks some1else for the Artwork not me still my thanks for the package ;) !
I have made some minors change so updated to 0.02.1:
=> Autostart compiz when Go-Compiz Tray Icon is launched
=> Modified the README
=> Added ChangeLogs file
Download is in first post.
lowfi
January 12th, 2007, 07:49 PM
Gnome has gconf keys which point to the default and current window manger.
/desktop/gnome/applications/window_manager/current & default
it seems those are deprecated since 2.12, but maybe there are similar ones somewhere else.
you could also test for the WINDOW_MANAGER environment variable. compiz sets it, but i'm not sure if other wms do.
origin of
March 2nd, 2007, 04:34 PM
nice application :wink:
ekerazha
March 18th, 2007, 02:55 PM
Supported non-GL decorators:
=> metacity
=> kwin
Could you add support for Xfwm (the window manager of Xfce)?
Keeguon
March 21st, 2007, 08:23 PM
Oops long time no check and sorry I hadn't see your message I'll add the decorator this week-end promess !
origin of
March 25th, 2007, 02:04 PM
Keeguon, when i activate compiz, the icon in the tray disappear, but compiz works fine.
I use compiz git
Keeguon
April 23rd, 2007, 10:22 AM
Just updated to 0.1 like you can see in the first post with the screenshot many options are now available, by the way comments and bug reports are welcomed...
nightfrost
April 24th, 2007, 01:35 AM
Hey, thanks for the update.
I have two suggestions. Firstly, you might want to give the user a choice between the different backends, i.e. gconf and ini. Perhaps a backend menu? The way it is now, gconf is hardcoded, no?
The other thing is that you might want to let compiz start with the dbus plugin first. That is, 'compiz --replace dbus $BACKEND'. The way it is now, compiz-settings complains each time it is started.
Anyway, thanks for your work :)
Keeguon
April 24th, 2007, 12:52 PM
Thanks for the comment since I hadn't really looked what improvements the merge done I hadn't notice the thing with the ini backend I'm looking at it right now... And for the dbus plugin I'll add it in the next release which is now on road.
mikedee
April 24th, 2007, 01:04 PM
The other thing is that you might want to let compiz start with the dbus plugin first. That is, 'compiz --replace dbus $BACKEND'. The way it is now, compiz-settings complains each time it is started.
This would not work, as soon as $BACKEND loads it reads the active_plugins list and changes that internally. Dbus will be loaded for a split second but it would be unloaded if it does not appear in the active_plugins value. I do not think there is a way to make sure that dbus is loaded, other than telling the user to enable dbus. You could easily write a script which could do it for gconf or ini outside of compiz. Its not a great solution but it will work until all the offline stuff is done.
Anyway, thanks for your work :)
Yes :)
mikedee
April 24th, 2007, 01:05 PM
Thanks for the comment since I hadn't really looked what improvements the merge done I hadn't notice the thing with the ini backend I'm looking at it right now... And for the dbus plugin I'll add it in the next release which is now on road.
Just for reference the ini plugin is nothing to do with the merge, I wrote it weeks ago because people kept complaining ;)
nightfrost
April 24th, 2007, 01:40 PM
The other thing is that you might want to let compiz start with the dbus plugin first. That is, 'compiz --replace dbus $BACKEND'. The way it is now, compiz-settings complains each time it is started.
This would not work, as soon as $BACKEND loads it reads the active_plugins list and changes that internally. Dbus will be loaded for a split second but it would be unloaded if it does not appear in the active_plugins value. I do not think there is a way to make sure that dbus is loaded, other than telling the user to enable dbus. You could easily write a script which could do it for gconf or ini outside of compiz. Its not a great solution but it will work until all the offline stuff is done.
Strange, because when I let go-compiz start compiz, and then start compiz-settings, it complains that dbus isn't loaded, giving me the options to exit or try to load it. But it always fails loading it.
On the other hand, if I manually start compiz with 'compiz --replace dbus gconf' or 'compiz --replace dbus ini', I never have that problem. I thought it had to do with the order of plugins, i.e. I though dbus had to be loaded first...
Keeguon
April 24th, 2007, 04:06 PM
Now updated to 0.1.5 with the backend chooser and some new stuff. By the way nothing done with dbus for now...
mikedee
April 24th, 2007, 05:19 PM
Strange, because when I let go-compiz start compiz, and then start compiz-settings, it complains that dbus isn't loaded, giving me the options to exit or try to load it. But it always fails loading it.
On the other hand, if I manually start compiz with 'compiz --replace dbus gconf' or 'compiz --replace dbus ini', I never have that problem. I thought it had to do with the order of plugins, i.e. I though dbus had to be loaded first...
What happens if you manually type compiz --replace gconf/ini and make sure dbus is in your gconf list?
There were a few start scripts floating around which started compiz with no backend and all the plugins on the start line. This would explain your problems.
mikedee
April 24th, 2007, 05:26 PM
Just had a look at the latest version and its looking very nice :)
I like the way it only attempts to do one thing (and do it well)
The only problem was that when I started it the first time it started with gconf support (fair enough) but then I changed to ini but it did not reload, a change of backend should cause a reload.
Keeguon
April 25th, 2007, 05:18 PM
@mikedee: I corrected the bug of the reloading loop this morning I'll put that online soon (see the rest of the message).
I'm currently developping a graphical python installer in order to make the install easier and the application more user friendly. For now the Go-Compiz Tray Icon won't be updated until it'll be finished (soon I hope). So if you have some bugs like mikedee just send a message I'll correct the program and when the installer will be ready, you'll have a perfect thing to run...
And for the road a screenshot:
http://thorfolio.free.fr/misc/compiz/go-compiz_installer.png
P.S.: If someone wants to help just PM me...
Keeguon
April 26th, 2007, 01:19 AM
Ok, we're now in 0.2 with the graphical install look at the README and the Changelog for more information...
@mikedee: So now that should work ;) !
nightfrost
April 26th, 2007, 09:08 AM
Strange, because when I let go-compiz start compiz, and then start compiz-settings, it complains that dbus isn't loaded, giving me the options to exit or try to load it. But it always fails loading it.
On the other hand, if I manually start compiz with 'compiz --replace dbus gconf' or 'compiz --replace dbus ini', I never have that problem. I thought it had to do with the order of plugins, i.e. I though dbus had to be loaded first...
What happens if you manually type compiz --replace gconf/ini and make sure dbus is in your gconf list?
There were a few start scripts floating around which started compiz with no backend and all the plugins on the start line. This would explain your problems.
Strange. My active_plugins list starts with "dbus gconf decoration..." etc. "compiz --replace gconf" fails to load dbus. "compiz --replace dbus gconf" works fine. I've never used start scripts other than the ones I've written myself. I'll try with the ini backend later, instead of gconf to see if that works better.
@Keeguon: Thanks for the update, I'm gonna try the new version now. I think it's a nice idea that you provide an installer, although I think it should normally be up to package maintainers to fix that part. But still, to have be able to install it as a normal user is a good thing!
Keeguon
April 26th, 2007, 09:41 AM
I have made minor improvments with 0.2.1 so if you already downloaded 0.2 don't worry you could keep it if you're fed up to update again and again and wait for another version with more major updates for others the link is in the first post as usual.
@nightfrost: Thanks.
Edit: Updated to 0.2.2 that correct bugs bringed by 0.2.1...
Keeguon
April 27th, 2007, 03:43 PM
0.2.5 is out and it's pretty much a reverse in developpement because of last updates unusability for ini backend...
vola
April 30th, 2007, 12:39 PM
Seems your last version has some problems, I get this message on when try to start:
Traceback (most recent call last):
File "/usr/bin/go-compiz.py", line 204, in <module>
if gl_decor_to_run == "gtk-window-decorator --replace":
NameError: name 'gl_decor_to_run' is not defined
I use git version.
for correct this I added
gl_decor_to_run =''
at line 33, and the program starts well
Keeguon
April 30th, 2007, 01:13 PM
Strange cause that should work without adding this line I have just tested the thing and it works (at last for me) so I don't know... If someone else have this bug (so please bug report) I'll correct the package.
flargen
May 1st, 2007, 06:57 PM
I am getting the same problem as vola.
Thanks
flargen
May 1st, 2007, 07:03 PM
Also, when I try to replace compiz with metacity (from the tray icon) compiz just reloads over it. This is almost certainly because compiz is being called without --sm-disable, which would prevent this behaviour.
Thanks for the cool program!
Keeguon
May 1st, 2007, 08:27 PM
Thanks for the bug reporting, I updated to 0.2.6 in order to correct those last 2 bugs !
Keeguon
May 4th, 2007, 06:40 PM
Today, I'm not talking about updates but let's have some chat about the program...
First of all, I'm planning to remove the Xcompmgr thing cause I think it's useless at least for me, I know that if I want some composite effects I active Compiz and not Xcompmgr, the second reason of that remove is that Kompmgr which does the same thing on KDE force me to code some more stuff just for KDE in order support it; it'll be complicated and as useless as the first reason (except if you do what's following...). However if you disagree with me then I'll keep the support for Xcompmgr and like I said I'll add the support for Kompmgr but it's not in my priority...
The second point is about your ideas and request that you want to do about the program. Indeed now that we're on a pretty much stable release then I let you make some proposition for what features you're wanting to see in the future versions of the Go-Compiz Tray Icon. So don't hesitate to post...
At last, I just want to say few words about the program and Compiz itself. You have noticed that the program is optimised to work with devel version or git due to the support of INI backend, so I was thinking that they still subsist some people that want a stable version (0.4) and that's not supporting INI consequently the future versions of the program will follow Compiz release that way:
=> Go-Compiz Tray Icon stable version for the stable version of Compiz
=> Go-Compiz Tray Icon devel version for the devel/git version of Compiz
That's pretty much all for now, waiting your answers !
RYX
May 4th, 2007, 07:11 PM
Good ideas ... :)
What do you think about making compiz-trayicon use the compizutil-library for python? It would surely simplify your work and you could focus on your application instead of the communication-stuff and changes to the compiz-API and backends.
Keeguon
May 4th, 2007, 08:23 PM
Good ideas ... :)
What do you think about making compiz-trayicon use the compizutil-library for python? It would surely simplify your work and you could focus on your application instead of the communication-stuff and changes to the compiz-API and backends.
Thanks, I was planning to dive into your work this week-end so that's nice noticing me about it ;) !
Keeguon
May 6th, 2007, 10:54 AM
Ok, now there's two version of the Go-Compiz Tray Icon one for the current stable version of compiz and the other one for the current dev/git versions of compiz so be carefull when you download the application...
About the compizutil library now (mainly cause RYX requested it) I started to look into the libraries but I was thinking that if I make the application use those libraries everyone needs them to use the program, so for now I'm just leaving Go-Compiz Tray Icon the way it is now for both versions but I'll make some future integration with compizutil-library in a new branch of the program in order to make things in a clean way.
At last, your ideas or requests are still welcome, don't hesitate to post in that goal !
amgeex
May 7th, 2007, 12:13 AM
Just a quick question: How do we remove this app? Thanks! :D
Keeguon
May 7th, 2007, 06:27 AM
Select remove when you use the installer...
amgeex
May 7th, 2007, 10:28 PM
Alright, thanks a lot! :D
Keeguon
May 9th, 2007, 11:00 PM
Same update for both package:
=> Added a switch to use cairo or metacity as a backend for gwd
=> Added About window
xplode_me
May 10th, 2007, 01:04 AM
Im sorry i didnt check the whole thread but is there an option to set __GL_YIELD="NOTHING" before launching compiz?
Like in: __GL_YIELD="NOTHING" compiz --replace ccp
This is of great advantage for nvidia users i guess :)
Thanks!
Keeguon
May 10th, 2007, 05:04 AM
Hmm... this option is not available yet but like you mentionned it, I'll look into it and it'll be for the next release now...
Keeguon
May 21st, 2007, 06:29 AM
Hey guys here's some news about the program.
I'm testing CompComm these days so I modified the program to work perfectly with it but no release for the moment just a list of new features:
=> Integration of Emerald Decorator and Emerald Theme manager
=> CCP Backend (INI Backend with CompComm) as a default backend
=> More work with configurators, if ccp backend running and ccs-settings installed then run ccs-settings else open /home/$USER/.compiz folder and if gconf backend running open compiz-settings in case where it's installed else gconf-editor
=> Take into accound the command in decoration plugin to load the decoration plugin
=> Added --ignore-desktophint in Compiz Options menu
=> Cleaned up code
All these features aren't all enabled it's a ToDo list for CompComm, if someone want that version for testing don't hesitate send me a request and I'll send it...
xplode_me
May 28th, 2007, 12:21 AM
nice to see some compcomm progress :)
Keeguon
May 28th, 2007, 10:19 PM
It is now on git repos from compcomm and only run on a compcomm configuration but I intend to report it to work w/ compiz again as soon as it is more stable...
RYX
May 29th, 2007, 10:46 AM
Excuse me but how can it only run on a "compcomm configuration" if compcomm is a set of packages and apps built around compiz? Can you please give some details about what exactly makes it only work on a "compcomm configuration"? Did you use the beryl-settings-system (which is now called css I guess)? It would be really sad to lose your application for all compiz users who like it clean, simple and stable ...
:)
karmapolice
May 29th, 2007, 03:51 PM
Yes it is sad, I was going to try it but now I can't :( .
Keeguon
May 30th, 2007, 05:26 AM
Cause it is using some compcomm elements such as CCP Backend instead of INI Backend and some other stuff but I will port it to compiz today...
Keeguon
May 30th, 2007, 08:51 PM
Ok now I've made two new versions one for compiz stable and the other one for the git/dev version I suspect that works but I haven't tested it so if you notice some bugs post them here or send me a PM...
Download :
=> Stable Version: http://thorfolio.free.fr/misc/compiz/stable/compiz-icon-0.6_stable.tar.gz
=> Dev/Git Version: http://thorfolio.free.fr/misc/compiz/stable/compiz-icon-0.6_dev.tar.gz
vBulletin® v3.7.1, Copyright ©2000-2008, Jelsoft Enterprises Ltd.