mirror of
https://github.com/arthur-pbty/arthur-os.git
synced 2026-08-03 12:47:50 +02:00
finalize.sh just does the in-target work: env setup, source helpers,
mark current migrations as done (idempotent), run packaging/config/
login/post-install. No preflight orchestration, no install_mode_is
offline branches.
install.sh (online) inlines the preflight bits that are online-specific:
guard.sh, begin.sh, show-env.sh. The first-run-mode setup that used to
live in preflight (offline-only) moves to an orchestrator phase in a
later chunk; disable-mkinitcpio.sh is obsolete entirely because the C3
phase ordering means the limine UKI hook fires exactly once with
correct config in place.
install/preflight/{all,disable-mkinitcpio,first-run-mode}.sh still
exist on disk but are no longer sourced. They'll get removed in a
later chunk once the orchestrator absorbs first-run-mode.
34 lines
1.2 KiB
Bash
34 lines
1.2 KiB
Bash
#!/bin/bash
|
|
#
|
|
# The in-target portion of an Omarchy install: package-level setup, system
|
|
# configuration, login wiring, post-install. Self-contained — works whether
|
|
# invoked by install.sh (online) or by the Python orchestrator (offline, via
|
|
# arch-chroot). The caller is responsible for system sanity checks (guards),
|
|
# UI styling, and log capture.
|
|
|
|
set -eEo pipefail
|
|
|
|
_OMARCHY_INSTALLER_DIR=$(dirname "$(realpath "${BASH_SOURCE[0]}")")
|
|
export OMARCHY_PATH="${OMARCHY_PATH:-$_OMARCHY_INSTALLER_DIR}"
|
|
export OMARCHY_INSTALL="$OMARCHY_PATH/install"
|
|
export OMARCHY_INSTALL_LOG_FILE="${OMARCHY_INSTALL_LOG_FILE:-/var/log/omarchy-install.log}"
|
|
export PATH="$OMARCHY_PATH/bin:$PATH"
|
|
|
|
source "$OMARCHY_INSTALL/helpers/mode.sh"
|
|
detect_install_mode
|
|
export_legacy_mode_flags
|
|
|
|
source "$OMARCHY_INSTALL/helpers/all.sh"
|
|
|
|
# Mark every shipped migration as "done" so future updates only run the new
|
|
# ones. Idempotent; safe to re-run.
|
|
mkdir -p ~/.local/state/omarchy/migrations
|
|
for _f in "$OMARCHY_PATH/migrations"/*.sh; do
|
|
[[ -f $_f ]] && touch ~/.local/state/omarchy/migrations/"$(basename "$_f")"
|
|
done
|
|
|
|
source "$OMARCHY_INSTALL/packaging/all.sh"
|
|
source "$OMARCHY_INSTALL/config/all.sh"
|
|
source "$OMARCHY_INSTALL/login/all.sh"
|
|
source "$OMARCHY_INSTALL/post-install/all.sh"
|