Propersel for standerd configuration system.

1998-06-12 Thread Kevin Atkinson
Although this is really a broader issue than just linux or debian
I thought I would present it to you guys and girls first.

One of the major problems with unix is that, for new users, 
it is a bear to configure.

I was thinking about this this afternoon an an idea struck me
on a great way to solve this problem: A standard confutation system.
Part of the problem with this is that every program has their own
format for the configuration files.  This idea would solve that
problem for ever.

It would consist of these parts:

- A server back end which would manage the master and users
  registry of configuration
- A server/watchdog that will manage the translation of the
  registry to the old fashion configuration files.  It will
  also watch the configuration files for changes and update the
  registry appropriately
- An easy to use API in C, C++, Perl, Java, Sh, and just about 
  another other language that a unix program or script can be
  written in.
- A command line based front end to manage the registry
- A ncurses based front end to manage the registry
- A X based front end to manage the registry

The actual data will be store in a binary format that is specific
to the server.  However the server will be able to export and import
configurations in a standard text based format.

The layout of the registry will be similar to Microsoft's windows
registry however it will be far more powerful.

Configurations will be stored with key/value pairs which will then
be stored under a sub category which will be stored under another
sub category etc

There will also be a template data file which will contain information
about how the configuration should look like such as: what keys are
valid 
under a subcategory,  what subcategories are under a certain
subcategory, 
and what format the key's value should look like.

The template data will also contain a detailed description of what
exactly a 
certain subcatagory is and what each of the key/value pairs under it do.
It will also contain information that will warn the user if he/she is 
modifying something which should really be modified by some other
utility.

Also, the template data file will contain event information.  These
events 
will tell the server what else it has to doing the event that data was
modified. Events can include information such as:
  - restarted a demean
  - updating the old fashion configuration file
  - running a program to modify system resources based on the new
configuration (such as mounted drives, etc.)

So what do you think of this idea?

If people think it is worthwhile of pursing I will work on a formal
draft
standard which will lay things out in more detail than this.


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Kevin Atkinson
After writing this I realized that I did not give any good reason for
while it is needed so here it is.

The Standard Configuration System solves the problem of the difficulty
in managing unix (and especially linux) machines forever.

Although there are many front end for configuring various parts of the
linux system they rarely control all of the little features of a
program.  And in some cases they make it even more difficult to use
features not support by the front end.

The Standard Configuration System (SCS) doesn't have this problem
because it will control every aspect of the configuration.  Unlike front
ends which are often time consuming to write all the SCS requires is the
a template file describe what is valid and for older programs a
translation utility that will convert it to and from the old fashion
configuration file.  In most cases this utility can very easily be
written with a simple perl script. (Some more tricky configurations like
bind will take a little more doing, However.)

However the SCS will (eventually) also support a basic language for
describing a front-end for configuring a particular subcatagory (see
below) there for also having the ease of use of a graphical front end. 
(However I hope to design the SCS in a such a way that a front end will
rarely be needed).

Kevin Atkinson wrote:
> 
> Although this is really a broader issue than just linux or debian
> I thought I would present it to you guys and girls first.
> 
> One of the major problems with unix is that, for new users,
> it is a bear to configure.
> 
> I was thinking about this this afternoon an an idea struck me
> on a great way to solve this problem: A standard confutation system.
> Part of the problem with this is that every program has their own
> format for the configuration files.  This idea would solve that
> problem for ever.
> 
> It would consist of these parts:
> 
> - A server back end which would manage the master and users
>   registry of configuration
> - A server/watchdog that will manage the translation of the
>   registry to the old fashion configuration files.  It will
>   also watch the configuration files for changes and update the
>   registry appropriately
> - An easy to use API in C, C++, Perl, Java, Sh, and just about
>   another other language that a unix program or script can be
>   written in.
> - A command line based front end to manage the registry
> - A ncurses based front end to manage the registry
> - A X based front end to manage the registry
> 
> The actual data will be store in a binary format that is specific
> to the server.  However the server will be able to export and import
> configurations in a standard text based format.
> 
> The layout of the registry will be similar to Microsoft's windows
> registry however it will be far more powerful.
> 
> Configurations will be stored with key/value pairs which will then
> be stored under a sub category which will be stored under another
> sub category etc
> 
> There will also be a template data file which will contain information
> about how the configuration should look like such as: what keys are
> valid
> under a subcategory,  what subcategories are under a certain
> subcategory,
> and what format the key's value should look like.
> 
> The template data will also contain a detailed description of what
> exactly a
> certain subcatagory is and what each of the key/value pairs under it do.
> It will also contain information that will warn the user if he/she is
> modifying something which should really be modified by some other
> utility.
> 
> Also, the template data file will contain event information.  These
> events
> will tell the server what else it has to doing the event that data was
> modified. Events can include information such as:
>   - restarted a demean
>   - updating the old fashion configuration file
>   - running a program to modify system resources based on the new
> configuration (such as mounted drives, etc.)
> 
> So what do you think of this idea?
> 
> If people think it is worthwhile of pursing I will work on a formal
> draft
> standard which will lay things out in more detail than this.


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Philip Hands
> The layout of the registry will be similar to Microsoft's windows
> registry however it will be far more powerful.
...
> So what do you think of this idea?

