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)
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/, notjournalctl
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.