- Added enhanced crontab entries with comprehensive logging to syslog.
- Created a management script (`manage-enhanced-crontab.sh`) for installing and verifying crontab entries.
- Introduced backup scripts for crontab management, including automated timestamped backups and cleanup.
- Developed documentation for enhanced crontab and multi-system management.
- Established a directory structure for managing crontab backups across multiple systems.
- Implemented error handling and logging for backup operations.
- Added health monitoring and reporting features for backup processes.
- Introduced demo-enhanced-backup.sh to showcase new features.
- Created backup-media-enhancement-summary.md for a side-by-side comparison of original and enhanced scripts.
- Developed enhanced-media-backup.md detailing features, usage, configuration, and error handling of the new backup script.
- Enhanced logging, error handling, and performance monitoring capabilities.
- Added support for multiple media services with improved safety and maintenance features.
- Created a new script `monitor-plex-backup.sh` for real-time status and health monitoring of the Plex backup system.
- Implemented features to check system status, backup status, performance metrics, recent activity, scheduling status, and health recommendations.
- Added command line options for watch mode and refresh interval.
- Enhanced logging with color-coded output for better visibility.
Update recent additions script to include more metadata
- Modified `plex-recent-additions.sh` to retrieve additional metadata fields such as year and library section type from the Plex database.
- Improved SQL query to join with library_sections for better context on added items.
Introduce comprehensive test suite for Plex backup system
- Added `test-plex-backup.sh` to provide automated testing for all backup-related functionality.
- Implemented unit tests for JSON log initialization, performance tracking, notification system, checksum caching, backup verification, and more.
- Included setup and cleanup functions for a mock test environment.
- Added performance benchmarks for checksum calculation and compression.
- Generated detailed test reports in JSON format for better tracking of test results.
- Improved OS detection in bootstrap.sh and setup.sh to handle unsupported OS cases.
- Added a function to determine the package manager (nala, dnf, apt) based on the detected OS.
- Updated package installation commands to use the appropriate package manager.
- Enhanced user feedback with colored output for better visibility during setup and updates.
- Created run-docker-tests.sh to execute setup tests in isolated Docker containers (Ubuntu and Debian).
- Implemented logging functionality to track test results and errors.
- Added startup.sh to ensure proper permissions and run tests within Docker containers.
- Developed test-setup.sh to validate bootstrap.sh and setup.sh scripts, including package availability checks.
- Enhanced error handling and reporting for package installations and missing dependencies.
- Included detailed logging for system information and test results.
- Updated setup.sh to check for Nala installation and provide alternative installation methods based on Ubuntu version.
- Added error handling for package installation, allowing fallback to apt if Nala fails.
- Introduced startup.sh to perform container startup checks, including system info and permissions for logs directory.
- Created test-setup.sh to validate bootstrap and setup scripts, including detailed logging of package availability and installation results.
- Implemented checks for missing packages and provided recommendations for manual installation.
- Enhanced logging for better traceability of actions and errors during setup and testing processes.
- Changed Nala installation approach to use more reliable methods
- First try to use Nala from standard repositories if available
- Fall back to Ubuntu PPA if not available in standard repos
- Removed reliance on the Volian repository key that was causing 404 errors
- Reorganized repository structure by moving dotfiles into a dedicated subdirectory
- Updated bootstrap.sh and setup.sh scripts to reference the new file paths
- Fixed Nala repository GPG key setup to use gpg --dearmor for proper key format
- Added Lazydocker installation to the setup script for Docker management
- Updated README.md with references to new paths and additional features
- Added documentation for Lazydocker in the dotfiles README.md
- Updated all symlink paths to point to the new dotfiles location