Files
euri-iso/docs/launcher.md
T
c-ludenberg 442980a7af feat: dinit or die
why the FUCK did i think making an init selector was a good idea
artix themselves dont even ship services in their online installer
they just give you a bare system and say "figure it out" and
it WORKS because people can just install their init of choice
afterwards. but nooooo i had to be clever and build a whole
netinstall-add monstrosity with openrc/runit/s6 service groups
that broke constantly because basestrap --overwrite is a lie
and init packages conflict with each other and sddm-openrc +
lightdm-openrc both Provide: init-displaymanager and pacman
just goes 🖕 during install.

so anyway. dinit only now. you want something else? read
changing-init.md, i literally copied the artix wiki tutorial.
i am not maintaining four init service groups in netinstall.yaml
for the rest of my life. this is my villain origin story.

actual changes:
- ripped out offline calamares mode (was never truly offline)
- ripped out packagechooser.conf (good fucking riddance)
- added packagechooser_dm.conf so you can at least pick your DM
- added BYODE offline installer (bare system + btrfs + snapper,
  no DE, you pacman -Sy plasma-meta yourself)
- added yay + snapper + btrfs-progs to rootfs
- shoved Init Services + DM groups into netinstall.yaml (dinit
  only, obviously)
- updated every markdown file that mentioned another init like
  they were cursed (they were)
- wrote changing-init.md so i can just paste the link next time
  someone asks
- X-KDE-IsAdminApplication=true so KDE stops acting like
  calamares is a virus (its not, its just desperate)
2026-07-16 21:55:05 +02:00

1.9 KiB

title, layout, nav_order
title layout nav_order
Launcher default 10

Calamares Launcher

The calamares-next script (calamares-next.sh) handles the installer boot flow. It's installed by calamares-branding-antergos-next to /usr/bin/calamares-next.

Boot flow

  1. Notice — explains why the so-called "Offline Install" was removed (it wasn't actually offline)
  2. Welcome — branded splash screen with an "Install" button
  3. Configuration — copies calamares-online/settings.conf to /etc/calamares/settings.conf
  4. Launch — runs calamares with the online config

Desktop entry

/usr/share/applications/calamares.desktop in the live-overlay launches with:

Exec=sudo -E calamares-next

sudo -E preserves environment variables (WAYLAND_DISPLAY, XDG_CURRENT_DESKTOP, etc.) when launched from the SDDM session. Without it, Calamares may not detect the display server correctly.

Installer flow

The launcher shows a YAD info notice explaining the removal of the offline mode, then presents a branded splash with a single "Install" button. Calamares launches in online mode with the DE selector.

Config switching

SetConfig() in calamares-next.sh:

  1. rm -f the existing settings file at /etc/calamares/settings.conf
  2. cp the online settings file to /etc/calamares/settings.conf
  3. Calamares reads the config on launch

Hiding "Install Artix"

The live-overlay includes calamares-config-switcher.desktop with NoDisplay=true. This hides the upstream Artix "Install Artix Linux" desktop entry while keeping the binary available for other uses.

Module configs

Configs live in live-overlay/etc/calamares-online/modules/:

  • packagechooser_dm.conf — display manager selector using method: netinstall-select
  • initcpiocfg.conf — mkinitcpio configuration
  • services-artix.conf — service enablement via artix-service