Configuration API
Dave Cridland [Home]
dave at cridland.net
Mon May 3 19:17:07 EEST 2004
On Mon May 3 16:56:51 2004, Lars Hallberg wrote:
> Dave Cridland [Home] wrote:
>
>> I can't help but think that we have to, as our first priority, ensure that
>> GConf and KConfig can rapidly adopt whatever we decide on with a minimum
of fuss, otherwise we're whistling in the wind. While I'm a great fan of
albino pachyderms of all varieties, we've got a good opportunity to unify
configuration between desktops here, and it'd be a real shame if we made
requirements which prevented uptake.
>
> I think the API can be prety flexably. If ther is *one* app that uses som
> complex structur in ther config files, we might consider suporting it, but
only that bakend need to suport it! Of, corce - this might more be a problem
for the frontends, that have to suport every feature from every backend.
>
Argh! No! If we don't have a consistent data model which is supported across
all backends, we're doomed. I think this is easily achievable between KConfig
and GConf, with only mild alterations to both.
>
> On the other hand, a front end can resort to string representation of some
> uncommon types, and lett the backend do the syntax checking (if we make
sure the API *alow* every key to be treated as a string as an alternative,
regardless of actual type).
>
Which raises an interesting question - is the datatype soft or hard? Meaning,
can an application say 'give me the value of this key as an integer'? ACAP
does this to some extent, but for our purposes, I'd say no. Moreover, I'd say
a backend shouldn't be handling validation - that should always be the job of
the application using it. Apart from anything else, type checking is a simple
addition to the validation that has to happen anyway.
>
> Actuly, the whole API might be strings wher typ info is only used for
> syntax checking. Then helper libs on top of the API can provide nativ
datatypes for different environment.
I've suggested something similar elsewhere in this thread, at least as far as
native type support is concerned. I'm not wed to it, mind, and I'm well aware
that such types as a list should be easy to support in any backend without
recourse to converting the entire list into a single string.
Sean Middleditch also suggested backends might be queriable for which
datatypes they support natively - this is also quite sensible.
Dave.
More information about the xdg
mailing list