UniConf (was: Scheduling subsystems (crontab, at) and the desktop)
Thomas Leonard
tal00r at ecs.soton.ac.uk
Sat Jul 31 15:14:32 EEST 2004
On Thu, Jul 22, 2004 at 11:54:18AM -0400, Patrick Patterson wrote:
> On Thursday 22 July 2004 10:59, C. Gatzemeier wrote:
[...]
> > A particular thing you seem to address that CFG does not yet have is a
> > notion for is handling of notifications. Another thing is d-bus, which was
> > not yet there when CFG was first planned, but would fit in there very good
> > now. Maybe you would like to have a look at the architecture and see if
> > your ideas could be applied.
>
> I just joined the list a few days ago, during the DDC in Ottawa, so I don't
> have the whole historic on this, but it sounds like what you are talking
> about already exists - for those of you who attended the DDC, you should
> recognise it - UniConf - the Universal Configuration Framework... it handles
> replication, cacheing, notifications, as well as the standard "get/set" type
> configuration issues.
>
> (It also talks and plays nicely with gconf, the Windows registry (did I
> mention it's cross platform :)), KConfig, etc.
>
> http://open.nit.ca is the current home for it, so please take a long look at
> it before designing something that this might just solve :)
I was at the DDC. The UniConf talk was very impressive technically
(configuring KDE from gconf-editor using a mailbox for storage!).
I certainly think there should be some discussion of it here.
My impression (just from the talk):
Good points:
- Everything is a string. Clients and libraries interpret them as they
please.
- Can work with or without a daemon process.
- Good support for caching, fallbacks, multiple backends, legacy support
for other systems.
- A single process can access the same information in different ways, by
'mounting' different config backends onto a namespace.
- The system can be useful beyond just configuration; eg a /tmp namespace
for doing notifications within an application.
- Command-line tool to get and set values. Very useful for scripting!
Issues:
- Each application builds up its own namespace at startup. This seems to
mean that the backend used is determined by the application, not the
user. I should be able to tell all my applications to store config in a
remote database, or in local .ini files, or whatever, and have all
applications do that. Obviously this is possible, but we need a standard
way to do it, preferably in a library.
- We need to define shared keys and arrange a namespace that people can
add to without collisions.
- "Computers are fast". Still, at login you have a lot of applications
reading in a lot of settings. Some benchmarks would be reassuring.
- How tied up with wvstreams is uniconf? It doesn't look like there's a
separate release, or a way to build it separately. It would be good to
be able to try it out on its own.
- Is anyone else using UniConf?
--
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