- Updated installation scripts to enhance OS detection and streamline the installation process.
- Improved error handling and logging for MariaDB setup and service configuration.
- Consolidated functionality by removing deprecated scripts, ensuring better maintainability.
- Renamed the fix method to `fix_almalinux9_comprehensive` to reflect broader scope.
- Streamlined the installation process by updating system packages, installing essential build tools, and adding PHP dependencies.
- Enhanced firewall configuration by adding required ports and ensuring the service is started and enabled.
- Improved error handling and logging throughout the installation steps for better feedback on the process.
- 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.
- Integrated OS detection and specific fix application directly into the installation flow, improving compatibility and reducing conflicts.
- Added logging for MariaDB repository setup and verification, ensuring successful addition or warning on potential failures.
- Enhanced the installation of MariaDB for AlmaLinux 9 with improved error handling and service configuration checks.
- Removed the deprecated installCyberPanel.py file, consolidating functionality into the main installation script for better maintainability.
- Added a method to detect OS information for supported platforms (Ubuntu, Debian, AlmaLinux, Rocky, RHEL, CloudLinux, CentOS).
- Introduced methods to check for specific OS types and apply necessary fixes based on detected OS.
- Implemented OS-specific fixes for AlmaLinux 9, including service installations, MySQL GPG key handling, and OpenLiteSpeed setup.
- Enhanced the installation process to apply OS-specific fixes before installing packages, ensuring compatibility and reducing conflicts.
Enhance virtual environment setup and MariaDB installation process
Added checks to ensure the Python virtual environment is properly set up before running migrations.
Implemented logic to find the correct Python executable from multiple potential paths.
Improved MariaDB installation by trying different package combinations for AlmaLinux 9 and checking for service file existence.
Enhanced service management to handle symlinks and alternative service names for MariaDB.
Added error handling for missing MySQL/MariaDB client commands and ensured proper cleanup of conflicting service files.
- Added checks to ensure the Python virtual environment is properly set up before running migrations.
- Implemented logic to find the correct Python executable from multiple potential paths.
- Improved MariaDB installation by trying different package combinations for AlmaLinux 9 and checking for service file existence.
- Enhanced service management to handle symlinks and alternative service names for MariaDB.
- Added error handling for missing MySQL/MariaDB client commands and ensured proper cleanup of conflicting service files.
- Improved conflict resolution for MariaDB and MySQL packages in both cyberpanel.sh and cyberpanel_upgrade.sh.
- Added checks and symlink creation for mysql.h compatibility to ensure successful installation of MySQL development headers.
- Enhanced error handling during Python requirements installation with fallback options for mysqlclient and PyMySQL.
- Verified installation of MySQL development headers and modified requirements to avoid mysqlclient compilation issues.
- Added installation steps for MySQL/MariaDB development headers in both cyberpanel.sh and cyberpanel_upgrade.sh to support the mysqlclient Python package.
- Implemented checks for different operating systems (Ubuntu, Debian, CentOS, RHEL, etc.) to ensure the correct packages are installed.
- Enhanced error handling during Python requirements installation with fallback options for mysqlclient.
- Verified the installation of MySQL development headers using pkg-config.
- Improved Git clone reliability by implementing multiple clone methods and a fallback manual download option.
- Added checks to ensure necessary directories exist before cloning and configuring Dovecot.
- Enhanced Dovecot installation logic with multiple command attempts and service management.
- Updated PHP installation process to dynamically create symlinks to the best available PHP version.
- Added error handling for missing configuration files and created basic configurations as fallbacks.
- Ensured firewall setup for Sieve is only attempted if the required module is available.
- Added steps to clean and make cache before and after EPEL and MariaDB repository installations to prevent conflicts.
- Implemented repository priority settings to avoid package conflicts during installation.
- Included checks for repository and package conflicts, with fallback installation strategies for MariaDB.
- Organized package installation into logical steps to ensure proper dependency resolution and system stability.
- Finalized with a cache clean and system update to maintain consistency.
- Changed package names from 'MariaDB-*' to 'mariadb-*' for consistency across scripts.
- Modified LSMCD service type from 'forking' to 'simple' and added user/group settings in cyberpanel.sh.
- Improved error handling for LSMCD service startup in cyberpanel.sh.
- Fixed Django AutoField warnings in install.py by directly calling the fix function.
- Added compilation and installation steps for LiteSpeed Memcached (LSMCD) in cyberpanel.sh, including systemd service creation and management.
- Updated install.py to include checks for LSMCD service status and improved status checks for OpenLiteSpeed, PowerDNS, and Pure-FTPd.
- Updated MariaDB repository setup commands in cyberpanel.sh to use double quotes for consistency.
- Added installation of libmemcached dependencies in both cyberpanel.sh and install.py for improved functionality.
- Modified ownership commands in install.py to remove unnecessary redirection for better clarity.
- Introduced a fix for Django AutoField warnings in install.py by adding a DEFAULT_AUTO_FIELD setting.
- Created mbstring configuration for each PHP version in installCyberPanel.py to ensure proper PHP functionality.
- Adjusted PHP version priority in cyberpanel_upgrade.sh and install.py to include PHP 8.5 (beta) as the highest priority.
- Enhanced package installation logic in cyberpanel.sh and installCyberPanel.py to install PHP dependencies more robustly, including error handling for missing packages.
- Updated README.md to reflect the new recommended PHP versions and deprecated versions.
- Improved error handling and dependency management in phpUtilities.py and upgrade.py for better installation reliability.
Implemented a comprehensive installation summary function in both cyberpanel.sh and install.py. The summary includes installation status, system resource usage, and troubleshooting steps for failed installations. Enhanced user feedback during the installation process to improve clarity and support for users.