I'm really starting to get the hang of this plugin porting stuff. I've got ports of the awesome wall and snap plugins from beryl available for compiz git. I started out with a straight port, pulling things from beryl-core into the plugin where possible to make things work. I've now started actually changing the plugins to avoid this. This is all great practice for writing a replacement dbus plugin.
On that note, does anyone know of a program that provides a dbus interface and doesn't use the glib or Qt bindings? I need one that uses the straight C API.
The X server and sample config client both use the low-level C API.
Hello
The VLC D-bus interface (only in svn trunk) and the mechanism to have only one VLC running are done with the C API of dbus from dbus/dbus.h
http://trac.videolan.org/vlc/browser/trunk/modules/control/dbus.c
http://trac.videolan.org/vlc/browser/trunk/modules/control/dbus.h
http://trac.videolan.org/vlc/browser/trunk/src/libvlc-common.c
hth,
Xtophe
Awesome, that is exactly what I was looking for. It even does introspection. That's the main reason I'm redoing compiz's dbus plugin. :)
Thanks.
Hi,
I've seen your post on the Ubuntu planet, and it made me wonder about something:
Beryl's code is under the GPL license.
Compiz's code is under the MIT license.
So how can you port code (plugins) that are under the GPL to a software (Compiz) under the MIT license?
Do you let your code under the GPL license?
Then, according to the GPLv2, can they mix?
Thanks!
Quentin
Also see "Using the DBUS C API":
http://www.matthew.ath.cx/misc/dbus
Quentin: The core of compiz is MIT, like you say. The advantage of this is that you can write plugins using any license you want, even something closed source.
William: Thanks, that looks really helpful.