feat: switch default init from OpenRC to Dinit

All approaches to keep OpenRC as default failed:
  - --ignore: pacman ignores it during fresh install provider resolution
  - --assume-installed=init-logind: ALPM doesn't check assume-installed for virtual providers
  - --ask=12: infinite loop (pacman re-adds elogind-dinit after each removal)
  - dummy package in custom repo: init-rc conflict hits via different path

Dinit works because pacman --noconfirm naturally picks elogind-dinit
(alphabetically before elogind-openrc), pulling dinit-rc which has no
conflict. All inits (OpenRC, Runit, S6) remain selectable in the
online installer.

Changes:
  - buildiso: INITSYS='dinit', remove --assume-installed/--ask hacks
  - basestrap/main.py, packages/main.py: remove same hacks
  - profile.yaml: antergos-live-dinit for dinit, move openrc pkg to init-specific
  - packagechooser.conf (x2): default=Dinit, Dinit first in item list
  - packagechooser_dm.conf: *-dinit instead of *-openrc
  - README.md, README.pl.md, docs/*: update all OpenRC-first references
  - AGENTS.md: document dinit as default
This commit is contained in:
2026-07-06 19:42:27 +02:00
parent 64b08a95ad
commit 05ae4f25cc
15 changed files with 185 additions and 215 deletions
+4 -7
View File
@@ -7,7 +7,7 @@ nav_order: 2
# Dinit
**Dinit** is a modern init system designed for speed and correctness. Written in C++, it focuses on parallel service startup and dependency management without the bloat of systemd or the complexity of S6.
**Dinit** is a modern init system designed for speed and correctness. Written in C++, it focuses on parallel service startup and dependency management without the bloat of systemd or the complexity of S6. **Dinit is the default init system in Antergos NeXT.**
## Philosophy
@@ -17,7 +17,7 @@ Dinit aims to be a "better than OpenRC but simpler than S6" middle ground. It ha
- Not widely adopted by major distros yet
- Popular in DIY Linux builds (Linux From Scratch, custom embedded)
- Available in Artix as an alternative init
- Default init in Antergos NeXT; available in Artix as an alternative
## Key concepts
@@ -76,12 +76,9 @@ Pick Dinit if:
- You want the fastest possible boot
- You like declarative config (YAML-like)
- You want automatic dependency resolution
- You don't mind a less mature ecosystem
- You're fine with a newer, actively developed init system
Stick with OpenRC if:
- You want maximum stability and community support
- You prefer shell scripts you can read and debug
- You don't care about shaving seconds off boot time
OpenRC is also available if you prefer shell scripts and a longer track record.
## Learn more
+4 -4
View File
@@ -11,14 +11,14 @@ An **init system** is the first process that runs when your computer boots (PID
Antergos NeXT lets you choose between **four** init systems during installation. This page explains each one so you can pick what suits you.
> Don't know what init to choose? **Stick with OpenRC** — it's the default, it's well-tested, and it's what most Artix users run.
> 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.
## 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 |
| [Dinit](dinit) | Modern, dependency-based | Medium | Very fast | New projects, minimal systems |
| [Runit](runit) | Minimal, reliable, Unix-like | Low | Very fast | Void Linux, AntiX |
| [S6](s6) | Supervision-based, secure | Medium-High | Very fast | New projects, embedded |
@@ -26,8 +26,8 @@ Antergos NeXT lets you choose between **four** init systems during installation.
| If you want... | Pick... |
|----------------|---------|
| Something familiar and well-documented | OpenRC |
| 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 |
@@ -59,4 +59,4 @@ If you're new to Linux, learning about init systems is a great way to understand
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.
> **Pro tip**: If you're dual-booting or using a VM, try all four inits. Install a test system with OpenRC first, then reinstall with Dinit, then Runit, then S6. See which one feels right.
> **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.
+1 -1
View File
@@ -26,7 +26,7 @@ The launcher (`calamares-next`) presents a mode picker before launching Calamare
## Init system selector (online)
Users choose from: **OpenRC**, **Runit**, **S6**, **Dinit**.
Users choose from: **Dinit**, **OpenRC**, **Runit**, **S6**.
Implemented as a `packagechooser` instance with `method: netinstall-add` — the selected init pulls its associated packages.
+1 -1
View File
@@ -7,7 +7,7 @@ nav_order: 1
# OpenRC
**OpenRC** is the default init system in Antergos NeXT. It's used by Gentoo, Artix Linux, Devuan, Alpine Linux, and other non-systemd distros. It's proven, well-maintained, and about as simple as an init system can get while still being feature-rich.
**OpenRC** is one of four init systems available in Antergos NeXT (the default is **Dinit**). It's used by Gentoo, Artix Linux, Devuan, Alpine Linux, and other non-systemd distros. It's proven, well-maintained, and about as simple as an init system can get while still being feature-rich.
## systemd vs OpenRC at a glance
+1 -1
View File
@@ -44,7 +44,7 @@ Symlink — points to either `../calamares-offline/settings.conf` or `../calamar
### `etc/calamares-online/settings.conf`
Two `packagechooser` instances:
- `packagechooser@init` — init system (OpenRC, Runit, S6, Dinit) via netinstall-add
- `packagechooser@init` — init system (Dinit, OpenRC, Runit, S6) via netinstall-add
- `packagechooser@desktop` — DE selection via legacy method
### `etc/calamares-online/modules/packagechooser_init.conf`