Add documentation for planned script restructuring
Added planning documents for future script reorganization: NEW-SCRIPT-STRUCTURE.md: - Outlines two-phase structure (Essential Setup vs Service Selection) - Documents plan to move optional services to whiptail menu - Plans for uninstall functionality - Re-run detection improvements SCRIPT-FLOW-INTRO.txt: - Proposed intro text for users - Explains Phase 1 (required) and Phase 2 (optional) - Documents re-running behavior These are planning documents for future enhancements. Current commit only implements the duplicate prompt fix.
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SCRIPT FLOW EXPLANATION FOR USERS
|
||||
cat << 'EOF'
|
||||
╔════════════════════════════════════════════════════════════════╗
|
||||
║ Ubuntu Post-Install Setup Script ║
|
||||
╚════════════════════════════════════════════════════════════════╝
|
||||
|
||||
This script is divided into TWO main phases:
|
||||
|
||||
┌────────────────────────────────────────────────────────────────┐
|
||||
│ PHASE 1: ESSENTIAL SYSTEM SETUP (Required) │
|
||||
├────────────────────────────────────────────────────────────────┤
|
||||
│ These are installed/configured FIRST: │
|
||||
│ ✓ System updates and essential packages │
|
||||
│ ✓ OpenSSH server (remote access) │
|
||||
│ ✓ rsync, curl, wget (core utilities) │
|
||||
│ ✓ SSH key configuration │
|
||||
│ ✓ Docker & Docker Compose (container platform) │
|
||||
│ ✓ Hard drive mounting (storage setup) │
|
||||
│ │
|
||||
│ These are REQUIRED for everything else to work. │
|
||||
└────────────────────────────────────────────────────────────────┘
|
||||
|
||||
┌────────────────────────────────────────────────────────────────┐
|
||||
│ PHASE 2: SERVICE SELECTION MENU (Optional) │
|
||||
├────────────────────────────────────────────────────────────────┤
|
||||
│ After Phase 1, you'll see a CHECKBOX MENU where you can: │
|
||||
│ • Select which services to INSTALL │
|
||||
│ • Select which services to UNINSTALL │
|
||||
│ • Skip services you don't want │
|
||||
│ │
|
||||
│ Services include: │
|
||||
│ • Self-hosted apps (ActualBudget, Keycloak, Jellyfin, etc.) │
|
||||
│ • Network services (Samba, VPNs, fail2ban) │
|
||||
│ • Monitoring tools (Uptime Kuma, Portainer, Watchtower) │
|
||||
│ • And many more... │
|
||||
└────────────────────────────────────────────────────────────────┘
|
||||
|
||||
┌────────────────────────────────────────────────────────────────┐
|
||||
│ RE-RUNNING THIS SCRIPT │
|
||||
├────────────────────────────────────────────────────────────────┤
|
||||
│ You can safely re-run this script on an already configured │
|
||||
│ server: │
|
||||
│ • Phase 1 will DETECT existing installations and skip them │
|
||||
│ • Phase 2 menu will show ALL services (installed and not) │
|
||||
│ • Select NEW services to add │
|
||||
│ • Or select UNINSTALL to remove services │
|
||||
│ │
|
||||
│ The script is IDEMPOTENT - safe to run multiple times! │
|
||||
└────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Press ENTER to continue with Phase 1 (Essential Setup)...
|
||||
EOF
|
||||
|
||||
read -p ""
|
||||
|
||||
# Now continue with the actual script...
|
||||
EOF
|
||||
Reference in New Issue
Block a user