# Setup Scripts Directory This directory contains all setup, installation, and verification scripts for the Rustelo project. ## Script Categories ### Installation & Setup - **`install-master.sh`** - Unified master installer (966 lines) - Priority 3 *(moved from root)* - **`install-basic.sh`** - Basic installation script (889 lines) - Priority 3 *(renamed from install.sh)* - **`install-dev.sh`** - Development setup (285 lines) - Priority 2 - **`install.ps1`** - PowerShell installation script for Windows - **`setup-config.sh`** - Configuration setup (485 lines) - Priority 2 - **`setup_encryption.sh`** - Encryption setup (497 lines) - Priority 3 - **`setup_dev.sh`** - Development environment setup (114 lines) - Priority 2 - **`setup-menus.sh`** - Menu configuration setup (436 lines) - Priority 2 *(moved from root)* ### Wizards & Interactive Setup - **`run_wizard.sh`** - Interactive setup wizard (138 lines) - Priority 2 - **`test_wizard.sh`** - Wizard testing (83 lines) - Priority 3 ### Post-Installation & Verification - **`post-setup-hook.sh`** - Post-installation tasks (296 lines) - Priority 2 *(moved from build)* - **`generate-setup-complete.sh`** - Setup completion report (561 lines) - Priority 2 *(moved from build)* - **`verify-setup.sh`** - Installation verification (395 lines) - Priority 2 *(moved from root)* - **`overview.sh`** - System status overview (408 lines) - Priority 1 *(moved from root)* ## Usage ### Complete Installation ```bash # Master installation with all features (RECOMMENDED) ./scripts/setup/install-master.sh # Basic installation ./scripts/setup/install-basic.sh # Development-only setup ./scripts/setup/install-dev.sh # Interactive configuration wizard ./scripts/setup/run_wizard.sh ``` ### Configuration Management ```bash # Configure project settings ./scripts/setup/setup-config.sh # Setup encryption ./scripts/setup/setup_encryption.sh # Configure navigation menus ./scripts/setup/setup-menus.sh ``` ### Verification & Status ```bash # Verify installation ./scripts/setup/verify-setup.sh # Get system overview ./scripts/setup/overview.sh # Generate setup completion report ./scripts/setup/generate-setup-complete.sh ``` ## Migration Notes **Recently reorganized scripts:** - `install.sh` → `install-master.sh` (unified installer, moved from root) - `setup/install.sh` → `install-basic.sh` (basic installer, renamed) - `overview.sh` → `setup/overview.sh` (moved from root) - `verify-setup.sh` → `setup/verify-setup.sh` (moved from root) - `setup-menus.sh` → `setup/setup-menus.sh` (moved from root) - `build/post-setup-hook.sh` → `setup/post-setup-hook.sh` (moved from build) - `build/generate-setup-complete.sh` → `setup/generate-setup-complete.sh` (moved from build) All references to these scripts have been updated throughout the codebase and justfile. ## Feature Dependencies ### Required for Auth Feature - `setup_encryption.sh` - Security critical - Database setup integration ### Required for Content Features - Menu configuration via `setup-menus.sh` - Content path configuration ### Development Setup - `install-dev.sh` - Development environment - `setup_dev.sh` - Development configuration - `overview.sh` - Development debugging ## Nushell Migration Priority **Priority 1 (Immediate candidates):** - `overview.sh` - High developer impact, good structured data benefits **Priority 2 (Medium-term migration):** - `setup-config.sh`, `setup-menus.sh`, `install-dev.sh`, `verify-setup.sh` - Good candidates with moderate complexity **Priority 3 (Long-term migration):** - `install-master.sh`, `install-basic.sh`, `setup_encryption.sh`, `post-setup-hook.sh` - Complex, business-critical scripts requiring extensive testing **Consolidation Opportunities:** - `install-master.sh` + `install-basic.sh` - Could be merged into single master installer - `setup_dev.sh` + `install-dev.sh` - Single development setup ## Success Metrics Scripts in this directory are critical for: - Zero-friction project onboarding - Consistent environment setup across developers - Automated verification of installation completeness - System status monitoring and debugging