- Use eval with get_os_info() to capture OS variables
- Ensures variables are properly set in current shell scope
- Fixes issue where variables were detected but not available to install_dependencies()
- Temporarily disable set -e when trying to create temp directories
- Prevents script from exiting when /tmp is full
- Allows fallback to alternative directories or fallback installer
- Try multiple temp directory locations (/tmp, /var/tmp, /root, /root)
- Clean up old temporary directories before creating new ones
- Skip git clone if no temp directory can be created
- Try multiple locations for fallback installer download
- Better error messages for disk space issues
- Use flag-based approach to track git clone success
- Verify repository structure (install.sh and modules/) before using
- Fix fallback execution path
- Support both yum and dnf for package installation
- Better error messages
- Add timeout for git clone (180 seconds)
- Better error messages showing actual git errors
- Verify repository structure before using cloned repo
- Improve fallback installer download with better error handling
- Support both yum and dnf for RHEL-based systems
- Added detailed status messages and progress indicators during the installation of CyberPanel to improve user experience.
- Implemented background installation with real-time feedback, allowing users to monitor the installation status without interruption.
- Updated the OS detection and dependency installation steps with clear prompts to guide users through the process.
- Improved overall structure and readability of the installation script for better maintainability.
- Deleted `install_enhanced.sh` and `INSTALLATION_STATUS_FINAL.md` as part of the transition to a modular architecture for the CyberPanel installer.
- Removed `INSTALLER_COMPLETION_SUMMARY.md` to streamline documentation and focus on essential components.
- Updated `install.sh` to reflect changes in the installation process, enhancing modularity and maintainability.
- Ensured that the installer now utilizes a more organized structure with dedicated modules for OS detection, dependency management, and installation processes.
- Introduced `fix_installation_issues.sh` to address critical installation issues for CyberPanel, including database connection, LiteSpeed service configuration, SSL certificate generation, and admin console setup.
- Added `install_enhanced.sh` as a robust installer with retry logic and comprehensive status checks, improving the installation experience.
- Created `service_status_check.sh` for detailed service and port status reporting, ensuring users can verify the health of their CyberPanel setup.
- Updated `install.sh` to download and execute the enhanced installer, providing a fallback to the original installer if necessary.
- Updated cyberpanel_upgrade.sh to differentiate AlmaLinux 9 for dnf package management and specific package installations.
- Improved OS detection logic to handle AlmaLinux 9 separately, ensuring correct repository setup and package installations.
- Enhanced error handling and logging for better feedback during the installation process.
- Refined version validation in cyberpanel.sh to support stable versions, development versions, and commit hashes.
- Streamlined installation process in install.sh to accommodate specific branch, tag, or commit installations.
- Updated install.sh to replace yum with dnf for installing and updating curl and wget on AlmaLinux 9 and 10.
- Enhanced install/install.py to streamline MariaDB package installation with improved error handling and added installation of PHP dependencies, ensuring compatibility with AlmaLinux.
- Implemented logic to save MySQL root password securely and handle potential errors during installation processes.