(Advanced Guide) Hacking into RebornOS Calamares Installer
Warning: Modifying the configuration files of Calamares may result in a broken installer, or worse, result in loss of important data from your computer. Do not proceed with this unless you know what you are doing and take full responsibility for the ensuing consequences.
If you are an advanced user who is familiar with Calamares’ configuration files and if you want to modify our installer slightly to get a custom install, you can find the appropriate files in /etc/calamares:
The settings.conf file is just a dummy that will be replaced by either
settings_online.conf or settings_offline.conf when you either click on icons to launch Calamares or when you use the Welcome app to launch it.
Module-specific configuration files are found in the modules directory:
Here is a primer on the directory organization:
- The file
settings.confis a dummy that is replaced with eithersettings_online.conforsettings_offline.confdepending on which icon is clicked either on the desktop or on the Welcome app. - The files
settings_online.confandsettings_offline.confare deliberately analogous line by line. They just have different parts commented out to differentiate them from each other (and minor switches between offline-online words). This helps us keep both up to date when we make changes in one of them. - The
branding,modulesandqmldirectories are the ones used by Calamares. The rest are custom ones:- The
developmentdirectory is an area to keep source images or test code that will not end up in the configuration package. It is not used by the installer. - The
imagesdirectory will be copied to/etc/calamaresfor any modules to use. The files here are referenced by file path within various module-specific .conf files and within the python post-install script. - The
scriptsdirectory contains optional convenience scripts that will not be in the package and don’t need to be used. This is not used by the installer. - The
local_packagesdirectory contains packages meant for the offline installation. Currently it only has our customized grub theme. This is used by the python post-install script. - The
post_installdirectory has a Python based post-install script (which logs at/var/log/post_install.login the target installation) that performs any desktop-specific or package-specific configuration after install, and also copies therootfsdirectory to the final destination paths on the target installed system. If this post_install script works well for many different things, we might make it into a Calamares module for the upstream Calamares repository.
- The
- Each .conf file in the
modulesdirectory has a URL at the top for reference. These URLs lead to the upstream .conf files in the Calamares git repository - Our Calamares is regularly updated to the latest git version so that we get all the bug fixes and features. But we don’t directly use the upstream git version. We fork it to ensure that there is no outstanding breakage that makes the installer unusable.

