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)
Place pipewire.desktop in root-overlay /etc/skel/.config/autostart/
so PipeWire starts via XDG autostart on login via the patched
artix-pipewire-launcher (now supports dinit in our pipewire fork).
Configure SDDM [Wayland] section with kwin_wayland compositor
command for a Wayland-native greeter display.
Includes:
- buildiso: antergos theme symlinked as artix for prepare_grub
- profile.yaml: dinit-user-spawn -> userspawn-dinit, added
dbus-dinit-user, pipewire-pulse-dinit, userspawn-dinit to livefs,
antergos-lsb-release
- services-artix.conf: dinit-user-spawn -> userspawn
- basestrap.conf: xlibre-xserver for online install
- pacman.conf: IgnorePkg xorg-server to avoid conflict with xlibre
- sddm.conf: Wayland compositor command
- common.yaml: cleanup (dedup lsb-release, vi->ex-vi-compat,
remove artix-grub-theme, jack2, noto-fonts-emoji)
- iso-x86_64.conf: IgnorePkg xorg-server for ISO build
xlibre-xserver is the modern Artix unified X server that provides
both x11win-server (required by SDDM) and xorg-server (required by
all DEs). Setting use-xlibre: false caused the old split packages
(x11win-server from system repo vs xorg-server from world repo) to
conflict during online installs when users selected SDDM + any DE
that pulls xorg-server/xlibre-xserver.
Switched both full and minimal profiles to use-xlibre: true.
- YAML document separator '---' was glued to 'qmlSearch' key, causing
the notesqml module to fall back to default example release notes
- Copied the config to calamares-online/modules/ and
calamares-offline/modules/ so both modes can find it
Introduces iso-profiles/antergos-minimal/, a new Xfce-based profile for
building a lightweight Antergos NeXT ISO under the 2 GB GitHub Releases
limit (the full Plasma profile produces ~2.15 GB).
Profile structure:
- profile.yaml: Xfce4 desktop, dinit-only init packages, Falkon browser,
minimal app selection, antergos-xfce-theme included in rootfs
- root-overlay/: SDDM configured for xfce.desktop, GRUB theme pointed to
antergos, xfconf settings for Antergos-NeXT GTK/xfwm4 theme
- live-overlay/: Calamares offline + online configs, netinstall with
multiple DE options (Plasma, Xfce, Cinnamon, MATE, LXQt, i3, Sway,
Hyprland), notesqml@minimal-info step explaining the edition rationale,
basestrap operations for antergos-release/grub-theme/keyring, display
manager selection (SDDM/LightDM/LXDM/LY), audio services (pipewire),
and antergos-xfce-theme in the Xfce subgroup
Default Xfce theme is set to Antergos-NeXT (Numix-derived, blue accent)
via xfconf XML in both live-overlay and root-overlay skel directories.