Commit Graph
13 Commits
Author SHA1 Message Date
c-ludenberg 6d28e35d06 chore: fix CodeQL findings
- Remove unused sys import (basestrap/main.py)
- Remove unused target_env_call import (packages/main.py)
- Remove unused progress_match variable in both files
- Remove dead if False: callback branch (basestrap/main.py)
2026-07-06 20:07:32 +02:00
c-ludenberg 05ae4f25cc 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
2026-07-06 19:42:27 +02:00
c-ludenberg 64b08a95ad fix: replace --ignore with --assume-installed=init-logind to bypass provider selection
--ignore doesn't reliably prevent pacman from considering elogind-dinit
during fresh provider resolution on all pacman versions. --assume-installed
creates a dummy installed package for init-logind, satisfying the
dependency from base without needing any provider at all. The explicitly
listed elogind-openrc then gets installed normally and provides
init-logind for real.

Dropped --ignore entirely in favor of --assume-installed + --ask=4
(conflict resolution safety net). --assume-installed only added for
non-dinit providers (openrc, runit, s6).
2026-07-05 22:23:01 +02:00
c-ludenberg 69da290ac5 fix: add --ask=4 safety net for init-rc conflicts in all three pacman code paths
--ignore alone doesn't reliably prevent provider resolution during fresh
pacman -S installs. --ask=4 auto-answers YES to conflict resolution
questions (e.g. 'remove dinit-rc?') with --noconfirm, providing a safety
net when --ignore doesn't prevent the dinit-rc vs openrc conflict.

All three code paths updated:
  - buildiso: make_rootfs() basestrap call
  - basestrap/main.py: PMPacman.install()
  - packages/main.py: PMPacman.install()
2026-07-05 22:16:40 +02:00
c-ludenberg 2c0d2424b4 fix: add --ignore logic to packages module too
The branding's netinstall.yaml has a Base System group with 'base'
that gets added to packageOperations. The packages module then
reinstalls base without --ignore, triggering the same init-logind
resolution bug. Adding the same --ignore logic from the basestrap
module.
2026-07-05 22:03:03 +02:00
c-ludenberg 8033575d50 fix: use --overwrite=* as single arg in packages module 2026-07-05 20:52:04 +02:00
c-ludenberg ac52aeea16 fix: restore packages/main.py corrupted by debugfs journal dump 2026-07-05 20:44:39 +02:00
c-ludenberg 6579acb421 fix: remove broken netinstallAdd/base_init logic from basestrap causing invalid elogind-sddm package 2026-07-05 20:39:14 +02:00
c-ludenberg 2df1216df8 fix: restore packages/main.py custom module 2026-07-05 20:15:56 +02:00
c-ludenberg 75b454f3c8 fix: remove stray packages/main.py that got re-added 2026-07-05 20:08:20 +02:00
c-ludenberg 5f72d2b58b fix: add tesseract-data-eng to livefs to prevent provider prompt during basestrap 2026-07-05 20:07:52 +02:00
c-ludenberg b0e6525166 revert: restore original basestrap.conf, basestrap/main.py, remove broken packages/main.py 2026-07-05 20:03:00 +02:00
c-ludenberg 7beee69be4 feat: expand Calamares installer with DM chooser, explicit DE packages, and custom packages module
- Add packagechooser@dm instance for display manager selection (SDDM/LightDM/LXDM/LY)
- Expand desktop environment package lists (Xfce MATE LXQt i3) with explicit packages
- Change plasma -> plasma-meta and lsb-release -> antergos-lsb-release
- Add bootloader, displaymanager, grubcfg, postcfg, services-artix module configs
- Install antergos-release, antergos-wallpapers, antergos-grub-theme via basestrap
- Add custom packages/main.py with one-at-a-time install and --overwrite='*'
- Add --overwrite='*' to basestrap main.py for pacman -Sy operations
2026-07-04 22:44:04 +02:00