Skip to content

Merge config formats [deps: #165, #171, #172]

Lyndon Brown requested to merge jnqnfe/live-build:merge_config_formats into master

the primary change here:


config: revert partial format conversion

back in v4.0~a6-1 a transition process was started to move the live-build config to a new format. the new format was INI style, and required parsing functions to read/write values, compared to the existing format which was just shell script code setting variables.

this partial transition is the explanation for the existence of the New_configuration() function, and understanding this is important to understanding the purpose of it - it is not in fact intended for creating a new configuration, it is just related to the new config format transition.

the positives of the new format were that it was somewhat cleaner looking, while the negative was the terrible relative efficiency.

the file config/build was created to hold options in this new format.

the transition was only ever completed for a handful of config options:

  • architecture
  • archive areas and parent archive areas
  • live image name
  • live image type

a 'configuration version' attribute was also saved, which is not used by anything.

the bootstrap-mirror and parent-bootstrap-mirror attributes are pointlessly stored in it seemingly resulting from work done in v4.0~a17-1. (they are also stored in another config file from which the value is actually used).

it in fact seems to have been a source of confusion for Raphaël in authoring 44b9b0a6, since the new [parent]-distribution-{chroot|binary} options it introduced were stored both in config/bootstrap and in config/build, while only used from the former. i expect, understandably, that he thought that config/build was just an information file.


there is no impact on compatibility with respect to use of options and auto files of course, but there is partial breakage of existing saved config files, but worth it to clear up this mess imo.

Edited by Lyndon Brown

Merge request reports

Loading