IMHO The registry is the main reason that on Windows the solution to every
problem is ``re-install from scratch''.

What happens when you get a bad block in the registry ?  It doesn't just screw 
one program, it wreaks havoc across the entire system.

A bug in the server/wachdog, and you get a similar result.

A security bug in just about any of the software involved, and you can expect 
every program on the system to be compromised.

When you need to do disaster recovery, having the real configuration hidden in 
a binary database is a nightmare.

Sorry, but as you can probably tell, (to quote Groucho Marx):

  Before you've even started or commenced it, I'm against it.

Now, linuxconf is another matter, because that automates the editing of 
the files that were there already.

Wasn't someone supposed to be packaging linuxconf ?  If that someone happens 
to be me, could someone remind me of the fact ;-)

Cheers, Phil.




--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Jules Bean
--On Fri, Jun 12, 1998 7:53 am +0100 "Philip Hands" <[EMAIL PROTECTED]> wrote: 

>> The layout of the registry will be similar to Microsoft's windows
>> registry however it will be far more powerful.
> ...
>> So what do you think of this idea?
> 
> IMHO The registry is the main reason that on Windows the solution to every
> problem is ``re-install from scratch''.

Search the mailing list archives.

We have discussed this, in detail, quite recently.

COAS is a system which has something in common with your suggestions.

We opted for linuxconf, which also has something in common with our
suggestions :-)

Jules


/+---+-\
|  Jelibean aka  | [EMAIL PROTECTED] |  6 Evelyn Rd|
|  Jules aka |   |  Richmond, Surrey   |
|  Julian Bean   | [EMAIL PROTECTED]|  TW9 2TF *UK*   |
++---+-+
|  War doesn't demonstrate who's right... just who's left. |
|  When privacy is outlawed... only the outlaws have privacy.  |
\--/



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread sjc
On Fri, Jun 12, 1998 at 12:23:28AM -0400, Kevin Atkinson wrote:

> One of the major problems with unix is that, for new users, 
> it is a bear to configure.

I definitly agree (and am glad im not one of those "new users"). In fact
most "new things" that one has never configured before take a while
to figure out and do...the upshot however is that you can learn allot
from it.
 
> It would consist of these parts:

ok
 
> - A server back end which would manage the master and users
>   registry of configuration

ewwwyuk...gee I wish I hadn't read this right before lunch time
lost my appitite now...
(Read: This "feature" is one of the "Top 10" reasons I switched to linux)

> - An easy to use API in C, C++, Perl, Java, Sh, and just about 
>   another other language that a unix program or script can be
>   written in.

APIs, when well written are always nice to have :)

> The actual data will be store in a binary format that is specific
> to the server.  However the server will be able to export and import
> configurations in a standard text based format.

sounds like a nightmare. Ok lets see...something happnes to the registry..
(maybe it gets deleted or becomes somehow unreadable)...I loose the
configs for EVERYTHING.

Should the registry editor stop working (maybe part of the reg is corrupted,
any reason) I have no recource but to wipe it all out and re-install
(okill just pull out the tape backup...but not everyone has a tape backup 
and I don't enjoy NEEDing to restore)

It would HAVE to be able to fit on a rescue disk (along with all of the 
other tools which already HAVE to be on it) 
 
> So what do you think of this idea?

As you can see I don't like it. 

I could however see writing a library or some sort of "interface" that programs
can use. This would take the burden of writting a parser and working out the 
more "exact details" of the configuration file off of the designer of the
application, and place it on the library.

This would allow the library to basically do whatyou say (make a database of
configurations and provide and interface for changin gthem) but...it would
also allow the library to do it right (well... RIGHT as in what _I_ think
is right..which is of course right). It could take care of the details of
parsing and writting a config file.

This would put all conifg files ofprograms which use it into a standard format.
The advantages:

1) It would be easier to write programs that configure programs. All they
would have to do is know what variables exist, and what legal values are.
The actual format of the file would eb un-important (I would imaging that 
that is a stu,bling block for writting programs that configure
a wide range of applications as each on emay have a subtly differnt format)

