Files
euri-iso/docs/installer.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

4.2 KiB

title, layout, nav_order
title layout nav_order
Installer default 4

Calamares Installer

Antergos NeXT uses Calamares as its installer, with a custom launcher (calamares-next) that launches Calamares directly in online mode.

Install mode

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.

Fixed issues

Audio on installed systems

The upstream artix-pipewire-launcher doesn't support dinit. The XDG autostart entry was also missing from the upstream package.

Fix: The pipewire package in [antergos-pkgs] now includes pipewire.desktop installed to /etc/xdg/autostart/, and the artix-pipewire-launcher script is patched to recognize dinit (dinit|runit|s6) SUPPORT='YES').

SDDM theme showing Breeze

KDE's SDDM KCM writes a kde_settings.conf with Current=breeze. The Antergos theme never took effect in the live session.

Fix: The antergos-sddm-theme package now ships theme.conf at /etc/sddm.conf.d/theme.conf with Current=antergos. SDDM reads conf.d files alphabetically, so theme.conf (reads after kde_settings.conf) wins.

/usr/lib/os-release showing "Artix Linux"

The filesystem package from Artix owns /usr/lib/os-release. Our antergos-release also needs to install there, but it wasn't included in the basestrap operations list.

Fix: Added antergos-release to the operations list in basestrap.conf so it's installed during bootstrapping with --overwrite.

Key differences from upstream Calamares

  • dracut/dracutlukscfg replaced with initcpiocfg/initcpio/luksopenswaphookcfg (Artix uses mkinitcpio, not dracut)
  • services-artix module instead of services-systemd (uses artix-service which detects init and runs the right commands)
  • removeuser step removed, postcfg added
  • packagechooser module compiled in (upstream Calamares skips it by default)

Init system

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 for instructions if you need a different init.

Desktop selector (online)

Users choose from: Plasma, Xfce, Cinnamon, MATE, LXQt, i3, Sway, Hyprland, COSMIC, or No Desktop.

Implemented as a separate packagechooser instance with method: legacy. "No Desktop" installs only the base system (TTY/login — no DE, no display manager).

Available desktops

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

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?"

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).

Launcher

The calamares-next script (/usr/bin/calamares-next) handles the installer boot flow:

  1. Notice — explains why the offline mode was removed
  2. Welcome — branded splash with Install button
  3. Configuration — copies calamares-online/settings.conf to /etc/calamares/settings.conf
  4. Launch — runs calamares with the online config

Launched via the desktop entry in the live session: Exec=sudo -E calamares-next.