From 9a63b5d17a27272e7f44e1bb6db5e9e9a22cb100 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82?= Date: Mon, 17 Aug 2026 20:17:40 +0200 Subject: [PATCH] fix(calamares): enable all DMs in services-artix, clarify both config dirs are online services-artix.conf enabled only sddm + greetd, so LY/LightDM/LXDM were installed but never service-enabled -> TTY at boot instead of login screen. Enable the full DM set (artix-service only activates the installed one). Docs: the live-overlay calamares/ and calamares-online/ dirs both serve the online installer; there is no offline Calamares config. settings_offline.conf shipped by the branding package is unused - the launcher always overwrites it. --- docs/development.md | 2 +- docs/installer.md | 8 ++++---- docs/launcher.md | 2 +- docs/overlay-live.md | 18 ++++++++++-------- docs/packages.md | 4 ++-- .../modules/services-artix.conf | 6 ++++++ .../etc/calamares/modules/services-artix.conf | 6 ++++++ 7 files changed, 30 insertions(+), 16 deletions(-) diff --git a/docs/development.md b/docs/development.md index 50c5da8..6bb7806 100644 --- a/docs/development.md +++ b/docs/development.md @@ -74,7 +74,7 @@ If `$COMPRESSION` is unset in `profile.yaml`, `mksquashfs` produces a sparse zer ### Calamares module precedence -`/etc/calamares/modules/` overrides `/usr/share/calamares/modules/`. The `calamares-next` launcher copies the online settings file to `/etc/calamares/settings.conf`, and the `modules-search: [ local ]` directive in that file resolves modules from `/etc/calamares/modules/`. Module configs placed in `calamares-online/modules/` are not used directly during installation — only `calamares/modules/` is consulted. +`/etc/calamares/modules/` overrides `/usr/share/calamares/modules/`. The `calamares-next` launcher copies the online settings file to `/etc/calamares/settings.conf`, and the `modules-search: [ local ]` directive in that file resolves modules from `/etc/calamares/modules/`. Both `calamares/modules/` and `calamares-online/modules/` in the live-overlay are for the **online** installer — there is no offline Calamares config. Module configs placed in `calamares-online/modules/` are not loaded directly during installation — only `calamares/modules/` is consulted at runtime; the `calamares-online/modules/` tree is the self-contained companion copy. ### GRUB config overwrite must be enabled diff --git a/docs/installer.md b/docs/installer.md index 267073f..9cdf360 100644 --- a/docs/installer.md +++ b/docs/installer.md @@ -61,11 +61,11 @@ The selector uses `method: netinstall-add` — the chosen DE's package group is | Desktop | Repo | Type | Notes | |---------|------|------|-------| -| **KDE Plasma** | world | Full DE | Default. Wayland + X11. Listed as individual packages in the active config; the reference copy in `calamares-online/modules/` uses the `plasma` meta-group + `antergos-next-desktop-settings` | -| **Xfce** | galaxy | Full DE | Lightweight. GTK-based. Individual packages; reference copy uses `xfce4` group | +| **KDE Plasma** | world | Full DE | Default. Wayland + X11. Listed as individual packages in the active config; the companion copy in `calamares-online/modules/` uses the `plasma` meta-group + `antergos-next-desktop-settings` | +| **Xfce** | galaxy | Full DE | Lightweight. GTK-based. Individual packages; companion copy uses `xfce4` group | | **Cinnamon** | galaxy | Full DE | Traditional layout. GNOME-based | -| **MATE** | galaxy | Full DE | GNOME 2 continuation. Individual packages; reference copy uses `mate` + `mate-extra` | -| **LXQt** | galaxy | Full DE | Lightweight Qt desktop. Individual packages; reference copy uses `lxqt` group | +| **MATE** | galaxy | Full DE | GNOME 2 continuation. Individual packages; companion copy uses `mate` + `mate-extra` | +| **LXQt** | galaxy | Full DE | Lightweight Qt desktop. Individual packages; companion copy uses `lxqt` group | | **i3** | world | Tiling WM | Keyboard-driven. Individual packages (i3-wm, i3blocks, i3lock, i3status). Requires `antergos-i3-config` for a usable experience | | **Sway** | world | Tiling WM | i3-compatible Wayland compositor. Requires `antergos-sway-config` | | **Hyprland** | world | Tiling WM | Dynamic Wayland compositor with eye candy. Requires `antergos-hyprland-config` | diff --git a/docs/launcher.md b/docs/launcher.md index e839ccc..148903d 100644 --- a/docs/launcher.md +++ b/docs/launcher.md @@ -26,7 +26,7 @@ Both use `sudo -E`, which preserves environment variables (`WAYLAND_DISPLAY`, `X ## Module config resolution -The online settings file specifies `modules-search: [ local ]`, which resolves to the directory containing the settings file itself. After `SetConfig()` copies the file to `/etc/calamares/settings.conf`, modules are loaded from `/etc/calamares/modules/`. The `calamares-online/modules/` directory in the live-overlay is not used as a module source during installation — its contents exist only as a reference; the active module configs are those under `calamares/modules/`. +The online settings file specifies `modules-search: [ local ]`, which resolves to the directory containing the settings file itself. After `SetConfig()` copies the file to `/etc/calamares/settings.conf`, modules are loaded from `/etc/calamares/modules/`. Both `calamares/modules/` and `calamares-online/modules/` in the live-overlay belong to the **online** installer — there is no offline Calamares config. The active module configs at runtime are those under `calamares/modules/`; the `calamares-online/modules/` tree is the self-contained companion copy for the online flow. ## Calamares sequence diff --git a/docs/overlay-live.md b/docs/overlay-live.md index 3af5cac..9e57f71 100644 --- a/docs/overlay-live.md +++ b/docs/overlay-live.md @@ -15,7 +15,7 @@ Files in `iso-profiles/antergos/live-overlay/` exist only in the live environmen live-overlay/ ├── etc/ │ ├── calamares/ -│ │ └── modules/ # Active runtime module configs +│ │ └── modules/ # Active runtime module configs (online installer) │ │ ├── basestrap.conf # Package installation (operations incl. antergos-release) │ │ ├── bootloader.conf │ │ ├── displaymanager.conf # DM selector backend @@ -30,7 +30,7 @@ live-overlay/ │ │ └── services-artix.conf │ ├── calamares-online/ │ │ ├── settings.conf # Online install sequence -│ │ └── modules/ # Online flow modules (reference + extra) +│ │ └── modules/ # Companion module copies (kept in sync) │ │ ├── packagechooser_de.conf / packagechooser_dm.conf │ │ ├── initcpio.conf / locale.conf / mount.conf / partition.conf │ │ ├── umount.conf / users.conf / welcome.conf @@ -58,6 +58,13 @@ live-overlay/ ## Key files +### `etc/calamares/` and `etc/calamares-online/` — both online + +Both directories serve the **online** installer. There is no offline Calamares config in this overlay (and no offline Calamares mode at all — see [Installer](installer)). + +- `etc/calamares/modules/` — the active module configs at runtime. After `calamares-next.sh` copies `calamares-online/settings.conf` to `/etc/calamares/settings.conf`, the `modules-search: [ local ]` directive resolves modules from this directory. +- `etc/calamares-online/` — the online install sequence (`settings.conf`) plus its own `modules/` tree. The two module trees are kept in sync; the `calamares-online/modules/` copies exist so the online flow has a self-contained config source. The copies under `calamares/modules/` are what actually loads at runtime. + ### `etc/calamares-online/settings.conf` The online install sequence. Defines two `packagechooser` instances: @@ -67,12 +74,7 @@ The online install sequence. Defines two `packagechooser` instances: The `modules-search: [ local ]` directive resolves module configs from the same directory as the settings file (`/etc/calamares/modules/`). -> There is **no** `settings.conf` at `etc/calamares/` in this overlay. The `/etc/calamares/settings.conf` on a live system is a symlink installed by the `calamares-branding-antergos-next` package (`ln -sf ../calamares-offline/settings.conf`), and `calamares-next.sh` swaps it to the online config at runtime. - -### `etc/calamares/modules/` vs `etc/calamares-online/modules/` - -- `calamares/modules/` — active module configs at runtime. The settings file resolves modules from this directory after being copied to `/etc/calamares/`. -- `calamares-online/modules/` — reference copies and additional modules (e.g. `partition.conf`, `mount.conf`) that are used during the online install flow. These are not loaded directly but serve as the source of truth for the install sequence. +> There is **no** `settings.conf` at `etc/calamares/` in this overlay. The `/etc/calamares/settings.conf` on a live system is a symlink installed by the `calamares-branding-antergos-next` package (`ln -sf ../calamares-offline/settings.conf`), and `calamares-next.sh` swaps it to the online config at runtime. The `calamares-offline` fallback is unused — the launcher always overwrites the symlink with the online config. ### `etc/calamares/modules/basestrap.conf` diff --git a/docs/packages.md b/docs/packages.md index f261b95..2624488 100644 --- a/docs/packages.md +++ b/docs/packages.md @@ -57,8 +57,8 @@ Built and published in this order (from `packages.yaml` in `antergos-packages`): ### calamares-branding-antergos-next - Ships `calamares-next.sh` — installed as `/usr/bin/calamares-next`, the online installer launcher -- Ships both settings files: `/etc/calamares-offline/settings.conf` and `/etc/calamares-online/settings.conf`. `/etc/calamares/settings.conf` is a symlink to the offline one by default; the launcher's `SetConfig()` replaces it with the online config at runtime -- Ships module configs to `/etc/calamares/modules/`: `unpackfs.conf`, `initcpiocfg.conf`, `initcpio.conf`, `netinstall.conf`, `netinstall.yaml`, `packagechooser_de.conf`, `packagechooser_dm.conf`, `welcome.conf` +- Ships the online settings file as `/etc/calamares-online/settings.conf`. It also ships an `settings_offline.conf` installed as `/etc/calamares-offline/settings.conf` (with `/etc/calamares/settings.conf` symlinked to it by default) — but this is **unused**: the launcher's `SetConfig()` always replaces it with the online config at runtime. Calamares is online-only. +- Ships module configs to `/etc/calamares/modules/`: `unpackfs.conf`, `initcpiocfg.conf`, `initcpio.conf`, `netinstall.conf`, `netinstall.yaml`, `packagechooser_de.conf`, `packagechooser_dm.conf`, `services-artix.conf`, `welcome.conf` - Also overwrites `/usr/share/calamares/branding/default/` so the Artix default branding can't sneak in - `SetConfig()` must `rm -f` the symlink at `/etc/calamares/settings.conf` before copying, otherwise `cp` follows the symlink and overwrites the wrong file diff --git a/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/services-artix.conf b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/services-artix.conf index 492e2cd..e4b10d2 100644 --- a/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/services-artix.conf +++ b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/services-artix.conf @@ -20,6 +20,12 @@ services: action: "enable" - name: "sddm" action: "enable" + - name: "lightdm" + action: "enable" + - name: "lxdm" + action: "enable" + - name: "ly" + action: "enable" - name: "greetd" action: "enable" - name: "ntpd" diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/services-artix.conf b/iso-profiles/antergos/live-overlay/etc/calamares/modules/services-artix.conf index 05798cc..80c908c 100644 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/services-artix.conf +++ b/iso-profiles/antergos/live-overlay/etc/calamares/modules/services-artix.conf @@ -20,6 +20,12 @@ services: action: "enable" - name: "sddm" action: "enable" + - name: "lightdm" + action: "enable" + - name: "lxdm" + action: "enable" + - name: "ly" + action: "enable" - name: "greetd" action: "enable" - name: "ntpd"