The git repository for this section can be found here
To get more information about the used framework look here
To give you a short description:
Calamares is a distribution independent installer framework that makes it easy and simple to extend and customize for your distribution.
What does that mean for us?
We use Calamares to provide an easy installation.
However other ways of installing
We also provide a
installer-backend for people who want to install tos across many systems.
The git repo for this can be found here
This article will mainly cover
Everything you need to know about the
installer-backend can be found in that repository or on its own wiki
As described above we mainly use the
To build it we recommend you to look at the
PKGBUILD file added in the repository.
As the install procedure is quite complex.
We also recommend that you run
makepkg to build the package and run
pacman -U *.pkg.tar.* followed with
to test your builds.
Here is a quick script on how your flow should work
makepkg # compile calamares pacman -U installer*.pkg.tar.* calamares pacman -Rns installer
Don't forget to edit the
sourcearray in the
PKGBUILDfile to point towards your repository instead of the git repo in TOS
The line we are talking about is
You should change it to this
The default pacstrap command (provided by arch) errors out when
/proc is already mounted in the
calamares does this when mounting your hard drive.
pacstrap command takes the actions of
calamares into consideration.
This file describes the default behaviour of Calamares.
It describes to flow of the program in a
IF you are adding new modules you shouldn't forget to add then to this file or otherwise they will not be executed.
This entire directory describes how the UI should look.
Here is an example configuration of said branding directory with more information
Calamares works with a lot of modules that each do something specific.
For example install and configure the bootloader.
Install packages and more.
Here is a list of all possible modules.
The file you should need to edit
This file contains all information on which package to install or remove.
install array contains packages that must be installed
try_remove array contains packages that are present in the live iso but should be removed from the final product (eg installer software)
We also have a small
shell script that cleans the final install of
You can find the script here