Calamares Integration
Calamares is used for package-based installation. It partitions and mounts the target disk, then DevelOS runs pacstrap with the same installed-system package manifest used by the CLI installer.
Package Flow
Calamares is installed only into the live ISO through archiso/packages.live.x86_64. It should stay out of archiso/packages.installed.x86_64 so live-only installer tools are not installed onto the final system.
Package Build Hook
scripts/build-packages.sh builds all local DevelOS packages. For develos-installer, it copies archiso/packages.installed.x86_64 into usr/share/develos/packages.installed.x86_64 so Calamares and the CLI installer share one installed package list.
Main Config Package
packages/develos-calamares-config/ owns the DevelOS Calamares config, helper script, branding, and live-user polkit rule. The install hook copies config from /usr/share/develos/calamares/etc/calamares/ into /etc/calamares/.
Install Sequence
settings.conf defines the flow: partition, mount, shellprocess, machineid, fstab, locale, keyboard, localecfg, users, displaymanager, networkcfg, hwclock, and umount. There is no unpackfs step because DevelOS installs packages instead of copying the live ISO squashfs.
Pacstrap Helper
/usr/lib/develos/calamares-pacstrap is called by theshellprocess module. It reads the installed package manifest, runs pacstrap -K, copies the local DevelOS repo and pacman config into the target, installs GRUB, and enables NetworkManager.service and ly@tty1.service.
Module Notes
bootloader.confdocuments GRUB/EFI behavior, though GRUB is currently installed by the helper.displaymanager.confpoints the installed system atly.locale.confsets the default region and timezone shown in the UI.partition.confcontrols partition UI behavior and uses/boot/efifor EFI.users.confsets default groups, includingwheel.
Branding And Polkit
Branding files live under the DevelOS Calamares branding directory and provide the installer name, colors, icon, logo, and slideshow. The polkit rule lets the live user devel run Calamares through pkexec without broadening access to arbitrary commands.
Testing
Phase 1 checks that the UI launches:
./scripts/build-iso.sh
./scripts/run-qemu.sh output/<iso-name>.iso
pkexec /usr/bin/calamaresPhase 2 performs a full install test:
./scripts/run-qemu-install.sh output/<iso-name>.iso vm/develos.qcow2