diff --git a/launcher.sh b/launcher.sh index b236719..4135713 100755 --- a/launcher.sh +++ b/launcher.sh @@ -18,11 +18,11 @@ LIB_DIR="$BASE_DIR/lib" CONFIG_DIR="$BASE_DIR/config" # Load core libraries -source "$LIB_DIR/common-functions.sh" -source "$LIB_DIR/system-detect.sh" -source "$LIB_DIR/domain-discovery.sh" -source "$LIB_DIR/user-manager.sh" -source "$LIB_DIR/reference-db.sh" +source "$LIB_DIR/common-functions.sh" || { echo "ERROR: Failed to load common-functions.sh"; exit 1; } +source "$LIB_DIR/system-detect.sh" || { echo "ERROR: Failed to load system-detect.sh"; exit 1; } +source "$LIB_DIR/domain-discovery.sh" || { echo "ERROR: Failed to load domain-discovery.sh"; exit 1; } +source "$LIB_DIR/user-manager.sh" || { echo "ERROR: Failed to load user-manager.sh"; exit 1; } +source "$LIB_DIR/reference-db.sh" || { echo "ERROR: Failed to load reference-db.sh"; exit 1; } # Color codes RED='\033[0;31m' @@ -627,10 +627,14 @@ handle_email_menu() { ############################################################################# init_directories() { - mkdir -p "$MODULES_DIR"/{security,website,performance,backup,diagnostics,maintenance,email} - mkdir -p "$LIB_DIR" "$CONFIG_DIR" "$BASE_DIR/logs" - touch "$CONFIG_DIR/whitelist-ips.txt" 2>/dev/null - touch "$CONFIG_DIR/whitelist-user-agents.txt" 2>/dev/null + mkdir -p "$MODULES_DIR"/{security,website,performance,backup,diagnostics,maintenance,email} || { + echo "ERROR: Failed to create module directories"; return 1 + } + mkdir -p "$LIB_DIR" "$CONFIG_DIR" "$BASE_DIR/logs" || { + echo "ERROR: Failed to create base directories"; return 1 + } + touch "$CONFIG_DIR/whitelist-ips.txt" 2>/dev/null || true + touch "$CONFIG_DIR/whitelist-user-agents.txt" 2>/dev/null || true } startup_detection() { @@ -675,7 +679,7 @@ startup_detection() { echo "" # Read from terminal (use /dev/tty directly) - read -p "Press Enter to continue..." 2>/dev/null /dev/null /dev/null; then # No terminal available, return from function gracefully return 0 fi diff --git a/run.sh b/run.sh index 144713a..04769e9 100755 --- a/run.sh +++ b/run.sh @@ -11,7 +11,7 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Fix HISTFILE if set to non-existent path (prevents crashes on sourcing) if [ -n "$HISTFILE" ]; then HISTFILE_DIR="$(dirname "$HISTFILE" 2>/dev/null)" - if [ ! -d "$HISTFILE_DIR" ] 2>/dev/null; then + if [ ! -d "$HISTFILE_DIR" ]; then # Fallback to default history location export HISTFILE="$HOME/.bash_history" fi