In 2005, I've installed a Debian system for my mother in law. As a user, she is very happy about it. She can edit her mails, browse the internet like any other computer user. 6 years later, she has begun to install some package with Synaptic, but I'm still doing the administration. I handle the package updates and the configuration. Why is that ? Because these tasks are not easy.
Configuring an application like sshd is too difficult for her. To correctly update a configuration file, she would have to:
So, here's another objective of Config::Model project:
Let's add another objective:
So here's another very important objective:
I'm pretty sure I'm not the first wanting to improve configuration tools. There are other projects like Webmin or Elektra. To write configuration GUI, developers must create:
If all these features are implemented with dedicated code for each application, maintenance and evolutions can become a huge task.
So, here are the objective targeted for developers:
Now, let's have a look at the list of objectives (re-ordered so the explanations will be easier to follow):