Perl DBus bindings / developing new bindings..

Daniel P. Berrange dan at
Thu May 5 07:04:09 PDT 2005

On Thu, May 05, 2005 at 09:41:58AM -0400, Daniel B. Faken wrote:
> On Thu Apr 28 2005 Daniel P. Berrange wrote:
> > Hi Folks,
> > For a little while now I've been working on Perl bindings for DBus. 
> > These are now at a state where they have enough functionality to be 
> > useful to application developers & indeed a couple of projects[1] have 
> > started to make some use of them. To provide a permanent home and to
> > facilitate contributions from other developers, I would like to move the
> > code out of my private CVS repository & onto a public hosted project site.
> > Naturally my first option is to ask if the DBus team are amenable to
> > hosting the code in the main DBus CVS repository? Since I don't 
> > neccessarily want to lock in releases of the Perl APIs into the main 
> > DBus release cycle, perhaps a new top level module
> > 'dbus-perl', alongside the existing 'dbus' & 'dbus-cpp' modules would be 
> > appropriate ?
> I'm interested in the perl bindings.  Where might I obtain access?

For now, they're available from my nightly build server

> Also, I'm interested in developing some bindings for Lua ( and 
> Squeak/Croquet ( /  The Perl bindings 
> may help with this.
>   I've looked at the Python & GLib bindings, but I'm not exactly sure 
> where to start in terms of implementing a working subset of the API.  Are 
> there any documents for this?

There are a few mailing list posts in the archives that may be of help.
Probably the most important point based on experiance & feedback of folks
on this list, is to understand the difference between DBus APIs / concepts
intended language binding authors, vs those for application developers.
For example, in the Perl bindings stuff under Net:DBus::Binding is 
internal only binding related stuff - backending on the C APIs, while
Net::DBus is the higher level application focused stuff. Since I didn't
know better at the time, I went down the route of writing complete 
bindings to the C apis, before figuring out what was actually needed
by the high level APIs. Thus I could probably cut down the amount of
code a fair bit by trimming out bindings to C apis that I never use.

|=-            GPG key:       -=|
|=-       Perl modules:              -=|
|=-           Projects:               -=|
|=-   berrange at  -  Daniel Berrange  -  dan at    -=|
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 232 bytes
Desc: not available
Url :

More information about the dbus mailing list