2) It would allow an administrator to repair the system the same as they 
always have.

3) The files all using a standard format would make editing files by hand
easier as one doesn't have to think "Ok...in this file can I use tabs?" (etc)

4) For those who want better performance and don't care about editing by hand 
it would not be a problem to use a binary database instead of
text files.

of course you have to convince everyone that your system is good and worth 
them using in their programs (unless you intend to edit them yourself :) )
but...thats the same for any system.

When trying to decide between two vastly differnt systems of doing things
always pick niether and steal the best of both ways :)
 
As for this library...I might even be willing to work on such a thing...
I do wish to experient with config files and parsing etc...

-Steve


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Kevin Atkinson
[EMAIL PROTECTED] wrote:
> 
> On Fri, Jun 12, 1998 at 12:23:28AM -0400, Kevin Atkinson wrote:
> 
> > One of the major problems with unix is that, for new users,
> > it is a bear to configure.
> 
> I definitly agree (and am glad im not one of those "new users"). In fact
> most "new things" that one has never configured before take a while
> to figure out and do...the upshot however is that you can learn allot
> from it.
> 
> > It would consist of these parts:
> 
> ok
> 
> > - A server back end which would manage the master and users
> >   registry of configuration
> 
> ewwwyuk...gee I wish I hadn't read this right before lunch time
> lost my appitite now...
> (Read: This "feature" is one of the "Top 10" reasons I switched to linux)
> 
> > - An easy to use API in C, C++, Perl, Java, Sh, and just about
> >   another other language that a unix program or script can be
> >   written in.
> 
> APIs, when well written are always nice to have :)
> 
> > The actual data will be store in a binary format that is specific
> > to the server.  However the server will be able to export and import
> > configurations in a standard text based format.
> 
> sounds like a nightmare. Ok lets see...something happnes to the registry..
> (maybe it gets deleted or becomes somehow unreadable)...I loose the
> configs for EVERYTHING.
> 
> Should the registry editor stop working (maybe part of the reg is corrupted,
> any reason) I have no recource but to wipe it all out and re-install
> (okill just pull out the tape backup...but not everyone has a tape backup
> and I don't enjoy NEEDing to restore)
> 
> It would HAVE to be able to fit on a rescue disk (along with all of the
> other tools which already HAVE to be on it)

Very good point.  However first off the registry should consist of lots
of little files with one file for each major subcatogry, therefore if
one gets corrupted it won't bring the entire system down.  Second off
data will be regually exported to text based backup files (say like
every hour) so if something goes wrong it can easilly read the text
based file to fix the corrupted parts.  
> 
> > So what do you think of this idea?
> 
> As you can see I don't like it.
> 
> I could however see writing a library or some sort of "interface" that 
> programs
> can use. This would take the burden of writting a parser and working out the
> more "exact details" of the configuration file off of the designer of the
> application, and place it on the library.
> 
> This would allow the library to basically do whatyou say (make a database of
> configurations and provide and interface for changin gthem) but...it would
> also allow the library to do it right (well... RIGHT as in what _I_ think
> is right..which is of course right). It could take care of the details of
> parsing and writting a config file.
> 
> This would put all conifg files ofprograms which use it into a standard 
> format.
> The advantages:
> 
> 1) It would be easier to write programs that configure programs. All they
> would have to do is know what variables exist, and what legal values are.
> The actual format of the file would eb un-important (I would imaging that
> that is a stu,bling block for writting programs that configure
> a wide range of applications as each on emay have a subtly differnt format)
> 
> 2) It would allow an administrator to repair the system the same as they
> always have.
> 
> 3) The files all using a standard format would make editing files by hand
> easier as one doesn't have to think "Ok...in this file can I use tabs?" (etc)
> 
> 4) For those who want better performance and don't care about editing by hand
> it would not be a problem to use a binary database instead of
> text files.
> 
> of course you have to convince everyone that your system is good and worth
> them using in their programs (unless you intend to edit them yourself :) )
> but...thats the same for any system.
> 
> When trying to decide between two vastly differnt systems of doing things
> always pick niether and steal the best of both ways :)
> 
> As for this library...I might even be willing to work on such a thing...
> I do wish to experient with config files and parsing etc...
> 

