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

3.2 KiB

title, layout, nav_order, has_children
title layout nav_order has_children
Init Systems default 3 true

Init Systems

An init system is PID 1 — the first process that runs when your computer boots. It starts everything else: filesystems, networking, display manager, services. Think of it as a foreman: it doesn't do the work itself, but it makes sure everything happens in the right order.

Antergos NeXT ships with Dinit as its default init system. The pages below describe the major init systems available on Artix Linux for educational purposes. If you want to switch init on an installed system, see Changing init.

The inits

Init Philosophy Complexity Speed Used by
Dinit Modern, dependency-based, parallel Medium Very fast Antergos NeXT (default), Chimera Linux, Artix
OpenRC Traditional, modular, shell-script-based Low Fast Gentoo, Artix, Devuan, Alpine
Runit Minimal, supervision-based, Unix-like Low Very fast Void Linux, AntiX
S6 Full supervision suite, modular Medium-High Very fast Artix, embedded systems

Choosing an init

If you want... Pick...
The fastest boot, automatic dependency resolution Dinit
Something familiar, well-documented, simple OpenRC
The simplest supervision-based approach Runit
The most powerful non-systemd init with full supervision S6

What they all have in common

  • No systemd — all four are independent implementations
  • Service scripts — services are configured via files in /etc/
  • Runlevels — groups of services that start together under different conditions
  • Plain-text logging — logs go to /var/log/, not journalctl

Key differences

Aspect Dinit OpenRC Runit S6
Service format Declarative .conf files Shell scripts Executable run scripts run scripts + s6-rc database
Dependencies Automatic Manual (need/use) None Automatic (s6-rc)
Supervision Optional No Yes (runsv) Yes (s6-supervise)
Logging None built-in syslog Per-service (optional) Per-service (s6-log)
Init script None needed /etc/init.d/ /etc/runit/1/2/3 s6-linux-init

Learning Linux with init systems

If you're new to Linux, init systems are one of the best ways to understand how your OS works under the hood:

  • Processes — PID 1, service trees, process supervision
  • Boot order — what needs to start before what
  • Dependencies — why NetworkManager needs dbus, why dbus needs udev
  • Runlevels — why your system behaves differently in single-user vs normal boot

The best part? If you break something with services, you can always fix it by re-enabling or starting it manually. Service management is much simpler than kernel config or package management.

Switching init after install

Artix provides a switching init guide that also works on Antergos NeXT. The process involves installing the new init's packages, configuring its services, and updating the bootloader.