2026-06-30 19:48:14 +02:00
---
title : Init Systems
layout : default
2026-07-21 17:48:06 +02:00
nav_order : 4
2026-06-30 19:48:14 +02:00
has_children : true
---
# Init Systems
2026-07-21 17:48:06 +02:00
An **init system** is PID 1 — the first process started by the kernel during boot. It is responsible for initializing the system: mounting filesystems, starting networking, launching services, and managing the display manager. All other processes descend from PID 1.
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
Antergos NeXT ships with **Dinit** as its default init system. The pages below describe the major init systems available on Artix Linux. To switch init on an installed system, see [Changing init ](changing-init ).
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
## Available init systems
2026-06-30 19:48:14 +02:00
| Init | Philosophy | Complexity | Speed | Used by |
|------|-----------|------------|-------|---------|
2026-07-16 20:32:23 +02:00
| [Dinit ](dinit ) | Modern, dependency-based, parallel | Medium | Very fast | Antergos NeXT (default), Chimera Linux, Artix |
| [OpenRC ](openrc ) | Traditional, modular, shell-script-based | Low | Fast | Gentoo, Artix, Devuan, Alpine |
2026-07-11 23:33:17 +02:00
| [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 |
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
## Shared characteristics
2026-06-30 19:48:14 +02:00
- **No systemd** — all four are independent implementations
2026-07-21 17:48:06 +02:00
- **Service files** — services are configured via files in `/etc/`
2026-07-11 23:33:17 +02:00
- **Runlevels** — groups of services that start together under different conditions
2026-07-21 17:48:06 +02:00
- **Plain-text logging** — logs are written to `/var/log/`
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
## Comparison
2026-06-30 19:48:14 +02:00
2026-07-11 23:33:17 +02:00
| 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 |
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
## Switching init after installation
2026-06-30 19:48:14 +02:00
2026-07-21 17:48:06 +02:00
See [Changing init ](changing-init ) for step-by-step instructions on switching to OpenRC, Runit, or S6 on an installed system.