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)
51 lines
1.9 KiB
Markdown
51 lines
1.9 KiB
Markdown
---
|
|
title: Launcher
|
|
layout: default
|
|
nav_order: 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`
|