Re: init: API

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

 



Joe Desbonnet wrote:

XML would be the obvious choice (it is both human and machine
readable), but I did see a recent post here that requested "anything
but XML". I can understand why someone would not like XML (not easy to
read, difficult to edit with vi without breaking the file). But one of
the things I hate about unix like OSes is that every application has a
different config file format, making writing admin tools very
difficult.

   I second "everything but XML",  for the most part.

Some people I work with developed a library that works with a commercial CMS, that hooks up sites in the CMS with a campus-wide authentication system. This has an XML configuration file -- when we add a new site, we only need to change one parameter... which is entered twice into a 50-line block of XML. We continuously have problems when somebody edits the file, doesn't respect tag nesting, and the system breaks.

Contrast this to Apache configuration files, where I can write a script that (i) creates a new configuration file for a virtual host, and (ii) adds something at the end of the main conf file to activate the vhost, and (iii) kicks the server... You don't even need perl to do this, I can do this in bash without looking at the man page.

I suppose that Boy Wonder and Data Dog can spend three days to write a 3000 line program that does the same thing with libxml, or you could bring in a consultant to do it with XSLT, but I'm left feeling that this is a step back. If I'm going to do that, I might as well program for Windows -- I hear Visual Basic has a better visual app builder than anything that runs on Linux...

If not XML then what? Obviously the project owner gets to choose, but
in the absence of personal preferences I think it make sense for
Fedora Core project to make a recommendation so as to make the
development of admin tools easier.

It's not just a matter of XML -- XML answers a lot of tough questions (foreign character coding, quoting, container relationships) but it doesn't answer all of them. You'd have to create an XML dialect (schema) for encoding configuration information, which is probably going to be key-value pairs. You also need some system for describing the ontology of your conf files.... It ends up sound a lot like the Windows Registry or... gconf!

(Stated more positively, people who want a system where it's easy to configure things graphically ought to bark up the gconf tree)

RH/Fedora could certainly change the conf files for things they are responsible for (XML /etc/sysconfig, for instance,) but they can't do much to change the behavior of other developers. Just try getting the Apache team to change the organization, never mind the format, of the default configuration files...

--
fedora-devel-list mailing list
fedora-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-devel-list

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux