On 3/29/06, Bill Crawford <billcrawford1970@gmail.com> wrote:
There are plenty of reasons why it hasn't happened, among which are a number
of experiments with various forms of "registry" ...
It never happend because of the "bazar" nature of the OSS development model.
One of its big drawbacks is that there is no central architecture, no central desing directions, no central decisions. So we see A LOT of code rewriting, programs being developed in A LOT of different languages, and A LOT of different configuration files formats.
As we all know, OSS model also have good advantages too.

The reason most applications use individual config files instead of a central
repository is because that makes it much, *much* easier to:

1. Design a domain-specific config language. XML does *NOT* solve this
problem; it is a *lexical* (meta)language. The structure goes on top.
I see this as a disadvantage, since all, ALL config files are not more then an hierarchical structure of key/value pairs. All lexical stuff you are saying are fat to make it more human readable.

2. Point to a different config file when you start a program.
You can also point your program to a different root tree of keys. So using Elektra terminology:
$ httpd -c system/tmp/mytest/mysite.com


3. Copy config files, rename them, reuse them, move them into chroot()
environments, and generally be *free* to do so.
You can do the same with configuration trees. Elektra lets you even export some tree to XML, take the file to another machine, and import it into a different root tree. Check http://www.libelektra.org/presentation/img22.html