Files
shell/update.sh
Peter Wood c9b69ea789 Add comprehensive Plex backup management scripts
- Introduced `restore-plex.sh` for restoring Plex backups with logging and validation.
- Created `test-plex-backup.sh` for automated testing of backup functionalities.
- Developed `validate-plex-backups.sh` for validating backup integrity and monitoring.
- Updated `update.sh` to reference the correct path for Plex service management.
2025-05-26 13:20:12 -04:00

68 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Colors for output
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m' # No Color
# Detect OS
if [ -f /etc/os-release ]; then
. /etc/os-release
OS_NAME=$ID
OS_VERSION=$VERSION_ID
else
echo -e "${YELLOW}Unable to detect OS, assuming Debian/Ubuntu...${NC}"
OS_NAME="ubuntu"
fi
# Function to determine the package manager to use
determine_pkg_manager() {
if command -v nala &> /dev/null; then
echo "nala"
elif [ "$OS_NAME" = "fedora" ]; then
echo "dnf"
else
echo "apt"
fi
}
PKG_MANAGER=$(determine_pkg_manager)
echo -e "${GREEN}Using package manager: $PKG_MANAGER${NC}"
# checks if the plexmediaserver.service is defined on this machine. stop it if it is.
if systemctl is-active --quiet plexmediaserver.service 2>/dev/null; then
sudo /home/acedanger/shell/plex/plex.sh stop
fi
omz_upgrade_script=~/.oh-my-zsh/tools/upgrade.sh
# Check if the script exists and is executable
if [ -x "$omz_upgrade_script" ]; then
echo -e "${YELLOW}Attempting Oh My Zsh upgrade...${NC}"
"$omz_upgrade_script"
fi
# Update packages using the appropriate package manager
case $PKG_MANAGER in
nala)
echo -e "${GREEN}Updating system using nala...${NC}"
sudo nala update
sudo nala upgrade -y
;;
dnf)
echo -e "${GREEN}Updating system using dnf...${NC}"
sudo dnf check-update -y || true
sudo dnf upgrade -y
;;
apt)
echo -e "${GREEN}Updating system using apt...${NC}"
sudo apt update
sudo apt upgrade -y
;;
esac
# checks if the plexmediaserver.service is defined on this machine. start it if it is.
if systemctl is-enabled --quiet plexmediaserver.service 2>/dev/null; then
sudo /home/acedanger/shell/plex/plex.sh start
fi