Configuration API

Thomas Leonard tal00r at ecs.soton.ac.uk
Wed Apr 28 13:50:12 EEST 2004


On Wed, Apr 28, 2004 at 12:32:44AM -0700, George wrote:
> On Tue, Apr 27, 2004 at 03:59:22PM +0100, Thomas Leonard wrote:
> > For the configuration system, are we agreed that we need a library API?
[...]
> > The API would have to be desktop neutral, support getting and setting
> > values, and notification (if the backend supports it). We have some good
> > example APIs, such a gconf's (and I guess the authors of those systems are
> > the best people to suggest something).
> 
> Note that any "desktop neutral" API will get per-desktop bindings, which will
> get us weird chains such as
> 
> GObject Wrapper -> FD API -> FD daemon -> GConf API -> gconfd -> backend
> 
> wheras what really would be useful to be shared is the backend.

You're quite right. The desktop-library <-> backend API is the important
one. However, due to potential namespace clashes, the current desktop APIs
would probably have to prefix all the keys (maybe GNOME and KDE both
define /system/proxy to mean different things, for example).

I think we also need a minimal wrapper library for non-desktop
applications (as someone else suggested). Probably, it just loads the
correct backend and maybe provides a few convenience functions.

> Also perhaps a bit of thought should be given to how many such different
> backends would there be?  If only one or two, it'd be much easier to
> write separate backends for the existing APIs.

That makes writing new backends much harder, though (especially if
non-desktop programs have implemented their own backends too). I think we
have LR, LDAP, ACAP, gconf-default-backend, D-BUS service, SQL database,
flat files and DB3 as likely backends already?


-- 
Thomas Leonard			http://rox.sourceforge.net
tal00r at ecs.soton.ac.uk	tal197 at users.sourceforge.net
GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1




More information about the xdg mailing list