Dotfiles/setup/modules
Amir Alexander Abdelbaki d445f965ce fix(modules): make service/session ops chroot-safe to prevent install aborts
When the TUI modules run inside the archiso installer chroot, the new
system's systemd is not the running init and there is no user session bus.
Operations like `systemctl start`, `enable --now`, `systemctl --user`, and
`gsettings` fail there and, under `set -e`, abort the whole module.

- logging.sh: add in_chroot/have_user_bus/enable_service/start_service
  helpers. enable_service warns instead of aborting; start_service skips in
  a chroot (unit starts on first boot via its enable symlink).
- core.sh, hyprland.sh, hyprlua.sh, niri.sh: route enables through
  enable_service, starts through start_service, and guard gsettings behind
  have_user_bus. Fixes the cronie-enable failure and the ly/DM setup abort.
- app modules (tlp, timeshift, open-webui, mysql, qemu, ollama, cockpit,
  docker, ssh-server): convert `enable --now`/plain enables to
  enable_service + start_service so they no longer abort during chroot install.
- tui-install.sh: run modules with output to a file plus a pid-bound tail,
  waiting on the module PID, so a daemon child inheriting the pipe can no
  longer hang the installer after a module (e.g. flatpak) finishes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01R5kHioUMK3mtf2eiLEozCM
2026-06-26 20:58:37 +02:00
..
Desktop-Environments fix(modules): make service/session ops chroot-safe to prevent install aborts 2026-06-26 20:58:37 +02:00
FreeipaAnsible feat(ansipa): unify FreeIPA group naming with dev_* / usr_* prefixes 2026-06-26 11:48:24 +02:00
lib fix(modules): make service/session ops chroot-safe to prevent install aborts 2026-06-26 20:58:37 +02:00
optional-Modules/apps fix(modules): make service/session ops chroot-safe to prevent install aborts 2026-06-26 20:58:37 +02:00
core-packages.sh fix(installer): repair broken package lists and make user-timer setup non-fatal 2026-06-26 18:20:21 +02:00
core.sh fix(modules): make service/session ops chroot-safe to prevent install aborts 2026-06-26 20:58:37 +02:00
package-managers.sh chore: add inline comments across all modules and configs 2026-06-25 13:07:06 +02:00
shell-setup.sh fix(installer): root-owned ~/.config, wrong logging path, flatpak system scope 2026-06-26 18:27:04 +02:00