glib2/gdbus - arrays and g_variant_get() quirks

Simon McVittie smcv at
Wed Oct 11 11:24:42 UTC 2017

On Tue, 10 Oct 2017 at 23:14:12 +0200, David Sommerseth wrote:
> On 10/10/17 17:53, Simon McVittie wrote:
> > This is a true fact about the GDBus API for D-Bus, but it is not a
> > general fact about D-Bus.
> Aha ... Okay, this makes sense.  I was recommended to have a closer look
> at sd-bus, but it wasn't easily available in RHEL7 outside the systemd
> project source (not even API stable in systemd 219).  I did have a look
> at libdbus, but felt the complexity and documentation was poorer
> compared to glib2/gdbus.  Plus several developers recommended to stay
> away from libdbus.

I agree with the recommendation to use either GDBus or sd-bus,
whichever is more suitable for your use case (they have rather different
trade-offs). I just wanted to clarify which parts of what you were saying
are true facts about the D-Bus protocol generally, and which parts are
specific to a particular implementation (GDBus) and not true in general.

dbus, which includes libdbus, is the reference implementation of D-Bus;
that should not be confused with it being the *best* implementation of
D-Bus (for most uses it isn't).


More information about the dbus mailing list