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:
+71
-71
@@ -7,9 +7,79 @@ labels:
|
||||
step: "Init selection"
|
||||
step[de]: "Initauswahl"
|
||||
|
||||
default: OpenRC
|
||||
default: Dinit
|
||||
|
||||
items:
|
||||
- id: Dinit
|
||||
name: dinit
|
||||
description: "Dinit init system"
|
||||
screenshot: ""
|
||||
netinstall:
|
||||
name: "dinit"
|
||||
description: "Dinit init system"
|
||||
selected: true
|
||||
critical: true
|
||||
immutable: false
|
||||
expanded: true
|
||||
hidden: false
|
||||
subgroups:
|
||||
- name: "Default"
|
||||
description: "Default services"
|
||||
selected: true
|
||||
hidden: true
|
||||
packages:
|
||||
- audit-dinit
|
||||
- cryptsetup-dinit
|
||||
- dbus-dinit
|
||||
- dhcpcd-dinit
|
||||
- lvm2-dinit
|
||||
- mdadm-dinit
|
||||
- name: "Cron"
|
||||
description: "Cron init"
|
||||
selected: true
|
||||
packages:
|
||||
- cronie-dinit
|
||||
- name: "Syslog"
|
||||
description: "Syslog init"
|
||||
packages:
|
||||
- syslog-ng-dinit
|
||||
- metalog-dinit
|
||||
- name: "Internet"
|
||||
description: "Network init"
|
||||
packages:
|
||||
- avahi-dinit
|
||||
- bluez-dinit
|
||||
- iptables-dinit
|
||||
- krb5-dinit
|
||||
- networkmanager-dinit
|
||||
- nfs-utils-dinit
|
||||
- ntp-dinit
|
||||
- openldap-dinit
|
||||
- openssh-dinit
|
||||
- rpcbind-dinit
|
||||
- xinetd-dinit
|
||||
- wpa_supplicant-dinit
|
||||
- name: "Office"
|
||||
description: "Office init"
|
||||
packages:
|
||||
- cups-dinit
|
||||
- sane-dinit
|
||||
- name: "Services"
|
||||
description: "Services init"
|
||||
packages:
|
||||
- acpid-dinit
|
||||
- alsa-utils-dinit
|
||||
- apparmor-dinit
|
||||
- brltty-dinit
|
||||
- fuse-dinit
|
||||
- gpm-dinit
|
||||
- hdparm-dinit
|
||||
- haveged-dinit
|
||||
- lm_sensors-dinit
|
||||
- openvpn-dinit
|
||||
- power-profiles-daemon-dinit
|
||||
- rsync-dinit
|
||||
|
||||
- id: OpenRC
|
||||
name: openrc
|
||||
description: "OpenRC init system"
|
||||
@@ -81,76 +151,6 @@ items:
|
||||
- power-profiles-daemon-openrc
|
||||
- rsync-openrc
|
||||
|
||||
- id: Dinit
|
||||
name: dinit
|
||||
description: "Dinit init system"
|
||||
screenshot: ""
|
||||
netinstall:
|
||||
name: "dinit"
|
||||
description: "Dinit init system"
|
||||
selected: false
|
||||
critical: true
|
||||
immutable: false
|
||||
expanded: true
|
||||
hidden: false
|
||||
subgroups:
|
||||
- name: "Default"
|
||||
description: "Default services"
|
||||
selected: true
|
||||
hidden: true
|
||||
packages:
|
||||
- audit-dinit
|
||||
- cryptsetup-dinit
|
||||
- dbus-dinit
|
||||
- dhcpcd-dinit
|
||||
- lvm2-dinit
|
||||
- mdadm-dinit
|
||||
- name: "Cron"
|
||||
description: "Cron init"
|
||||
selected: true
|
||||
packages:
|
||||
- cronie-dinit
|
||||
- name: "Syslog"
|
||||
description: "Syslog init"
|
||||
packages:
|
||||
- syslog-ng-dinit
|
||||
- metalog-dinit
|
||||
- name: "Internet"
|
||||
description: "Network init"
|
||||
packages:
|
||||
- avahi-dinit
|
||||
- bluez-dinit
|
||||
- iptables-dinit
|
||||
- krb5-dinit
|
||||
- networkmanager-dinit
|
||||
- nfs-utils-dinit
|
||||
- ntp-dinit
|
||||
- openldap-dinit
|
||||
- openssh-dinit
|
||||
- rpcbind-dinit
|
||||
- xinetd-dinit
|
||||
- wpa_supplicant-dinit
|
||||
- name: "Office"
|
||||
description: "Office init"
|
||||
packages:
|
||||
- cups-dinit
|
||||
- sane-dinit
|
||||
- name: "Services"
|
||||
description: "Services init"
|
||||
packages:
|
||||
- acpid-dinit
|
||||
- alsa-utils-dinit
|
||||
- apparmor-dinit
|
||||
- brltty-dinit
|
||||
- fuse-dinit
|
||||
- gpm-dinit
|
||||
- hdparm-dinit
|
||||
- haveged-dinit
|
||||
- lm_sensors-dinit
|
||||
- openvpn-dinit
|
||||
- power-profiles-daemon-dinit
|
||||
- rsync-dinit
|
||||
|
||||
- id: S6
|
||||
name: s6
|
||||
description: "S6 init system"
|
||||
|
||||
@@ -7,9 +7,79 @@ labels:
|
||||
step: "Init selection"
|
||||
step[de]: "Initauswahl"
|
||||
|
||||
default: OpenRC
|
||||
default: Dinit
|
||||
|
||||
items:
|
||||
- id: Dinit
|
||||
name: dinit
|
||||
description: "Dinit init system"
|
||||
screenshot: "/etc/calamares/modules/images/dinit.svg"
|
||||
netinstall:
|
||||
name: "dinit"
|
||||
description: "Dinit init system"
|
||||
selected: true
|
||||
critical: true
|
||||
immutable: false
|
||||
expanded: true
|
||||
hidden: false
|
||||
subgroups:
|
||||
- name: "Default"
|
||||
description: "Default services"
|
||||
selected: true
|
||||
hidden: true
|
||||
packages:
|
||||
- audit-dinit
|
||||
- cryptsetup-dinit
|
||||
- dbus-dinit
|
||||
- dhcpcd-dinit
|
||||
- lvm2-dinit
|
||||
- mdadm-dinit
|
||||
- name: "Cron"
|
||||
description: "Cron init"
|
||||
selected: true
|
||||
packages:
|
||||
- cronie-dinit
|
||||
- name: "Syslog"
|
||||
description: "Syslog init"
|
||||
packages:
|
||||
- syslog-ng-dinit
|
||||
- metalog-dinit
|
||||
- name: "Internet"
|
||||
description: "Network init"
|
||||
packages:
|
||||
- avahi-dinit
|
||||
- bluez-dinit
|
||||
- iptables-dinit
|
||||
- krb5-dinit
|
||||
- networkmanager-dinit
|
||||
- nfs-utils-dinit
|
||||
- ntp-dinit
|
||||
- openldap-dinit
|
||||
- openssh-dinit
|
||||
- rpcbind-dinit
|
||||
- xinetd-dinit
|
||||
- wpa_supplicant-dinit
|
||||
- name: "Office"
|
||||
description: "Office init"
|
||||
packages:
|
||||
- cups-dinit
|
||||
- sane-dinit
|
||||
- name: "Services"
|
||||
description: "Services init"
|
||||
packages:
|
||||
- acpid-dinit
|
||||
- alsa-utils-dinit
|
||||
- apparmor-dinit
|
||||
- brltty-dinit
|
||||
- fuse-dinit
|
||||
- gpm-dinit
|
||||
- hdparm-dinit
|
||||
- haveged-dinit
|
||||
- lm_sensors-dinit
|
||||
- openvpn-dinit
|
||||
- power-profiles-daemon-dinit
|
||||
- rsync-dinit
|
||||
|
||||
- id: OpenRC
|
||||
name: openrc
|
||||
description: "OpenRC init system"
|
||||
@@ -81,76 +151,6 @@ items:
|
||||
- power-profiles-daemon-openrc
|
||||
- rsync-openrc
|
||||
|
||||
- id: Dinit
|
||||
name: dinit
|
||||
description: "Dinit init system"
|
||||
screenshot: "/etc/calamares/modules/images/dinit.svg"
|
||||
netinstall:
|
||||
name: "dinit"
|
||||
description: "Dinit init system"
|
||||
selected: false
|
||||
critical: true
|
||||
immutable: false
|
||||
expanded: true
|
||||
hidden: false
|
||||
subgroups:
|
||||
- name: "Default"
|
||||
description: "Default services"
|
||||
selected: true
|
||||
hidden: true
|
||||
packages:
|
||||
- audit-dinit
|
||||
- cryptsetup-dinit
|
||||
- dbus-dinit
|
||||
- dhcpcd-dinit
|
||||
- lvm2-dinit
|
||||
- mdadm-dinit
|
||||
- name: "Cron"
|
||||
description: "Cron init"
|
||||
selected: true
|
||||
packages:
|
||||
- cronie-dinit
|
||||
- name: "Syslog"
|
||||
description: "Syslog init"
|
||||
packages:
|
||||
- syslog-ng-dinit
|
||||
- metalog-dinit
|
||||
- name: "Internet"
|
||||
description: "Network init"
|
||||
packages:
|
||||
- avahi-dinit
|
||||
- bluez-dinit
|
||||
- iptables-dinit
|
||||
- krb5-dinit
|
||||
- networkmanager-dinit
|
||||
- nfs-utils-dinit
|
||||
- ntp-dinit
|
||||
- openldap-dinit
|
||||
- openssh-dinit
|
||||
- rpcbind-dinit
|
||||
- xinetd-dinit
|
||||
- wpa_supplicant-dinit
|
||||
- name: "Office"
|
||||
description: "Office init"
|
||||
packages:
|
||||
- cups-dinit
|
||||
- sane-dinit
|
||||
- name: "Services"
|
||||
description: "Services init"
|
||||
packages:
|
||||
- acpid-dinit
|
||||
- alsa-utils-dinit
|
||||
- apparmor-dinit
|
||||
- brltty-dinit
|
||||
- fuse-dinit
|
||||
- gpm-dinit
|
||||
- hdparm-dinit
|
||||
- haveged-dinit
|
||||
- lm_sensors-dinit
|
||||
- openvpn-dinit
|
||||
- power-profiles-daemon-dinit
|
||||
- rsync-dinit
|
||||
|
||||
- id: S6
|
||||
name: s6
|
||||
description: "S6 init system"
|
||||
|
||||
@@ -29,7 +29,7 @@ items:
|
||||
hidden: true
|
||||
packages:
|
||||
- sddm
|
||||
- sddm-openrc
|
||||
- sddm-dinit
|
||||
- antergos-sddm-theme
|
||||
|
||||
- id: LightDM
|
||||
@@ -51,7 +51,7 @@ items:
|
||||
hidden: true
|
||||
packages:
|
||||
- lightdm
|
||||
- lightdm-openrc
|
||||
- lightdm-dinit
|
||||
|
||||
- id: LXDM
|
||||
name: lxdm
|
||||
@@ -72,7 +72,7 @@ items:
|
||||
hidden: true
|
||||
packages:
|
||||
- lxdm
|
||||
- lxdm-openrc
|
||||
- lxdm-dinit
|
||||
|
||||
- id: LY
|
||||
name: ly
|
||||
@@ -93,4 +93,4 @@ items:
|
||||
hidden: true
|
||||
packages:
|
||||
- ly
|
||||
- ly-openrc
|
||||
- ly-dinit
|
||||
|
||||
@@ -343,18 +343,6 @@ class PMPacman(PackageManager):
|
||||
# Don't report download progress for each file
|
||||
command.append("--noprogressbar")
|
||||
|
||||
# Pre-tend init-logind is already provided so pacman's resolver
|
||||
# skips provider selection entirely, preventing it from selecting
|
||||
# elogind-dinit (alphabetically before elogind-openrc) which would
|
||||
# pull in dinit -> dinit-rc and conflict with OpenRC.
|
||||
if libcalamares.globalstorage.contains("initProvider"):
|
||||
provider = libcalamares.globalstorage.value("initProvider")
|
||||
if provider and provider != "dinit":
|
||||
command.append("--assume-installed=init-logind")
|
||||
|
||||
# Safety net: auto-answer YES to conflict resolution
|
||||
command.append("--ask=4")
|
||||
|
||||
if self.pacman_needed_only:
|
||||
command.append("--needed")
|
||||
|
||||
|
||||
@@ -221,18 +221,6 @@ class PMPacman(PackageManager):
|
||||
command.append("--noprogressbar")
|
||||
command.append("--overwrite=*")
|
||||
|
||||
# Pre-tend init-logind is already provided so pacman's resolver
|
||||
# skips provider selection entirely, preventing it from selecting
|
||||
# elogind-dinit (alphabetically before elogind-openrc) which would
|
||||
# pull in dinit -> dinit-rc and conflict with OpenRC.
|
||||
if libcalamares.globalstorage.contains("initProvider"):
|
||||
provider = libcalamares.globalstorage.value("initProvider")
|
||||
if provider and provider != "dinit":
|
||||
command.append("--assume-installed=init-logind")
|
||||
|
||||
# Safety net: auto-answer YES to conflict resolution
|
||||
command.append("--ask=4")
|
||||
|
||||
if self.pacman_needed_only is True:
|
||||
command.append("--needed")
|
||||
if self.pacman_disable_timeout is True:
|
||||
|
||||
@@ -76,7 +76,6 @@ livefs:
|
||||
- antergos-grub-live
|
||||
- virtualbox-guest-utils
|
||||
- broadcom-wl
|
||||
- antergos-live-openrc
|
||||
- antergos-grub-theme
|
||||
- plasma
|
||||
- ark
|
||||
@@ -96,7 +95,7 @@ livefs:
|
||||
- tesseract-data-eng
|
||||
packages-init:
|
||||
dinit:
|
||||
- artix-live-dinit
|
||||
- antergos-live-dinit
|
||||
openrc:
|
||||
- antergos-live-openrc
|
||||
runit:
|
||||
|
||||
Reference in New Issue
Block a user