# \[Guide\] \[Advanced\] Hacking into the RebornOS Calamares Installer

**URL:** <https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799>\
**Category:** FAQ and Tutorials\
**Tags:** installer, calamares\
**Created:** [August 13, 2022, 7:25am UTC](https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799 "2022-08-13T07:25:02Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![shivanandvp](https://yyz2.discourse-cdn.com/free1/user_avatar/rebornos.discourse.group/shivanandvp/32/10_2.png) [@shivanandvp](https://rebornos.discourse.group/u/shivanandvp)\
**Post date:** [August 13, 2022, 7:25am UTC](https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799/1 "2022-08-13T07:25:02Z")

</div>

# (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`:

 ![A001](https://global.discourse-cdn.com/free1/uploads/rebornos/original/1X/dc44232bd1c5d5912550d4694cd170de68202438.png)  
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:

 ![A002](https://global.discourse-cdn.com/free1/uploads/rebornos/original/1X/8d1ed9560b2934e917b70e4422a4570781fad225.png)

Here is a primer on the directory organization:

- The file `settings.conf` is a dummy that is replaced with either `settings_online.conf` or `settings_offline.conf` depending on which icon is clicked either on the desktop or on the Welcome app.
- The files `settings_online.conf` and `settings_offline.conf` are 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`, `modules` and `qml` directories are the ones used by Calamares. The rest are custom ones:
  - The `development` directory 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 `images` directory will be copied to `/etc/calamares` for 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 `scripts` directory 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_packages` directory 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_install` directory has a Python based post-install script (which logs at `/var/log/post_install.log` in the target installation) that performs any desktop-specific or package-specific configuration after install, and also copies the `rootfs` directory 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.

- Each _.conf_ file in the `modules` directory 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.

---

<div class="post-metadata">

**Author:** ![shivanandvp](https://yyz2.discourse-cdn.com/free1/user_avatar/rebornos.discourse.group/shivanandvp/32/10_2.png) [@shivanandvp](https://rebornos.discourse.group/u/shivanandvp)\
**Post date:** [August 13, 2022, 7:25am UTC](https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799/2 "2022-08-13T07:25:08Z")

</div>



---

<div class="post-metadata">

**Author:** ![shivanandvp](https://yyz2.discourse-cdn.com/free1/user_avatar/rebornos.discourse.group/shivanandvp/32/10_2.png) [@shivanandvp](https://rebornos.discourse.group/u/shivanandvp)\
**Post date:** [August 14, 2022, 11:41am UTC](https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799/3 "2022-08-14T11:41:24Z")

</div>



---

<div class="post-metadata">

**Author:** ![shivanandvp](https://yyz2.discourse-cdn.com/free1/user_avatar/rebornos.discourse.group/shivanandvp/32/10_2.png) [@shivanandvp](https://rebornos.discourse.group/u/shivanandvp)\
**Post date:** [August 17, 2022, 8:27pm UTC](https://rebornos.discourse.group/t/guide-advanced-hacking-into-the-rebornos-calamares-installer/799/4 "2022-08-17T20:27:54Z")

</div>


