Anaconda sysconfig file
This specification aims to establish a configuration file format that can be used to configure post-installation tools. This configuration file is primarily meant to be read (and potentially changed) by post installation tools (such as for example Initial Setup and Gnome Initial setup).
Configuration file location
The Anaconda sysconfig file is stored in:
General configuration file syntax
The configuration file is based on the INI file de-facto standard, eq.: key=value assignments and square bracket framed section headers.
Comments start with a hash (#) sign and need to be on a separate line. Inline comments (eq. behind section or key/value definitions) are not supported.
For Python programs this file format can be parsed and written by the ConfigParser module available from the Python standard library. For programs written in C the GKeyFile parser might be a good choice. Comparable INI file parsing and writing modules are available for most other programming languages.
# comment example - before the section headers [section_1] # comment example - inside section 1 key_a_in_section1=some_value key_b_in_section1=some_value [section_2] # comment example - inside section 2 key_a_in_section2=some_value
Boolean values are marked with 1 for true and 0 for false.
The toplevel configuration file namespace can only contain section headers.
There is only one special section called General that can contain top-level settings not directly corresponding to any screen.
The General section
The General section is optional and is not required to be present in the config file.
At the moment it can contain only the
post_install_tools_disabled key corresponds to using the
firstboot --disable command
in the installation kickstart file. This requests that the post-installation setup tools be
skipped. If this key is present and set to 1, any post-installation tools that parse the Anaconda
sysconfig file should first make sure the tool won’t be started again on next boot, and then
Full configuration file example
# This is the Anaconda sysconfig file. [General] post_install_tools_disabled=0
The specified section is the special section for top-level settings called General. It contains
only one option,
post_install_tools_disabled, which is in this case equal to 0 This means
that post installation setup tools should proceed as usual. In this case (being equal to 0) the
post_install_tools_disabled key and the whole General section might also be omitted.
Parsing and writing of the configuration file by tools other than Anaconda
Non-Anaconda system configuration tools should parse the Anaconda sysconfig file at startup and write it out once done. All valid data already present in the configuration file should be kept and updated accordingly.
Non-Anaconda tools should try to keep comments present in the input file, but this is not strictly required.
Also note that a variable number of tools might be working with the configuration file in sequence, so no single tool should expect that it is the first or last tool working with the configuration file.