diff --git a/docs/installer.md b/docs/installer.md index e46ad5c..36cad4f 100644 --- a/docs/installer.md +++ b/docs/installer.md @@ -12,6 +12,8 @@ Antergos NeXT uses [Calamares](https://codeberg.org/calamares/calamares) as its Online-only (since v2026.07.16). The so-called "Offline Install" was removed — it was never truly offline: the rootfs only contained live session essentials, and all DE packages were still downloaded via basestrap. All installs now use the full netinstall flow with desktop selection. +A BYODE (Bring Your Own Desktop Environment) offline installer is still available for users who want a bare system installed from the ISO. See [BYODE](../byode). + ## Fixed issues ### Audio on installed systems @@ -43,31 +45,55 @@ The `filesystem` package from Artix owns `/usr/lib/os-release`. Our `antergos-re Antergos NeXT ships **Dinit** only. Other init systems (OpenRC, Runit, S6) are available in the Artix repos but are not offered as install-time options. See [Changing init on an installed system](changing-init) for instructions if you need a different init. -## Desktop selector (online) +## Desktop selector -Users choose from: **Plasma**, **Xfce**, **Cinnamon**, **MATE**, **LXQt**, **i3**, **Sway**, **Hyprland**, **COSMIC**, or **No Desktop**. +The install flow begins with a dedicated desktop environment picker (`packagechooser@de`) before the package selection tree. This replaces the old netinstall-based "Desktop" group that installed all DEs when the parent checkbox was clicked. -Implemented as a separate `packagechooser` instance with `method: legacy`. "No Desktop" installs only the base system (TTY/login — no DE, no display manager). +The selector uses `method: netinstall-add` — the chosen DE's package group is dynamically added to the netinstall tree. This means users can still refine their DE packages in the subsequent netinstall step, seeing only their selected DE rather than all available options. -## Available desktops +| Step | Module | Description | +|------|--------|-------------| +| 1 | `packagechooser@de` | Pick one DE (required, default: Plasma) | +| 2 | `packagechooser@dm` | Pick a display manager (required, default: SDDM) | +| 3 | `netinstall` | Refine package selection, add optional groups | -| Desktop | Artix Repo | Group/Packages | Notes | -|---------|------------|----------------|-------| -| Plasma | world | `plasma` group | Default. Wayland + X11. Includes Discover | -| Xfce | galaxy | `xfce4` group | | -| Cinnamon | galaxy | Individual packages | | -| MATE | galaxy | `mate` + `mate-extra` | | -| LXQt | galaxy | `lxqt` group | | -| i3 | world | `i3` group | Tiling WM | -| Sway | world | `sway` + related | Wayland-native tiling | -| Hyprland | world | `hyprland` | Wayland compositor | -| COSMIC | galaxy | `cosmic` group | Rust/Wayland. Uses greetd. Alpha quality | +### Available desktops -## Not available +| Desktop | Repo | Type | Notes | +|---------|------|------|-------| +| **KDE Plasma** | world | Full DE | Default. Wayland + X11. Uses the `plasma` group with antergos-next-desktop-settings | +| **Xfce** | galaxy | Full DE | Lightweight. GTK-based. Uses `xfce4` group | +| **Cinnamon** | galaxy | Full DE | Traditional layout. GNOME-based | +| **MATE** | galaxy | Full DE | GNOME 2 continuation. Uses `mate` + `mate-extra` | +| **LXQt** | galaxy | Full DE | Lightweight Qt desktop. Uses `lxqt` group | +| **i3** | world | Tiling WM | Keyboard-driven. Ships `i3` group (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` | +| **COSMIC** | galaxy | Full DE | Rust-based desktop from System76. Alpha quality. Select **greetd** as display manager | + +### Not available - **Budgie** — not in any Artix repo (system, world, galaxy, lib32). Slideshow entries removed. - **GNOME** — dropped non-systemd support upstream. "You really think you can get GNOME here?" +### Tiling WMs and default configs + +i3, Sway, and Hyprland are offered as install options but will present a black screen on first boot without a configuration file. Config packages (`antergos-i3-config`, `antergos-sway-config`, `antergos-hyprland-config`) are available from the `[antergos-pkgs]` repository and are automatically included when the corresponding DE is selected. + +If you prefer to supply your own config, you can deselect the config package in the netinstall refinement step. + +## Display manager selector + +The DM selector (`packagechooser@dm`) uses `method: netinstall-select`. Available options: + +- **SDDM** — KDE's QML-based display manager (default). Ships with `pixie-sddm-git` theme. +- **LightDM** — GTK-based, cross-desktop +- **LXDM** — Lightweight (LXDE) +- **greetd** — Minimal, recommended for COSMIC +- **LY** — TUI-based, minimal + +The selected DM's group is marked as checked in the netinstall tree automatically. + ## Branding Custom branding lives in the `calamares-branding-antergos-next` package, installed to `/etc/calamares/branding/default/`. The `componentName` in `branding.desc` must match its directory name — this is enforced by Calamares (see `Branding.cpp`). @@ -84,6 +110,48 @@ The Artix `grub` package ships its own default `/etc/default/grub`. Because this The `bootloader` module auto-detects the GRUB target architecture using the system's EFI bitness and CPU type. For UEFI x86_64, it installs with `--target=x86_64-efi`. For Legacy BIOS boots, it falls back to `--target=i386-pc`. There is no configuration key to override this — a system booted in BIOS mode will always receive an i386-pc bootloader. +## Installation flow + +The full Calamares sequence is defined in `live-overlay/etc/calamares-online/settings.conf`: + +**Show phase:** +1. `welcome` — branding and language +2. `locale` — timezone, locale +3. `keyboard` — keyboard layout +4. `packagechooser@de` — desktop environment selection +5. `packagechooser@dm` — display manager selection +6. `netinstall` — package refinement, optional groups +7. `partition` — disk partitioning +8. `users` — user account creation +9. `summary` — confirmation + +**Exec phase:** +10. `partition` — write partitions +11. `mount` — mount target +12. `basestrap` — bootstrap base system +13. `machineid` — generate machine ID +14. `packages` — install all selected packages (DE, DM, optional groups) +15. `fstab` — generate fstab +16. `locale` — apply locale +17. `keyboard` — apply keyboard config +18. `localecfg` — locale configuration +19. `luksopenswaphookcfg` — LUKS config +20. `luksbootkeyfile` — LUKS boot key +21. `initcpiocfg` — mkinitcpio config +22. `initcpio` — generate initramfs +23. `users` — create user +24. `displaymanager` — configure SDDM/greetd/etc. +25. `networkcfg` — network configuration +26. `hwclock` — hardware clock +27. `services-artix` — enable dinit services +28. `grubcfg` — write GRUB defaults +29. `bootloader` — install GRUB +30. `postcfg` — post-install configuration +31. `umount` — unmount and finish + +**Show phase:** +32. `finished` — reboot prompt + ## Launcher The `calamares-next` script (`/usr/bin/calamares-next`) handles the installer boot flow: diff --git a/docs/launcher.md b/docs/launcher.md index e659ffe..d597718 100644 --- a/docs/launcher.md +++ b/docs/launcher.md @@ -29,14 +29,30 @@ Exec=sudo -E calamares-next 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/`. +## Calamares sequence + +The installer runs two `packagechooser` instances in sequence, followed by the `netinstall` module: + +| Step | Instance | Module Config | Method | Purpose | +|------|----------|---------------|--------|---------| +| 4 | `packagechooser@de` | `packagechooser_de.conf` | `netinstall-add` | Desktop environment picker (required, default Plasma) | +| 5 | `packagechooser@dm` | `packagechooser_dm.conf` | `netinstall-select` | Display manager picker (required, default SDDM) | +| 6 | `netinstall` | `netinstall.yaml` | — | Refine packages, add optional groups | + +### How `netinstall-add` works + +When the user selects a DE, `packagechooser@de` writes a group definition to the `netinstallAdd` global storage key. When the `netinstall` module loads, it reads this key and appends the DE's package group to the tree. This allows users to see and refine the packages for their chosen DE — for example, deselecting specific applications. + +The DM selector uses `netinstall-select`, which marks the chosen DM group (e.g. SDDM) as checked in the netinstall tree. Both keys are read by the netinstall module's `onActivate()` method at runtime. See `NetInstallPage.cpp` in the Calamares source for details. + +### Available DE groups + +Each DE item in `packagechooser_de.conf` includes a `netinstall:` field with its full package list. The groups are mutually exclusive — selecting a new DE replaces the previously selected one in the netinstall tree. Once added, the group behaves identically to a group defined in `netinstall.yaml`: users can expand it, toggle subgroups, or remove individual packages. + ## Pacman log capture During installation, the launcher polls for the existence of a pacman log file within the chroot (at `/tmp/calamares-root-*/var/log/pacman.log`). When detected, a copy is written to `~/pacman-install.log`. No terminal windows are opened to display installation progress. -## 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 desktop environment selector. - ## Config switching `SetConfig()` in `calamares-next.sh`: @@ -53,6 +69,7 @@ The live-overlay includes `calamares-config-switcher.desktop` with `NoDisplay=tr Configs live in `live-overlay/etc/calamares/modules/`: +- `packagechooser_de.conf` — desktop environment selector using `method: netinstall-add` - `packagechooser_dm.conf` — display manager selector using `method: netinstall-select` - `initcpiocfg.conf` — mkinitcpio configuration - `services-artix.conf` — service enablement via `artix-service` diff --git a/docs/overlay-live.md b/docs/overlay-live.md index f81ff69..cd87d7c 100644 --- a/docs/overlay-live.md +++ b/docs/overlay-live.md @@ -17,11 +17,18 @@ live-overlay/ │ ├── calamares/ │ │ └── settings.conf # Replaced at runtime by online config │ ├── calamares-online/ -│ │ ├── settings.conf # Online install config (packagechooser) +│ │ ├── settings.conf # Online install config (two packagechooser instances) │ │ └── modules/ -│ │ ├── packagechooser_dm.conf # Display manager selector +│ │ ├── packagechooser_de.conf # Desktop environment selector +│ │ ├── packagechooser_dm.conf # Display manager selector │ │ ├── initcpiocfg.conf -│ │ └── ... +│ │ ├── initcpio.conf +│ │ ├── locale.conf +│ │ ├── mount.conf +│ │ ├── partition.conf +│ │ ├── umount.conf +│ │ ├── users.conf +│ │ └── welcome.conf │ └── sddm.conf.d/ │ └── kde_settings.conf # SDDM autologin + Wayland session └── usr/ @@ -39,16 +46,55 @@ Placeholder — replaced at runtime by `calamares-next.sh` which copies the onli ### `etc/calamares-online/settings.conf` -One `packagechooser` instance for DM selection (`packagechooser@dm`) using `netinstall-select`. +Defines two `packagechooser` instances: -### Offline config (archived) +- `packagechooser@de` — desktop environment selector using `method: netinstall-add`. Writes the selected DE's package group to the `netinstallAdd` global storage key. The DE group is dynamically appended to the netinstall tree when the netinstall module loads. +- `packagechooser@dm` — display manager selector using `method: netinstall-select`. Marks the chosen DM group as checked in the netinstall tree. -The offline install mode was removed in v2026.07.16 — it was never truly offline (all DE packages were still downloaded via basestrap). The configs are preserved at `iso-profiles/antergos/calamares-offline/` for reference. +The `modules-search: [ local ]` directive resolves module configs from the same directory as the settings file (`/etc/calamares/modules/`). + +### `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. ### `etc/calamares/modules/basestrap.conf` Controls package installation during bootstrapping. The `operations` list includes packages that must be installed with `--overwrite`. This is where `antergos-release` is listed to ensure it overwrites `/usr/lib/os-release` from the `filesystem` package. +### `etc/calamares-online/modules/*.conf` + +Additional modules required for the online install flow: + +| File | Purpose | +|------|---------| +| `initcpio.conf` | mkinitcpio generation | +| `initcpiocfg.conf` | mkinitcpio configuration | +| `locale.conf` | Locale and timezone | +| `mount.conf` | Filesystem mounting | +| `partition.conf` | Disk partitioning | +| `umount.conf` | Unmounting | +| `users.conf` | User creation | +| `welcome.conf` | Welcome page | + ### `usr/share/applications/calamares-config-switcher.desktop` Has `NoDisplay=true` to hide it from the app menu. The upstream Artix "Install Artix Linux" entry is suppressed this way while keeping the binary available. + +## Module configs removed + +The following files were removed during the transition away from the init system selector: + +- `packagechooser.conf` — the old init system selector (dinit/openrc/runit/s6). Replaced by `packagechooser_de.conf` (DE selector). +- `images/` — SVG icons for init systems (dinit.svg, openrc.svg, runit.svg, s6.svg). No longer needed. + +These changes were made in the v2026.07.24 release cycle. + +## DE selector package lists + +The two copies of `packagechooser_de.conf` differ in their package granularity: + +- `calamares/modules/packagechooser_de.conf` — **explicit package lists** (e.g. all 44 Plasma packages listed individually). Users see the full list in the netinstall refinement step. +- `calamares-online/modules/packagechooser_de.conf` — **meta/group packages** (e.g. `plasma`, `xfce4`, `mate`). Simpler but less granular for refinement. + +Both use the same DE IDs and `method: netinstall-add`. The active copy at runtime is the one in `calamares/modules/`. diff --git a/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/netinstall.yaml b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/netinstall.yaml index 2d2d40e..a731469 100644 --- a/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/netinstall.yaml +++ b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/netinstall.yaml @@ -84,83 +84,7 @@ - oh-my-posh-bin - pacseek -- name: "Desktop" - description: "DE" - selected: true - critical: false - subgroups: - - name: "Plasma" - description: "KDE Plasma Desktop" - selected: true - packages: - - plasma - - ark - - dolphin - - ffmpegthumbs - - gwenview - - kate - - keditbookmarks - - kfind - - kgpg - - kio-admin - - konsole - - konversation - - kwalletmanager - - okular - - partitionmanager - - name: "Xfce" - description: "Xfce Desktop" - selected: false - packages: - - xfce4 - - xfce4-goodies - - name: "Cinnamon" - description: "Cinnamon Desktop" - selected: false - packages: - - cinnamon - - cinnamon-control-center - - cinnamon-desktop - - cinnamon-menus - - cinnamon-screensaver - - cinnamon-session - - cinnamon-settings-daemon - - cinnamon-translations - - name: "MATE" - description: "MATE Desktop" - selected: false - packages: - - mate - - mate-extra - - name: "LXQt" - description: "LXQt Desktop" - selected: false - packages: - - lxqt - - name: "i3" - description: "i3 Tiling WM" - selected: false - packages: - - i3 - - name: "Sway" - description: "Sway Wayland Compositor" - selected: false - packages: - - sway - - swaybg - - swayidle - - swaylock - - name: "Hyprland" - description: "Hyprland Wayland Compositor" - selected: false - packages: - - hyprland - - xdg-desktop-portal-hyprland - - name: "COSMIC" - description: "COSMIC Desktop (Rust/Wayland — select greetd as DM)" - selected: false - packages: - - cosmic + - name: "Init Services" description: "Essential dinit services" diff --git a/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/packagechooser_de.conf b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/packagechooser_de.conf new file mode 100644 index 0000000..b45f33a --- /dev/null +++ b/iso-profiles/antergos/live-overlay/etc/calamares-online/modules/packagechooser_de.conf @@ -0,0 +1,125 @@ +--- +mode: required +method: netinstall-add +labels: + step: "Desktop Environment" + step[de]: "Desktop-Umgebung" +default: Plasma +items: + - id: Plasma + name: "KDE Plasma" + description: "Full-featured modern desktop. The default Antergos NeXT experience." + screenshot: "" + netinstall: + name: "KDE Plasma" + selected: true + critical: false + packages: + - plasma + - ark + - dolphin + - ffmpegthumbs + - gwenview + - kate + - keditbookmarks + - kfind + - kgpg + - kio-admin + - konsole + - konversation + - kwalletmanager + - okular + - partitionmanager + - id: Xfce + name: "Xfce" + description: "Lightweight traditional desktop. Fast and low on resources." + screenshot: "" + netinstall: + name: "Xfce" + selected: true + critical: false + packages: + - xfce4 + - xfce4-goodies + - id: Cinnamon + name: "Cinnamon" + description: "Traditional desktop with modern features (GNOME-based)" + screenshot: "" + netinstall: + name: "Cinnamon" + selected: true + critical: false + packages: + - cinnamon + - cinnamon-control-center + - cinnamon-desktop + - cinnamon-menus + - cinnamon-screensaver + - cinnamon-session + - cinnamon-settings-daemon + - cinnamon-translations + - id: MATE + name: "MATE" + description: "Classic desktop — continuation of GNOME 2" + screenshot: "" + netinstall: + name: "MATE" + selected: true + critical: false + packages: + - mate + - mate-extra + - id: LXQt + name: "LXQt" + description: "Lightweight Qt-based desktop" + screenshot: "" + netinstall: + name: "LXQt" + selected: true + critical: false + packages: + - lxqt + - id: i3 + name: "i3" + description: "Minimal tiling window manager (keyboard-driven)" + screenshot: "" + netinstall: + name: "i3" + selected: true + critical: false + packages: + - i3 + - id: Sway + name: "Sway" + description: "i3-compatible Wayland compositor" + screenshot: "" + netinstall: + name: "Sway" + selected: true + critical: false + packages: + - sway + - swaybg + - swayidle + - swaylock + - id: Hyprland + name: "Hyprland" + description: "Dynamic tiling Wayland compositor with eye candy" + screenshot: "" + netinstall: + name: "Hyprland" + selected: true + critical: false + packages: + - hyprland + - xdg-desktop-portal-hyprland + - id: COSMIC + name: "COSMIC" + description: "Modern Rust-based desktop. Select greetd as DM." + screenshot: "" + netinstall: + name: "COSMIC" + selected: true + critical: false + packages: + - cosmic diff --git a/iso-profiles/antergos/live-overlay/etc/calamares-online/settings.conf b/iso-profiles/antergos/live-overlay/etc/calamares-online/settings.conf index 22fe94b..3875cc7 100644 --- a/iso-profiles/antergos/live-overlay/etc/calamares-online/settings.conf +++ b/iso-profiles/antergos/live-overlay/etc/calamares-online/settings.conf @@ -6,6 +6,7 @@ sequence: - welcome - locale - keyboard + - packagechooser@de - packagechooser@dm - netinstall - partition @@ -38,6 +39,9 @@ sequence: - finished instances: +- id: de + module: packagechooser + config: packagechooser_de.conf - id: dm module: packagechooser config: packagechooser_dm.conf diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/dinit.svg b/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/dinit.svg deleted file mode 100644 index 097570d..0000000 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/dinit.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/openrc.svg b/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/openrc.svg deleted file mode 100644 index 0440909..0000000 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/openrc.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/runit.svg b/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/runit.svg deleted file mode 100644 index e61bedf..0000000 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/runit.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/s6.svg b/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/s6.svg deleted file mode 100644 index 44767e9..0000000 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/images/s6.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/netinstall.yaml b/iso-profiles/antergos/live-overlay/etc/calamares/modules/netinstall.yaml index b4d7f42..d4d5d14 100644 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/netinstall.yaml +++ b/iso-profiles/antergos/live-overlay/etc/calamares/modules/netinstall.yaml @@ -115,187 +115,7 @@ - artools-iso - artools-pkg -- name: "Desktop" - description: "DE" - selected: true - critical: false - subgroups: - - name: "Plasma" - description: "KDE Plasma Desktop" - selected: false - packages: - - antergos-next-desktop-settings - - ark - - bluedevil - - breeze-gtk - - dolphin - - dolphin-plugins - - ffmpegthumbs - - gwenview - - kate - - kcalc - - kde-cli-tools - - kde-gtk-config - - kdeconnect - - kdegraphics-thumbnailers - - kdenetwork-filesharing - - kdeplasma-addons - - keditbookmarks - - kfind - - kgpg - - kinfocenter - - kio-admin - - kio-extras - - kio-fuse - - konsole - - konversation - - kscreen - - kwallet-pam - - kwalletmanager - - kwayland-integration - - okular - - partitionmanager - - plasma-browser-integration - - plasma-desktop - - plasma-disks - - plasma-nm - - plasma-pa - - plasma-systemmonitor - - plasma-workspace - - powerdevil - - print-manager - - qt6-imageformats - - spectacle - - xdg-desktop-portal-kde - - xsettingsd - - name: "Xfce" - description: "Xfce Desktop" - selected: false - packages: - - exo - - garcon - - thunar - - thunar-volman - - tumbler - - xfce4-appfinder - - xfce4-panel - - xfce4-power-manager - - xfce4-session - - xfce4-settings - - xfce4-terminal - - xfconf - - xfdesktop - - xfwm4 - - xfwm4-themes - - mousepad - - parole - - ristretto - - thunar-archive-plugin - - thunar-media-tags-plugin - - xfburn - - xfce4-clipman-plugin - - xfce4-notifyd - - xfce4-pulseaudio-plugin - - xfce4-screenshooter - - xfce4-screensaver - - xfce4-taskmanager - - xfce4-whiskermenu-plugin - - name: "Cinnamon" - description: "Cinnamon Desktop" - selected: false - packages: - - cinnamon - - cinnamon-control-center - - cinnamon-desktop - - cinnamon-menus - - cinnamon-screensaver - - cinnamon-session - - cinnamon-settings-daemon - - cinnamon-translations - - name: "MATE" - description: "MATE Desktop" - selected: false - packages: - - caja - - marco - - mate-backgrounds - - mate-control-center - - mate-desktop - - mate-icon-theme - - mate-menus - - mate-notification-daemon - - mate-panel - - mate-polkit - - mate-session-manager - - mate-settings-daemon - - mate-themes - - mate-user-guide - - atril - - eom - - mate-applets - - mate-calc - - mate-power-manager - - mate-screensaver - - mate-system-monitor - - mate-terminal - - mate-utils - - pluma - - name: "LXQt" - description: "LXQt Desktop" - selected: false - packages: - - lximage-qt - - lxqt-about - - lxqt-admin - - lxqt-archiver - - lxqt-config - - lxqt-globalkeys - - lxqt-menu-data - - lxqt-notificationd - - lxqt-openssh-askpass - - lxqt-panel - - lxqt-policykit - - lxqt-powermanagement - - lxqt-qtplugin - - lxqt-runner - - lxqt-session - - lxqt-sudo - - lxqt-themes - - obconf-qt - - openbox - - pavucontrol-qt - - pcmanfm-qt - - qps - - qterminal - - screengrab - - xdg-desktop-portal-lxqt - - name: "i3" - description: "i3 Tiling WM" - selected: false - packages: - - i3-wm - - i3blocks - - i3lock - - i3status - - name: "Sway" - description: "Sway Wayland Compositor" - selected: false - packages: - - sway - - swaybg - - swayidle - - swaylock - - name: "Hyprland" - description: "Hyprland Wayland Compositor" - selected: false - packages: - - hyprland - - xdg-desktop-portal-hyprland - - name: "COSMIC" - description: "COSMIC Desktop (Rust/Wayland — select greetd as DM)" - selected: false - packages: - - cosmic + - name: "SDDM" description: "SDDM display manager" diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser.conf b/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser.conf deleted file mode 100644 index a120773..0000000 --- a/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser.conf +++ /dev/null @@ -1,303 +0,0 @@ ---- -mode: required - -method: netinstall-add - -labels: - step: "Init selection" - step[de]: "Initauswahl" - -default: Dinit - -items: - - id: Dinit - name: dinit - description: "Dinit init system" - screenshot: "/etc/calamares/modules/images/dinit.svg" - netinstall: - name: "dinit" - description: "Dinit init system" - selected: true - critical: true - immutable: false - expanded: true - hidden: false - subgroups: - - name: "Default" - description: "Default services" - selected: true - hidden: true - packages: - - audit-dinit - - cryptsetup-dinit - - dbus-dinit - - dhcpcd-dinit - - lvm2-dinit - - mdadm-dinit - - name: "Cron" - description: "Cron init" - selected: true - packages: - - cronie-dinit - - name: "Syslog" - description: "Syslog init" - packages: - - syslog-ng-dinit - - metalog-dinit - - name: "Internet" - description: "Network init" - packages: - - avahi-dinit - - bluez-dinit - - iptables-dinit - - krb5-dinit - - networkmanager-dinit - - nfs-utils-dinit - - ntp-dinit - - openldap-dinit - - openssh-dinit - - rpcbind-dinit - - xinetd-dinit - - wpa_supplicant-dinit - - name: "Office" - description: "Office init" - packages: - - cups-dinit - - sane-dinit - - name: "Services" - description: "Services init" - packages: - - acpid-dinit - - alsa-utils-dinit - - apparmor-dinit - - brltty-dinit - - fuse-dinit - - gpm-dinit - - hdparm-dinit - - haveged-dinit - - lm_sensors-dinit - - openvpn-dinit - - pipewire-dinit - - pipewire-pulse-dinit - - power-profiles-daemon-dinit - - rsync-dinit - - wireplumber-dinit - - - id: OpenRC - name: openrc - description: "⚠ OpenRC init system — BROKEN in Antergos NeXT (init-rc conflict with dinit). Will be re-added once fixed." - screenshot: "/etc/calamares/modules/images/openrc.svg" - netinstall: - name: "openrc" - description: "OpenRC init system" - selected: false - critical: false - immutable: false - expanded: true - hidden: false - subgroups: - - name: "Default" - description: "Default services" - selected: true - hidden: true - packages: - - audit-openrc - - cryptsetup-openrc - - dbus-openrc - - dhcpcd-openrc - - lvm2-openrc - - mdadm-openrc - - name: "Cron" - description: "Cron init" - selected: true - packages: - - cronie-openrc - - name: "Syslog" - description: "Syslog init" - packages: - - syslog-ng-openrc - - metalog-openrc - - name: "Internet" - description: "Network init" - packages: - - avahi-openrc - - bluez-openrc - - iptables-openrc - - krb5-openrc - - networkmanager-openrc - - nfs-utils-openrc - - ntp-openrc - - openldap-openrc - - openssh-openrc - - rpcbind-openrc - - xinetd-openrc - - wpa_supplicant-openrc - - name: "Office" - description: "Office init" - packages: - - cups-openrc - - sane-openrc - - name: "Services" - description: "Services init" - packages: - - acpid-openrc - - alsa-utils-openrc - - apparmor-openrc - - brltty-openrc - - fuse-openrc - - gpm-openrc - - hdparm-openrc - - haveged-openrc - - lm_sensors-openrc - - openrc-settingsd - - openvpn-openrc - - pipewire-openrc - - power-profiles-daemon-openrc - - rsync-openrc - - wireplumber-openrc - - - id: S6 - name: s6 - description: "S6 init system" - screenshot: "/etc/calamares/modules/images/s6.svg" - netinstall: - name: "s6" - description: "S6 init system" - selected: false - critical: true - immutable: false - expanded: true - hidden: false - subgroups: - - name: "Default" - description: "Default services" - selected: true - hidden: true - packages: - - audit-s6 - - cryptsetup-s6 - - dbus-s6 - - dhcpcd-s6 - - lvm2-s6 - - mdadm-s6 - - s6-contrib - - name: "Cron" - description: "Cron init" - selected: true - packages: - - cronie-s6 - - name: "Syslog" - description: "Syslog init" - packages: - - syslog-ng-s6 - - metalog-s6 - - name: "Internet" - description: "Network init" - packages: - - avahi-s6 - - bluez-s6 - - iptables-s6 - - krb5-s6 - - networkmanager-s6 - - nfs-utils-s6 - - ntp-s6 - - openldap-s6 - - openssh-s6 - - rpcbind-s6 - - xinetd-s6 - - wpa_supplicant-s6 - - name: "Office" - description: "Office init" - packages: - - cups-s6 - - sane-s6 - - name: "Services" - description: "Services init" - packages: - - acpid-s6 - - alsa-utils-s6 - - apparmor-s6 - - brltty-s6 - - fuse-s6 - - gpm-s6 - - hdparm-s6 - - haveged-s6 - - lm_sensors-s6 - - openvpn-s6 - - pipewire-s6 - - power-profiles-daemon-s6 - - rsync-s6 - - wireplumber-s6 - - - id: Runit - name: runit - description: "Runit init system" - screenshot: "/etc/calamares/modules/images/runit.svg" - netinstall: - name: "runit" - description: "Runit init system" - selected: false - critical: true - immutable: false - expanded: true - hidden: false - subgroups: - - name: "Default" - description: "Default services" - selected: true - hidden: true - packages: - - audit-runit - - cryptsetup-runit - - dbus-runit - - dhcpcd-runit - - lvm2-runit - - mdadm-runit - - rsm - - name: "Cron" - description: "Cron init" - selected: true - packages: - - cronie-runit - - name: "Syslog" - description: "Syslog init" - packages: - - syslog-ng-runit - - metalog-runit - - name: "Internet" - description: "Network init" - packages: - - avahi-runit - - bluez-runit - - iptables-runit - - krb5-runit - - networkmanager-runit - - nfs-utils-runit - - ntp-runit - - openldap-runit - - openssh-runit - - rpcbind-runit - - xinetd-runit - - wpa_supplicant-runit - - name: "Office" - description: "Office init" - packages: - - cups-runit - - sane-runit - - name: "Services" - description: "Services init" - packages: - - acpid-runit - - alsa-utils-runit - - apparmor-runit - - brltty-runit - - fuse-runit - - gpm-runit - - hdparm-runit - - haveged-runit - - lm_sensors-runit - - openvpn-runit - - pipewire-runit - - power-profiles-daemon-runit - - rsync-runit - - wireplumber-runit diff --git a/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser_de.conf b/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser_de.conf new file mode 100644 index 0000000..54f1378 --- /dev/null +++ b/iso-profiles/antergos/live-overlay/etc/calamares/modules/packagechooser_de.conf @@ -0,0 +1,229 @@ +--- +mode: required +method: netinstall-add +labels: + step: "Desktop Environment" + step[de]: "Desktop-Umgebung" +default: Plasma +items: + - id: Plasma + name: "KDE Plasma" + description: "Full-featured modern desktop. The default Antergos NeXT experience." + screenshot: "" + netinstall: + name: "KDE Plasma" + selected: true + critical: false + packages: + - antergos-next-desktop-settings + - ark + - bluedevil + - breeze-gtk + - dolphin + - dolphin-plugins + - ffmpegthumbs + - gwenview + - kate + - kcalc + - kde-cli-tools + - kde-gtk-config + - kdeconnect + - kdegraphics-thumbnailers + - kdenetwork-filesharing + - kdeplasma-addons + - keditbookmarks + - kfind + - kgpg + - kinfocenter + - kio-admin + - kio-extras + - kio-fuse + - konsole + - konversation + - kscreen + - kwallet-pam + - kwalletmanager + - kwayland-integration + - okular + - partitionmanager + - plasma-browser-integration + - plasma-desktop + - plasma-disks + - plasma-nm + - plasma-pa + - plasma-systemmonitor + - plasma-workspace + - powerdevil + - print-manager + - qt6-imageformats + - spectacle + - xdg-desktop-portal-kde + - xsettingsd + - id: Xfce + name: "Xfce" + description: "Lightweight traditional desktop. Fast and low on resources." + screenshot: "" + netinstall: + name: "Xfce" + selected: true + critical: false + packages: + - exo + - garcon + - thunar + - thunar-volman + - tumbler + - xfce4-appfinder + - xfce4-panel + - xfce4-power-manager + - xfce4-session + - xfce4-settings + - xfce4-terminal + - xfconf + - xfdesktop + - xfwm4 + - xfwm4-themes + - mousepad + - parole + - ristretto + - thunar-archive-plugin + - thunar-media-tags-plugin + - xfburn + - xfce4-clipman-plugin + - xfce4-notifyd + - xfce4-pulseaudio-plugin + - xfce4-screenshooter + - xfce4-screensaver + - xfce4-taskmanager + - xfce4-whiskermenu-plugin + - id: Cinnamon + name: "Cinnamon" + description: "Traditional desktop with modern features (GNOME-based)" + screenshot: "" + netinstall: + name: "Cinnamon" + selected: true + critical: false + packages: + - cinnamon + - cinnamon-control-center + - cinnamon-desktop + - cinnamon-menus + - cinnamon-screensaver + - cinnamon-session + - cinnamon-settings-daemon + - cinnamon-translations + - id: MATE + name: "MATE" + description: "Classic desktop — continuation of GNOME 2" + screenshot: "" + netinstall: + name: "MATE" + selected: true + critical: false + packages: + - caja + - marco + - mate-backgrounds + - mate-control-center + - mate-desktop + - mate-icon-theme + - mate-menus + - mate-notification-daemon + - mate-panel + - mate-polkit + - mate-session-manager + - mate-settings-daemon + - mate-themes + - mate-user-guide + - atril + - eom + - mate-applets + - mate-calc + - mate-power-manager + - mate-screensaver + - mate-system-monitor + - mate-terminal + - mate-utils + - pluma + - id: LXQt + name: "LXQt" + description: "Lightweight Qt-based desktop" + screenshot: "" + netinstall: + name: "LXQt" + selected: true + critical: false + packages: + - lximage-qt + - lxqt-about + - lxqt-admin + - lxqt-archiver + - lxqt-config + - lxqt-globalkeys + - lxqt-menu-data + - lxqt-notificationd + - lxqt-openssh-askpass + - lxqt-panel + - lxqt-policykit + - lxqt-powermanagement + - lxqt-qtplugin + - lxqt-runner + - lxqt-session + - lxqt-sudo + - lxqt-themes + - obconf-qt + - openbox + - pavucontrol-qt + - pcmanfm-qt + - qps + - qterminal + - screengrab + - xdg-desktop-portal-lxqt + - id: i3 + name: "i3" + description: "Minimal tiling window manager (keyboard-driven)" + screenshot: "" + netinstall: + name: "i3" + selected: true + critical: false + packages: + - i3-wm + - i3blocks + - i3lock + - i3status + - id: Sway + name: "Sway" + description: "i3-compatible Wayland compositor" + screenshot: "" + netinstall: + name: "Sway" + selected: true + critical: false + packages: + - sway + - swaybg + - swayidle + - swaylock + - id: Hyprland + name: "Hyprland" + description: "Dynamic tiling Wayland compositor with eye candy" + screenshot: "" + netinstall: + name: "Hyprland" + selected: true + critical: false + packages: + - hyprland + - xdg-desktop-portal-hyprland + - id: COSMIC + name: "COSMIC" + description: "Modern Rust-based desktop. Select greetd as DM." + screenshot: "" + netinstall: + name: "COSMIC" + selected: true + critical: false + packages: + - cosmic diff --git a/iso-profiles/antergos/root-overlay/usr/local/bin/set-antergos-wallpaper.sh b/iso-profiles/antergos/root-overlay/usr/local/bin/set-antergos-wallpaper.sh index ebddcf4..62c9758 100755 --- a/iso-profiles/antergos/root-overlay/usr/local/bin/set-antergos-wallpaper.sh +++ b/iso-profiles/antergos/root-overlay/usr/local/bin/set-antergos-wallpaper.sh @@ -5,7 +5,6 @@ LOG="/tmp/antergos-wallpaper.log" MARKER="$HOME/.config/antergos-wallpaper-set" -CONFIG="$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc" VIDEO="/usr/share/backgrounds/antergos/antergos-wallpaper.mp4" PLUGIN="luisbocanegra.smart.video.wallpaper.reborn" @@ -22,43 +21,19 @@ if [[ ! -f "$VIDEO" ]]; then exit 1 fi -echo "[$(date)] Getting desktop containment IDs..." >> "$LOG" +echo "[$(date)] Applying video wallpaper via qdbus6..." >> "$LOG" -IDS=$(qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript \ - "desktops().map(function(d) { return d.id; }).join(' ');" 2>/dev/null) - -if [[ -z "$IDS" ]]; then - echo "[$(date)] Failed to get containment IDs" >> "$LOG" - touch "$MARKER" - exit 1 -fi - -echo "[$(date)] Containment IDs: $IDS" >> "$LOG" - -for ID in $IDS; do - echo "[$(date)] Configuring containment $ID..." >> "$LOG" - - kwriteconfig6 --file "$CONFIG" \ - --group "Containments" --group "$ID" \ - --key "wallpaperplugin" "$PLUGIN" >> "$LOG" 2>&1 - - kwriteconfig6 --file "$CONFIG" \ - --group "Containments" --group "$ID" \ - --group "Wallpaper" --group "$PLUGIN" --group "General" \ - --key "VideoUrls" '[{"filename": "/usr/share/backgrounds/antergos/antergos-wallpaper.mp4", "enabled": true}]' >> "$LOG" 2>&1 - - kwriteconfig6 --file "$CONFIG" \ - --group "Containments" --group "$ID" \ - --group "Wallpaper" --group "$PLUGIN" --group "General" \ - --key "Volume" "0" >> "$LOG" 2>&1 - - kwriteconfig6 --file "$CONFIG" \ - --group "Containments" --group "$ID" \ - --group "Wallpaper" --group "$PLUGIN" --group "General" \ - --key "MuteMode" "5" >> "$LOG" 2>&1 -done - -qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.refreshCurrentShell >> "$LOG" 2>&1 +qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript " +var allDesktops = desktops(); +for (var i = 0; i < allDesktops.length; i++) { + var d = allDesktops[i]; + d.wallpaperPlugin = '$PLUGIN'; + d.currentConfigGroup = Array('Wallpaper', '$PLUGIN', 'General'); + d.writeConfig('VideoUrls', '[{\"filename\": \"/usr/share/backgrounds/antergos/antergos-wallpaper.mp4\", \"enabled\": true}]'); + d.writeConfig('Volume', '0'); + d.writeConfig('MuteMode', '5'); +} +" >> "$LOG" 2>&1 touch "$MARKER" echo "[$(date)] Done" >> "$LOG"