configuration system notes

Joerg Barfurth jub at
Tue Apr 12 17:07:38 EEST 2005


Havoc Pennington wrote:
> Let me put it this way: I think you could write a version 1.0 system
> that met the needs of Fedora, GNOME, and KDE _without_ pluggable
> backends. Given an API you can always add pluggable backends later, and
> realistically there's only one backend people will use for now (the text
> files one).

I am not so sure.

> The interesting future backend is a client-server one, maybe using a
> directory server, but that's an enterprise feature that so far nobody
> has even bothered to do for GNOME or KDE in the last few years 

There are things of that kind. They just haven't found their way into 
Gnome or KDE proper yet. Apparently UniConf provides a way to plug 
something like this into both gconf and KConfig. We have a backend like 
this which unfortunately isn't open (yet). If you provide pluggability 
you don't know of all plugins. But if you take that away, you may hurt 
existing customers of the feature.

> because
> every enterprise has some hack for dealing with text config files
> anyway, since UNIX/Linux more or less requires you to have a hack like
> that.

Unfortunately yes. But while such hacks work reasonably well for config 
files, they don't work nearly as well for desktop application 
preferences, which users can and do update interactively.

> So, if I were designing a system I would keep the API opaque so I could
> add backends, but multiple backends would be the last thing I'd add, not
> the first. Most other goals are more important.
> Multiple backends aren't a disadvantage, but they are the wrong focus.

You needn't create more backends right away, but I still find support 
for pluggable backends essential. It allows people to play stacking 
games and as the existence of UniConf shows, some actually do.

Ciao, Joerg

Joerg Barfurth              Sun Microsystems - Desktop - Hamburg
 >>>>>>>>>>>>>>>>>> using std::disclaimer <<<<<<<<<<<<<<<<<<<<<<<
Software Engineer                         joerg.barfurth at Configuration

More information about the xdg mailing list