I really just should not have mentioned the windows registry as most
people hate it. However what I was thinking off would is exactly what
you are thinking off.  There will just be a server running where
programs can talk to to change their configuration.  However it can also
translate things to in from the old fashion configuration files so that
applications don't have to use the library if they don't wants to.

> -Steve
> 
> --
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Dan Jacobowitz
Now, don't get me wrong...I hate windows registries just as badly as
anyone else, and I've been using linuxconf on and off for ages.  But
this has one darn good idea to it: many programs using the same data
source.  For instance, I just installed this machine with one hostname
before realizing that alas, I could not get that hostname!  It was a
royal pain to find all occurances of that hostname and change them all.

Dan


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread Raul Miller
Dan Jacobowitz <[EMAIL PROTECTED]> wrote:
> Now, don't get me wrong...I hate windows registries just as badly as
> anyone else, and I've been using linuxconf on and off for ages.  But
> this has one darn good idea to it: many programs using the same data
> source.  For instance, I just installed this machine with one hostname
> before realizing that alas, I could not get that hostname!  It was a
> royal pain to find all occurances of that hostname and change them all.

So?  There's already a system call to give you the hostname.

Which is to say: a good idea is only a good idea unless you're 
willing to do the hard work of actually making it work properly.

-- 
Raul


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-12 Thread sjc
On Fri, Jun 12, 1998 at 12:29:41PM -0400, Kevin Atkinson wrote:
> [EMAIL PROTECTED] wrote:
> > 
> > On Fri, Jun 12, 1998 at 12:23:28AM -0400, Kevin Atkinson wrote:
> > 
>  Second off
> data will be regually exported to text based backup files (say like
> every hour) so if something goes wrong it can easilly read the text
> based file to fix the corrupted parts.  

hmm this sounds good at first...but has some problems.
First: What if the configuration error or orruption takes more than an hour (or 
even
more than a day) before it is noticed? it could start dumping off corrupt data
(depending on whether or not it notices the corruption)

second: seems execcive

> > > So what do you think of this idea?
> > 
> > As you can see I don't like it.
> > 
> > I could however see writing a library or some sort of "interface" that 
> > programs
> > can use. This would take the burden of writting a parser and working out the
> > more "exact details" of the configuration file off of the designer of the
> > application, and place it on the library.
> > 
> > This would allow the library to basically do whatyou say (make a database of
> 
> I really just should not have mentioned the windows registry as most
> people hate it.

not most peoplejust those people who know of it and have had to
deal with it :)

> However what I was thinking off would is exactly what
> you are thinking off.  There will just be a server running where
> programs can talk to to change their configuration.  

Thats not exactly what I was thinking of...I was thinking litterally of a 
library. just the code to do it in a nice dynamically linkable library.

I don't see the need for a server running...those chores would best be handled 
by some other utility which uses the API. SUing an actual server for this 
seems like major overkill to me.

> However it can also
> translate things to in from the old fashion configuration files so that
> applications don't have to use the library if they don't wants to.

well thats the nice thing about the library...all you have to do is update
the library, and use a utility to dump the old configs back through it...
and presto...your using a new file format.. ALL programs which
use the library would automatically use the new one.

Ya know...while I think that the registry, database, and server are all
overkill in their own way...I am almost surprized that such a library has never
been written. I mean, think how many programs need to parse a config file?

(btw HAS someone written such a library? if so I have never heard of it)
-Steve


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Propersel for standerd configuration system.

1998-06-22 Thread Ian Jackson
Jules Bean writes ("Re: Propersel for standerd configuration system. "):
> --On Fri, Jun 12, 1998 7:53 am +0100 "Philip Hands" <[EMAIL PROTECTED]> 
> wrote: 
> >> The layout of the registry will be similar to Microsoft's windows
> >> registry however it will be far more powerful.
> > ...
> >> So what do you think of this idea?
> > 
> > IMHO The registry is the main reason that on Windows the solution to every
> > problem is ``re-install from scratch''.
> 
> Search the mailing list archives.
> 
> We have discussed this, in detail, quite recently.

Which mailing list ?

> COAS is a system which has something in common with your suggestions.

I went to a talk at the Linux-Kongress about COAS, and was reasonably
impressed.  I shall be discussing the implications on debian-policy.

> We opted for linuxconf, which also has something in common with our
> suggestions :-)

Who opted for linuxconf in which context ?  Technical policy decisions
are made on debian-policy.

Ian.


--  
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]