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>
34 lines
1.5 KiB
Bash
34 lines
1.5 KiB
Bash
#!/usr/bin/env bash
|
|
# Created by John A. Hoeven with the ethical assistance of Claude AI
|
|
# ---------------------------------------------------------------------------
|
|
# 06_comms.sh
|
|
# ~/projects/ceos/alpine-installer/lib/minimal/06_comms.sh
|
|
# Version: v0.0.1 | Status: DEVELOPMENT
|
|
# Target: Alpine Linux x86-64 (tinkerpad / ThinkPad T480)
|
|
# ---------------------------------------------------------------------------
|
|
# Minimal Tier subscript: communication and organisation —
|
|
# neomutt, msmtp, isync (mbsync), calcurse, pass.
|
|
# Defines install_minimal_comms().
|
|
# ---------------------------------------------------------------------------
|
|
|
|
install_minimal_comms() {
|
|
log_info "--- minimal/06_comms: communication and organisation ---"
|
|
local -a PKGS=(neomutt msmtp isync calcurse pass)
|
|
for pkg in "${PKGS[@]}"; do
|
|
install_pkg "${pkg}"
|
|
done
|
|
run_test "neomutt present" 'command -v neomutt >/dev/null 2>&1' warn
|
|
run_test "msmtp present" 'command -v msmtp >/dev/null 2>&1' warn
|
|
run_test "mbsync present" 'command -v mbsync >/dev/null 2>&1' warn
|
|
run_test "calcurse present" 'command -v calcurse >/dev/null 2>&1' warn
|
|
run_test "pass present" 'command -v pass >/dev/null 2>&1' warn
|
|
}
|
|
|
|
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
SCRIPT_NAME="06_comms"
|
|
source "${SCRIPT_DIR}/lib/ce-common.sh" || { echo "ERROR: ce-common.sh not found"; exit 1; }
|
|
check_not_root
|
|
install_minimal_comms
|
|
print_summary
|
|
fi
|