SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "${SCRIPT_DIR}/locations.sh"
source "${SCRIPT_DIR}/requirements.sh"

missing=0

for script in "${required_scripts[@]}"; do
    if [[ ! -x "$script" ]]; then
        echo "Missing or non-executable script: $script"
        ((missing++))
    fi
done

for directory in "${required_directories[@]}"; do
    if [[ ! -d "$directory" ]]; then
        echo "Missing directory: $directory"
        ((missing++))
    elif [[ ! -r "$directory" ]]; then
        echo "Directory not readable: $directory"
        ((missing++))
    fi
done


for file in "${required_files[@]}"; do
    if [[ ! -f "$file" ]]; then
        echo "Missing file: $file"
        ((missing++))
    fi
done

if (( missing > 0 )); then
    echo "$missing dependency check(s) failed."
    exit 1
fi
