- Extract shared helpers into steps/common.sh (colors, print_*, wait_for_user, ask_confirmation) - Split each install step into its own sourced script under steps/ - setup.sh now sources step files instead of duplicating logic - Add setup_ollama.sh: Ollama-only device setup (no Docker) - Add setup_onyx.sh: Onyx-only device setup with auto-detection of Ollama host via network scan - setup_ollama.sh prints ready-to-run setup_onyx.sh command with detected IP at completion - Docker memory recommendation is MAX when machine has <20 GB RAM, 20 GB otherwise - cleanup.sh and check-status.sh source steps/common.sh with inline curl fallback - check-status.sh detects device mode (single/ollama/onyx) and skips irrelevant checks - cleanup.sh reinstall message lists all three setup one-liners - README updated with split-device one-liner commands
43 lines
1.1 KiB
Bash
Executable file
43 lines
1.1 KiB
Bash
Executable file
#!/bin/bash
|
|
# Shared helpers sourced by all setup scripts
|
|
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m'
|
|
|
|
print_step() {
|
|
echo -e "\n${BLUE}===================================================${NC}"
|
|
echo -e "${BLUE}$1${NC}"
|
|
echo -e "${BLUE}===================================================${NC}\n"
|
|
}
|
|
|
|
print_header() {
|
|
echo -e "\n${BLUE}===================================================${NC}"
|
|
echo -e "${BLUE}$1${NC}"
|
|
echo -e "${BLUE}===================================================${NC}\n"
|
|
}
|
|
|
|
print_section() { echo -e "\n${BLUE}▶ $1${NC}"; }
|
|
print_success() { echo -e "${GREEN}✓ $1${NC}"; }
|
|
print_warning() { echo -e "${YELLOW}⚠ $1${NC}"; }
|
|
print_error() { echo -e "${RED}✗ $1${NC}"; }
|
|
|
|
wait_for_user() {
|
|
echo -e "\n${YELLOW}Press ENTER when you have completed the above step...${NC}"
|
|
read
|
|
}
|
|
|
|
ask_confirmation() {
|
|
echo -e "${YELLOW}$1 [y/N]${NC}"
|
|
read -r response
|
|
[[ "$response" =~ ^[Yy]$ ]]
|
|
}
|
|
|
|
check_mac() {
|
|
if [[ "$OSTYPE" != "darwin"* ]]; then
|
|
print_error "This script is designed for macOS. Exiting."
|
|
exit 1
|
|
fi
|
|
}
|