Re: System administration with GNOME.



It's interesting - almost everybody assumed 'binary' when they saw
'registry'.

There's no reason why a registry has to be a binary format (XML would be
brilliant for this - as Miguel suggested for individual config files).

Plus, a registry is rarely a single file (Windows' registries are several
individual files). 

The registry is a *representation* of the configuration data you already
have, in such a way that it can be manipulated as a single entity.

Consider a typical Linux system:

System-wide configuration in /etc, /usr/etc, and /usr/local/etc

User-specific configuration in ~/.*

Write a bunch of modules to represent the whole lot, and as far as
applicatrions which use the library are concerned, you have a registry.
The application itself doesn't need to know nor care that the contents of
the registry are stored in 37 million different files - it just
manipulates the data as if it was one.

When you talk about a single in-memory representation of the configuration
files, you're talking about a registry - you're just not calling it that.

Our rules aren't the same as Microsoft's - remember that when someone uses
a term that they do, it doesn't necessarily mean exactly the same thing
:-)

I think that there should be a libconfig (or something) which consolidates
all the config files as an in-memory representation so that management
applications/applets can talk to it in a standard way. This way, people
can use whatever interface they're happiest with - a GNOME config tool can
talk to it, and so can a KDE (*gasp*) config tool -- or even a
console-based config tool (if someone fancied writing one). If the
interface is standard, it doesn't matter what the platform is underneath,
and modules can handle the dirty work. 

I hope this all makes some sense (I know I repeated some of what other
people had said, here).

Mo.

-- 
Mo McKinlay             Chief Software Architect              inter/open
mmckinlay@labs.interopen.org                    http://www.interopen.org



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]