Files
blomarchy/bin/blob-update
T

37 lines
841 B
Bash
Executable File

#!/bin/bash
# blob:summary=Update system and AUR packages
# blob:args=[--no-confirm]
# blob:requires-sudo=true
set -e
confirm=true
[[ ${1-} == --no-confirm ]] && confirm=false
if [[ $confirm == true ]]; then
read -rp "Update system and AUR packages? [y/N] " answer
[[ $answer == [yY] ]] || exit 0
fi
blob-sudo-keepalive
echo "Refreshing the keyring..."
sudo pacman -Sy --needed --noconfirm archlinux-keyring
echo "Updating system packages..."
sudo pacman -Syu --noconfirm
if blob-cmd-present yay && blob-pkg-aur; then
echo "Updating AUR packages..."
yay -Sua --noconfirm
fi
orphans=$(pacman -Qtdq 2>/dev/null || true)
if [[ -n $orphans ]]; then
echo "Removing orphaned packages..."
printf '%s\n' "$orphans" | sudo pacman -Rns --noconfirm -
fi
blob-notify-send "Update complete" "System and AUR packages are up to date"