In the previous hackweek (14), the following objectives from project "A generic mechanism for analysing and manipulating diverse software configuration files" were worked on:

<pre> There are vastly different syntaxes being used by Linux softwares nowadays - Apache, Bind, NTP, Postfix, just to name a few. It is a very tedious task to implement comprehensive parser for every single configuration file, and even more difficult to produce configuration text (file content) from parsed syntax tree.

The project tackles those difficulties by presenting an implementation of a universal parser that is capable of:

  • Parsing any configuration files with minimal customisation effort.

  • Produce configuration file text with minimal loss of information.

  • Allow easy query and manipulation of content nodes, to enable editing capabilities. </pre>

The above objectives will be further developed in this Hackweek project, to form the foundation of a new approach to system configuration management that, by precisely understanding configuration files, offer an intuitive UI for user to graphically guide user through configuration of common internet services. The project is of course too large to fit into a single hackweek, but the foundation work will be carried out through this hackweek.

WIP code repository is located at:


  • michals
    almost 4 years ago by michals | Reply

    related project

  • joachimwerner
    almost 4 years ago by joachimwerner | Reply

    How does your approach compare to what Augeas tries to achieve?

    • guohouzuo
      almost 4 years ago by guohouzuo | Reply

      Augeas uses regular expression extensively. Regular expressions cannot properly understand complicated configuration file syntax, and easily produces content with broken syntax. This is how both Yast and Augeas make experienced administrators feel stupid.

Similar Projects

This project is one of its kind!