ANNOUNCE: Xorg configuration model

ANNOUNCE: Xorg configuration model

am 26.01.2007 14:43:57 von dominique.dumont

Hello

I'm happy to announce the very first version of a Xorg configuration
model [1] for Config::Model [2] perl module.

With this module and Config::Model, you have a tool to modify the
configuration of your favourite X server.

Once this module is installed, you can run (as root, but please backup
/etc/X11/xorg.conf before):

# config-model -root_model Xorg

You may want to try it safely first by writing the resulting xorg.conf
elsewhere (in this case you can run this command with your user
account):

$ config-model -root_model Xorg -write_directory test

Be sure to read the README file [3] and this doc [4] which explain the
basic command of the interface.

------------------------------------

At this point, config-model and its xorg model are still preliminary.

A lot of work still needs to be done. For instance the current UI is a
command line. Config::Model needs more friendly users interfaces. I
have some code to provide a Curses UI that I will release in a few
weeks. I could use some help to provide a GUI or a Webmin interface.

On xorg model side, I've provided a rather complete model (according
to the documentation) for radeon driver and a basic model for nvidia
drivers. The model could also use improvements to better classify xorg
parameter according to their status (e.g. standard, deprecated...) or
permission level (e.g. intermediate, advanced or master depending on
the required skills).

Now, I'd welcome some feedback or help:

- What do you think of this approach: separate model declaration and
configuration handling ?

- Do you think it can be applied to other applications ?

- If yes, for which application would you like a configuration model ?

- Do you think Config::Model should be integrated to other config
tools ? Which ones ?


Thanks for your time

Cheers

[1] http://search.cpan.org/dist/Config-Model-Xorg/
[2] http://search.cpan.org/dist/Config-Model/
[3] http://search.cpan.org/src/DDUMONT/Config-Model-Xorg-0.5/REA DME
[4] http://search.cpan.org/dist/Config-Model/TermUI.pm#USER_COMM AND_SYNTAX

--
Dominique Dumont
"Delivering successful solutions requires giving people what they
need, not what they want." Kurt Bittner

Re: ANNOUNCE: Xorg configuration model

am 30.01.2007 21:52:45 von Andy

Just curious...

I'm not a frequent UNIX user and the only exposure I've had to X11 was
programming on DEC's Vax.

So, your module would allow somebody to configure a UNIX system from
inside of a Perl program?

I know the Vax system had some sort of monitor that ran in the
background that was able to automatically handle problems with the
computer. For example, if the system went down it was able to reboot
everything and bring itself back online without the intervention of an
operator.

Could your configuration model be made to do this? For example, you
would enter a bunch of rules into the model to tell it what to do
under specific situations (ie values read from system variables).
Then, the model would figure out what it has to do to reconfigure a
server based on a combination of values from a bunch of system
variables. Would the procedures it had to execute to work with the
server be coded as Perl subroutines?

Re: ANNOUNCE: Xorg configuration model

am 31.01.2007 14:45:29 von dominique.dumont

"Andy" writes:
> So, your module would allow somebody to configure a UNIX system from
> inside of a Perl program?

Yes. Through the application's configuration files. (But we can also
imagine a way for Config::Model to be connected to the application to
configure it directly)

But a "Unix system" is quite wide. You'd need a description of all the
configuration data (i.e. configuration model) you want to modify.

> I know the Vax system had some sort of monitor that ran in the
> background that was able to automatically handle problems with the
> computer. For example, if the system went down it was able to reboot
> everything and bring itself back online without the intervention of an
> operator.
>
> Could your configuration model be made to do this?

Err, I do not known VAX at all, so without more specific details, it's
hard to answer.

> For example, you would enter a bunch of rules into the model to tell
> it what to do under specific situations (ie values read from system
> variables).

That's a question I've had in mind for some time. Currently the model
is static, i.e. you can define default value within a configuration
model. There's no provision (within a model) to query the host to get
informations.

The advantage is that you can audit configuration data from a remote
system on your laptop, which is handy for support.

On the other hand, one can imagine a Perl library to get these
informations from the host and fill the configuration tree (i.e. an
instance of a configuration model) before showing the user interface.
But this would run only on the target system.

> Then, the model would figure out what it has to do to reconfigure a
> server based on a combination of values from a bunch of system
> variables.

Yes. The tricky part will be to figure out the configuration model.

> Would the procedures it had to execute to work with the server be
> coded as Perl subroutines?

No, but at some point you will have to feed some data to a Perl
program.

HTH

--
Dominique Dumont
"Delivering successful solutions requires giving people what they
need, not what they want." Kurt Bittner