#!/usr/bin/env bash set -o errexit update_system() { print_header "updating system..." sudo pacman -Syu echo } clear_pacman_cache() { print_header "clearing pacman cache..." PACMAN_CACHE_SPACE="$(du -sh /var/cache/pacman/pkg/)" paccache -vrk2 paccache -ruk0 echo "pacman cache cleared, reclaimed $PACMAN_CACHE_SPACE" echo } remove_orphaned_packages() { print_header "removing orphaned packages..." ORPHANED=$(pacman -Qdtq) if [ -n "$ORPHANED" ]; then echo "$ORPHANED" | sudo pacman -Rns - ORPHANED_COUNT=$(echo "$ORPHANED" | wc -l) echo "removed $ORPHANED_COUNT orphaned packages" else echo "no orphaned packages found" fi echo } clear_local_cache() { print_header "clearing local cache..." LOCAL_CACHE_SPACE="$(du -sh ~/.cache)" rm -rf ~/.cache/ echo "local cache cleard, reclaimed $LOCAL_CACHE_SPACE" echo } clear_system_logs() { print_header "clearing system logs..." sudo journalctl --vacuum-time=7d echo } print_header() { GREEN='\033[0;32m' NC='\033[0m' echo -e "${GREEN}${1}${NC}" } update_system clear_pacman_cache remove_orphaned_packages clear_local_cache clear_system_logs