confuse-devel
[Top][All Lists]
Advanced

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

Re: [Confuse-devel] libconf - libConfuse


From: Martin Hedenfalk
Subject: Re: [Confuse-devel] libconf - libConfuse
Date: Sat, 10 May 2003 12:11:59 +0200

Hi, sorry for not answering earlier.

My aim with LibConfuse is to keep it small and easy to use. Wrapping all possible configuration files on all distros seems quite a big task to me.

LibConfuse is still under development, but shouldn't change too much now. I believe it's quite stable.

I'd love to see other projects using libConfuse, but I'd like to keep libConfuse as it is now (more or less). And I can't commit to any large project, I simply don't have the time.

regards / martin

torsdagen den 17 april 2003 kl 14.23 skrev address@hidden:


Hello, I'm the author and main coder of libconf, hosted on savannah

http://www.nongnu.org/libconf

The goal of libconf is to abstract the configuration of linux systems by providing an unique representation of the configuration whatever the distro

libconf is in perl, and composed of :

- Libconf : a config file parser, that is able to understand any config file (from simple shell like to complex apache or XF86Config), modify them without
  loosing any information. libconf especially handles comment. It uses
  templates to handle the config files. Many of them are already done.

- Glueconf : on top of Libconf, this is a layer that wraps the config files in
  a perl structure.

- SystemConf : on top of Glueconf, that's a layer that uses multiple Glueconf structure to wrap them in a global structure, totally independant of the distribution. So Systemconf uses one backend per distribution, to know which
   config-file (thus which glueconf structure) gives each information.


Example:

the network SystemConf structure looks like :

$sys_network = {
                  general => {
                                  NETWORKING =>
                                  GATEWAY =>
                                },
                  interfaces => {
                                  eth0 => {
                                             DEVICE => 'eth0',
                                             BOOTPROTO => 'dhcp',
NETMASK' => '255.255.255.0',
                                             ONBOOT => 'yes',
                                             NEEDHOSTNAME' => 'yes'
                                           },
                                  eth0 => {
                                             DEVICE => 'eth0',
                                             BOOTPROTO => 'dhcp',
NETMASK' => '255.255.255.0',
                                             ONBOOT => 'yes',
                                             NEEDHOSTNAME' => 'yes'
                                           },
                                 }
               }


The structure is initialized with the content of the config-files. when
configuration programs has finished changing the values, it can call functions to write the content of the structure into the corresponding config files,
without messing them up, with comments respects.

SystemConf can warn you if some underlying config file has been changed since
you read the informations, and other usefull functions.

I have good relations with mandrakesoft and gentoo. Mandrakesoft is beginning to use libconf in their configuration tools, gentoo plan to do so shortly
(maybe 6 months).


Now, I'm trying to gather common efforts to provide a descent global
configuraiton system, and I saw that libConfuse is a configuration file parser library. Maybe we could try to work together? I know that my parser works, but
it's far from being perfect. libconfuse could be used instead.

In addition, I plan to code C and python connections.


Tell me if libconfuse is still under development, what is its status, and if
you are interested by working together.

cu, thanks

--
dams

--
Martin Hedenfalk <address@hidden>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]