feat: Add comprehensive Plex recovery validation script

- Introduced `validate-plex-recovery.sh` for validating Plex database recovery.
- Implemented checks for service status, database integrity, web interface accessibility, API functionality, and recent logs.
- Added detailed recovery summary and next steps for users.

fix: Improve Debian patching script for compatibility

- Enhanced `debian-patches.sh` to securely download and execute bootstrap scripts.
- Updated package mapping logic and ensured proper permissions for patched files.

fix: Update Docker test scripts for better permission handling

- Modified `run-docker-tests.sh` to set appropriate permissions on logs directory.
- Ensured log files have correct permissions after test runs.

fix: Enhance setup scripts for secure installations

- Updated `setup.sh` to securely download and execute installation scripts for zoxide and nvm.
- Improved error handling for failed downloads.

fix: Refine startup script for log directory permissions

- Adjusted `startup.sh` to set proper permissions for log directories and files.

chore: Revamp update-containers.sh for better error handling and logging

- Rewrote `update-containers.sh` to include detailed logging and error handling.
- Added validation for Docker image names and improved overall script robustness.
This commit is contained in:
Peter Wood
2025-06-05 07:22:28 -04:00
parent 8b514ac0b2
commit 0123fc6007
25 changed files with 4407 additions and 608 deletions

View File

@@ -1,5 +1,44 @@
#!/bin/bash
################################################################################
# Plex Recent Additions Report Script
################################################################################
#
# Author: Peter Wood <peter@peterwood.dev>
# Description: Generates reports of recently added media items in Plex Media
# Server by querying the library database directly. Provides
# customizable time ranges and output formats.
#
# Features:
# - Recent additions reporting (configurable time range)
# - Library section filtering
# - Formatted output with headers and columns
# - Direct SQLite database querying
# - Media type categorization
#
# Related Scripts:
# - backup-plex.sh: Backs up the database queried by this script
# - plex.sh: General Plex service management
# - validate-plex-backups.sh: Validates database integrity
# - monitor-plex-backup.sh: System monitoring
#
# Usage:
# ./plex-recent-additions.sh # Show additions from last 7 days
# ./plex-recent-additions.sh 30 # Show additions from last 30 days
# ./plex-recent-additions.sh --help # Show usage information
#
# Dependencies:
# - sqlite3 (for database queries)
# - Plex Media Server with populated library
# - Read access to Plex database files
#
# Exit Codes:
# 0 - Success
# 1 - Database not found or access denied
# 2 - Query execution failure
#
################################################################################
# Define the path to the Plex database
PLEX_DB="/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db"