docs: rework all pages to Artix Wiki quality

- index.md: add download link + stable release announcement
- building.md: add troubleshooting section (cache, squashfs, compression)
- ci.md: IA upload enabled, push trigger removed (manual dispatch only)
- development.md: add all gotchas from AGENTS.md (SDDM theme ordering,
  pipewire launcher, antergos-release in basestrap, CI changes)
- installer.md: document fixed issues (audio, SDDM, os-release)
- packages.md: add pipewire fork, antergos-sddm-theme, antergos-release
- launcher.md: expand with module configs
- init-systems.md: Chimera uses dinit, OpenRC marked as broken
- openrc.md: add broken warning banner
- wallpapers.md: default is antergos-wallpaper.png (not Adwaita Morning)
- overlays: clean up explanations and symlink behavior
- desktop-environments.md: add Discover note, clean up GNOME entry
- dinit.md, runit.md, s6.md: polish and add troubleshooting sections
This commit is contained in:
2026-07-11 23:33:17 +02:00
parent e54b35a1d4
commit d0213a7a46
17 changed files with 514 additions and 237 deletions
+30 -28
View File
@@ -7,56 +7,58 @@ has_children: true
# Init Systems
An **init system** is the first process that runs when your computer boots (PID 1). It's responsible for starting everything else filesystems, networking, display manager, services, and more. Think of it as the foreman at a construction site: it doesn't do the work itself, but it makes sure everything gets started in the right order.
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 lets you choose between **four** init systems during installation. This page explains each one so you can pick what suits you.
Antergos NeXT lets you choose between **four** init systems during online installation. (Offline mode uses Dinit, the default.)
> Don't know what init to choose? **Stick with Dinit** — it's the default, it's fast, and it's what Antergos NeXT ships with. OpenRC is also available if you prefer a more traditional approach.
> **Don't know what to pick? Stick with Dinit** — it's the default, it's fast, and it's what Antergos NeXT ships with. OpenRC is also available but currently broken in Antergos NeXT (services don't enable correctly on installed systems).
## The inits
| Init | Philosophy | Complexity | Speed | Used by |
|------|-----------|------------|-------|---------|
| [Dinit](dinit) | Modern, dependency-based | Medium | Very fast | Antergos NeXT, Artix, new projects |
| [OpenRC](openrc) | Simple, modular, Unix-like | Low | Fast | Gentoo, Artix, Devuan, Alpine |
| [Runit](runit) | Minimal, reliable, Unix-like | Low | Very fast | Void Linux, AntiX |
| [S6](s6) | Supervision-based, secure | Medium-High | Very fast | New projects, embedded |
| [Dinit](dinit) | Modern, dependency-based, parallel | Medium | Very fast | Antergos NeXT (default), Chimera Linux, Artix, new projects |
| [OpenRC](openrc) | Traditional, modular, shell-script-based | Low | Fast | Gentoo, Artix, Devuan, Alpine**currently broken in Antergos NeXT** |
| [Runit](runit) | Minimal, supervision-based, Unix-like | Low | Very fast | Void Linux, AntiX |
| [S6](s6) | Full supervision suite, modular | Medium-High | Very fast | Artix, embedded systems |
## Choosing an init
| If you want... | Pick... |
|----------------|---------|
| The fastest boot possible | Dinit or S6 |
| Something familiar and well-documented | OpenRC |
| The simplest, most Unix-like approach | Runit |
| Advanced supervision and process management | S6 |
| 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
- **Logging to files** — logs go to `/var/log/`, not `journalctl`
- **Runlevels** — groups of services that start together under different conditions
- **Plain-text logging** — logs go to `/var/log/`, not `journalctl`
## What's different
## Key differences
The main differences are in:
1. **How services are defined** — OpenRC uses shell scripts, Dinit uses a declarative config format, Runit uses executable scripts, S6 uses a supervision tree
2. **How they manage dependencies** — some handle it automatically, some leave it to you
3. **How they supervise processes** — some restart crashed services automatically, some don't
4. **How fast they boot** — Dinit and S6 are designed for parallel startup and are noticeably faster
| 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, learning about init systems is a great way to understand how your OS works under the hood. Here's why:
If you're new to Linux, init systems are one of the best ways to understand how your OS works under the hood:
- **You'll learn about processes** — PID 1, service trees, process supervision
- **You'll learn about boot order** — what needs to start before what
- **You'll learn about dependencies** — why NetworkManager needs dbus, why dbus needs udev
- **You'll learn about logging** — where logs go, how to read them
- **You'll learn about runlevels** — why your system behaves differently in single-user mode vs normal boot
- **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 — service management is much simpler than kernel config or package management.
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.
> **Pro tip**: If you're dual-booting or using a VM, try all four inits. Install a test system with Dinit first, then reinstall with OpenRC, then Runit, then S6. See which one feels right.
## Switching init after install
Artix provides a [switching init guide](https://wiki.artixlinux.org/Main/SwitchInit) that also works on Antergos NeXT. The process involves installing the new init's packages, configuring its services, and updating the bootloader.