config daemon/library for 4.6

Brian J. Tarricone bjt23 at cornell.edu
Thu Sep 6 11:58:06 CEST 2007


Hello children,

Yes, that's right, it's time for your daily Xfconf update.

* I messed around with the D-Bus API and made some method names more
descriptive, as well as adding a couple new methods.  See:
http://svn.xfce.org/svn/kelnos/xfconf/trunk/common/xfconf-dbus.xml

* There's some new API in XfconfChannel to handle the new D-Bus methods.
Docs are updated; see:
http://foo-projects.org/~kelnos/xfconf/current/

* I implemented most of an XML file backend that creates one XML file
per channel.  The files right now actually look a lot like the MCS
settings files because I was lazy and the property tree gets flattened
out in the XML file.  I'll probably change that later.

* The XML file backend doesn't support reading/getting config entries
yet; just writing them.  That's kinda silly, I suppose, but I'm too
tired to do the XML parsing stuff tonight (or rather, dig it out of one
of my other apps and copy/paste).  For now, though, you can fire up the
daemon and do fun stuff like:

$ dbus-send --session --dest=org.xfce.Xfconf --print-reply \
            /org/xfce/Xfconf org.xfce.Xfconf.SetProperty \
            string:'foo' string:'bar' variant:'string:baz'
method return sender=:1.92 -> dest=:1.93
$ sleep 6  # the daemon uses 5-sec-delayed writes
$ cat ~/.config/xfce4/xfconf/xfce-perchannel-xml/foo.xml 
<?xml version="1.0" encoding="UTF-8"?>

<channel name="foo" version="1">
  <property name="bar" type="string" value="baz"/>
</channel>

Nifty, eh?

* There's still a lot more to do:
http://svn.xfce.org/svn/kelnos/xfconf/trunk/TODO
... and probably more than I've listed there.

Have fun.  If you want to bitch at me for crashes while playing with
it, feel free (gdb backtraces essential, patches appreciated).

Ugh, time for bed.

	-brian



More information about the Xfce4-dev mailing list