ceos-alpine-installer/lib/basic/03_gui.sh
John A. Hoeven a194c14077 Add CE OS Alpine installer v0.0.1 — Tier 0/1/2 dev scaffold
Staged installer set for Alpine Linux x86-64 (tinkerpad/ThinkPad T480).
Covers Base (Tier 0), Minimal (Tier 1), and Basic (Tier 2) tiers with
full phased structure, per-package error capture, and re-runnable test suites.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-10 02:25:38 +02:00

38 lines
1.6 KiB
Bash

#!/usr/bin/env bash
# Created by John A. Hoeven with the ethical assistance of Claude AI
# ---------------------------------------------------------------------------
# 03_gui.sh
# ~/projects/ceos/alpine-installer/lib/basic/03_gui.sh
# Version: v0.0.1 | Status: DEVELOPMENT
# Target: Alpine Linux x86-64 (tinkerpad / ThinkPad T480)
# ---------------------------------------------------------------------------
# Basic Tier subscript: GUI layer — cagebreak, firefox, xwayland.
# Supported on x86-64. Boot config modification (/boot/cmdline.txt) is
# RPi-only and is explicitly skipped on x86-64 hardware.
# Defines install_basic_gui().
# ---------------------------------------------------------------------------
install_basic_gui() {
log_info "--- basic/03_gui: GUI layer (Wayland + Firefox) ---"
log_info "Arch: ${ARCH} — GUI supported on x86-64"
local -a PKGS=(cagebreak firefox xwayland)
for pkg in "${PKGS[@]}"; do
install_pkg "${pkg}"
done
run_test "cagebreak present" 'command -v cagebreak >/dev/null 2>&1' warn
run_test "firefox present" 'command -v firefox >/dev/null 2>&1' warn
# /boot/cmdline.txt and /boot/extlinux.conf modifications are RPi-only
log_info "NOTICE: /boot/cmdline.txt modification skipped — not applicable on x86-64 (ThinkPad)"
}
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
SCRIPT_NAME="basic_03_gui"
source "${SCRIPT_DIR}/lib/ce-common.sh" || { echo "ERROR: ce-common.sh not found"; exit 1; }
check_not_root
install_basic_gui
print_summary
fi