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>
45 lines
1.9 KiB
Bash
45 lines
1.9 KiB
Bash
#!/usr/bin/env bash
|
|
# Created by John A. Hoeven with the ethical assistance of Claude AI
|
|
# ---------------------------------------------------------------------------
|
|
# 09_network.sh
|
|
# ~/projects/ceos/alpine-installer/lib/minimal/09_network.sh
|
|
# Version: v0.0.1 | Status: DEVELOPMENT
|
|
# Target: Alpine Linux x86-64 (tinkerpad / ThinkPad T480)
|
|
# ---------------------------------------------------------------------------
|
|
# Minimal Tier subscript: network services — dbus, avahi.
|
|
# Enables both services in the default OpenRC runlevel.
|
|
# Defines install_minimal_network().
|
|
# ---------------------------------------------------------------------------
|
|
|
|
install_minimal_network() {
|
|
log_info "--- minimal/09_network: dbus and avahi ---"
|
|
|
|
install_pkg "dbus"
|
|
install_pkg "avahi"
|
|
|
|
run_test "dbus present" 'command -v dbus-daemon >/dev/null 2>&1' warn
|
|
run_test "avahi-daemon present" 'command -v avahi-daemon >/dev/null 2>&1' warn
|
|
|
|
log_info "Enabling dbus and avahi-daemon in OpenRC default runlevel..."
|
|
|
|
if command -v rc-update >/dev/null 2>&1; then
|
|
doas rc-update add dbus default >> "${LOG_FILE}" 2>&1 \
|
|
&& log_info "rc-update: dbus added to default" \
|
|
|| log_warn "rc-update add dbus failed — enable manually"
|
|
doas rc-update add avahi-daemon default >> "${LOG_FILE}" 2>&1 \
|
|
&& log_info "rc-update: avahi-daemon added to default" \
|
|
|| log_warn "rc-update add avahi-daemon failed — enable manually"
|
|
else
|
|
log_warn "rc-update not found — skipping service enablement"
|
|
MANUAL_PKGS+=("dbus + avahi-daemon: enable with rc-update add <svc> default")
|
|
fi
|
|
}
|
|
|
|
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
SCRIPT_NAME="09_network"
|
|
source "${SCRIPT_DIR}/lib/ce-common.sh" || { echo "ERROR: ce-common.sh not found"; exit 1; }
|
|
check_not_root
|
|
install_minimal_network
|
|
print_summary
|
|
fi
|