71 lines
2.7 KiB
Bash
71 lines
2.7 KiB
Bash
#!/usr/bin/env bash
|
|
#
|
|
# Live ISO entry point on tty1: set up the live VT, run the configurator
|
|
# wizard, then hand off to the Python install orchestrator. Mirrors the
|
|
# stream/env contract from the previously-working installer:
|
|
# - stdout teed to /var/log/omarchy-install.log (CSI-stripped) AND to tty
|
|
# - stderr direct to /dev/tty so gum (which draws its TUI on stderr)
|
|
# renders correctly
|
|
# - CLICOLOR_FORCE/FORCE_COLOR so gum emits ANSI even with stdout piped
|
|
# - COLUMNS/LINES so gum picks up real terminal size
|
|
set -euo pipefail
|
|
|
|
[[ $(tty) == /dev/tty1 ]] || exit 0
|
|
|
|
export OMARCHY_MIRROR="$(cat /root/omarchy_mirror)"
|
|
export OMARCHY_PATH=/usr/share/omarchy
|
|
export OMARCHY_INSTALL=$OMARCHY_PATH/install
|
|
export OMARCHY_INSTALL_LOG_FILE=/var/log/omarchy-install.log
|
|
if [[ -f /usr/share/omarchy-iso/install-debug ]]; then
|
|
export OMARCHY_INSTALL_DEBUG=1
|
|
fi
|
|
source "$OMARCHY_INSTALL/helpers/all.sh"
|
|
|
|
# Tokyo Night palette so the live VT matches the installed look.
|
|
set_tokyo_night_colors() {
|
|
echo -en "\e]P01a1b26"; echo -en "\e]P1f7768e"; echo -en "\e]P29ece6a"
|
|
echo -en "\e]P3e0af68"; echo -en "\e]P47aa2f7"; echo -en "\e]P5bb9af7"
|
|
echo -en "\e]P67dcfff"; echo -en "\e]P7a9b1d6"; echo -en "\e]P8414868"
|
|
echo -en "\e]P9f7768e"; echo -en "\e]PA9ece6a"; echo -en "\e]PBe0af68"
|
|
echo -en "\e]PC7aa2f7"; echo -en "\e]PDbb9af7"; echo -en "\e]PE7dcfff"
|
|
echo -en "\e]PFc0caf5"
|
|
echo -en "\033[0m"
|
|
clear
|
|
}
|
|
set_tokyo_night_colors
|
|
|
|
mkdir -p /var/log
|
|
touch "$OMARCHY_INSTALL_LOG_FILE"
|
|
|
|
export COLUMNS=$(tput cols)
|
|
export LINES=$(tput lines)
|
|
exec > >(tee >(sed -u 's/\x1b\[[0-9;?]*[A-Za-z]//g' >>"$OMARCHY_INSTALL_LOG_FILE") 2>/dev/null) 2>/dev/tty
|
|
export CLICOLOR_FORCE=1
|
|
export FORCE_COLOR=1
|
|
|
|
if [[ ${OMARCHY_INSTALL_DEBUG:-} == "1" ]]; then
|
|
echo "=== Omarchy ISO debug build ==="
|
|
[[ -f /usr/share/omarchy-iso/build-info ]] && cat /usr/share/omarchy-iso/build-info
|
|
pacman -Q omarchy-installer omarchy-settings omarchy-keyring 2>/dev/null || true
|
|
echo "================================"
|
|
fi
|
|
|
|
cd /root
|
|
./configurator
|
|
|
|
# The foreground dashboard is now the sole visible install UI owner. It starts
|
|
# the actual installer as a non-interactive child, logs child output, waits for
|
|
# completion, then renders the final installed-time/reboot prompt itself.
|
|
export OMARCHY_DASHBOARD_TTY="$(tty)"
|
|
rm -f /run/omarchy-install/state.json
|
|
/usr/local/bin/omarchy-install-dashboard \
|
|
"$OMARCHY_INSTALL_LOG_FILE" \
|
|
/run/omarchy-install/state.json \
|
|
-- \
|
|
/usr/local/bin/omarchy-iso-install \
|
|
--config /root/user_configuration.json \
|
|
--creds /root/user_credentials.json \
|
|
--full-name-file /root/user_full_name.txt \
|
|
--email-file /root/user_email_address.txt \
|
|
--encrypt-file /root/user_encrypt_installation.txt
|