Xfconf ported to GDBus

Ali Abdallah aliovx at gmail.com
Fri May 27 16:41:16 CEST 2016

Dear all,

In the last commit I believe that I have fixed some/all major issues 
with libxfconf, it should be working fine now.
However, this does not mean that you can use the new version of xfconf 
with your actual xfce installation. There are things to be fixed in 
xfsettings and xfce4-panel, for example.

Precisely, there is no more XFCONF_TYPE_G_VALUE_ARRAY (which is a 
dbus_g_type_get_collection). Simply GPtrArray/G_TYPE_PTR_ARRAY should be 
used instead.

I'll have to bump the version of libxfconf-0 to libxfconf-1, to avoid 

For reference I write down where XFCONF_TYPE_G_VALUE_ARRAY is used

xfce4-settings in
xfsettingsd/pointers.c:50  #define XFCONF_TYPE_G_VALUE_ARRAY 
(dbus_g_type_get_collection ("GPtrArray", G_TYPE_VALUE))

xfce4-panel in
common/panel-xfconf.c:164  type = dbus_g_type_get_collection 
("GPtrArray", G_TYPE_VALUE);
common/panel-dbus.h:37  dbus_g_type_get_collection ("GPtrArray",

These fixes can be easily implemented. There might be also other modules 
that need to be fixed as well.


PS: I was counting on porting a couple of modules, but unfortunately due 
to unexpected work position change, I will be very busy in the next 
coming months. I'll try to contribute as much as I can.

On 04/26/2016 04:26 PM, Ali Abdallah wrote:
> Hey,
> I went that option for three reasons:
> 1) Because it requires no API changes.
> 2) Simpler (look at xfconf-backend-perchannel-xml, it is all build 
> around GValues).
> 3) An application using libxfconf is expected to be using GValues 
> internally. The app should not
>  handle GVariants, as GVariants are meant only for dbus transfers.
> Regards,
> Ali
> On 04/26/2016 04:05 PM, flo.xfce at gmx-topmail.de wrote:
>> Thanks for your work Ali.
>> A while ago you mentioned thoughts about possible API changes in xfconf
>> as a result of your porting work. So from what I can see in the commits
>> you went for option 1) with the internal GValue <-> GVariant conversion.
>> Could you please explain why you went with this option?
>> Kind regards
>> On 04/24/16 22:12, Ali Abdallah wrote:
>>> Dear all,
>>> This is to announce that I have "almost" finished from porting 
>>> xfconf to
>>> gdbus.
>>> http://git.xfce.org/users/ali/xfconf/
>>> I'm running the new version which does not depend on dbus-glib anymore,
>>> with no apparent problem. But anyway I'm planning to perform a 
>>> couple of
>>> tests to sort out any possible issues. I still need to port/test the
>>> perl binding.
>>> I'll shortly be working on something else, for that I gently ask
>>> everybody to keep the following page up to date:
>>> https://wiki.xfce.org/releng/4.14/roadmap
>>> I want to avoid picking up a module which somebody is already 
>>> working on.
>>> Cheers,
>>> ali
>>> _______________________________________________
>>> Xfce4-dev mailing list
>>> Xfce4-dev at xfce.org
>>> https://mail.xfce.org/mailman/listinfo/xfce4-dev
>> _______________________________________________
>> Xfce4-dev mailing list
>> Xfce4-dev at xfce.org
>> https://mail.xfce.org/mailman/listinfo/xfce4-dev

More information about the Xfce4-dev mailing list