Hyprland-dotfiles/scripts/installupdates.sh

89 lines
2.3 KiB
Bash
Raw Normal View History

2023-09-10 09:07:55 -04:00
#!/bin/bash
# ___ _ _ _ _ _ _ _
# |_ _|_ __ ___| |_ __ _| | | | | | |_ __ __| | __ _| |_ ___ ___
# | || '_ \/ __| __/ _` | | | | | | | '_ \ / _` |/ _` | __/ _ \/ __|
# | || | | \__ \ || (_| | | | | |_| | |_) | (_| | (_| | || __/\__ \
# |___|_| |_|___/\__\__,_|_|_| \___/| .__/ \__,_|\__,_|\__\___||___/
# |_|
# by Stephan Raabe (2023)
# -----------------------------------------------------
# Required: yay trizen timeshift btrfs-grub
# -----------------------------------------------------
sleep 1
2023-09-10 09:07:55 -04:00
source ~/dotfiles/scripts/library.sh
clear
echo "-----------------------------------------------------"
echo "Check for updates"
echo "-----------------------------------------------------"
echo ""
if ! updates_arch=$(checkupdates 2> /dev/null | wc -l ); then
updates_arch=0
fi
if ! updates_aur=$(trizen -Su --aur --quiet | wc -l); then
updates_aur=0
fi
updates=$(("$updates_arch" + "$updates_aur"))
if [ "$updates" -gt 0 ]; then
echo "-> Pacman:"
checkupdates
echo ""
echo "-> AUR"
trizen -Su --aur
echo ""
echo "-> $updates updates available."
echo ""
else
echo "-> NO updates available"
exit
fi
# ------------------------------------------------------
# Confirm Start
# ------------------------------------------------------
while true; do
read -p "DO YOU WANT TO START THE UPDATE NOW? (Yy/Nn): " yn
case $yn in
[Yy]* )
echo "Update process started."
break;;
[Nn]* )
exit;
break;;
* ) echo "Please answer yes or no.";;
esac
done
if [[ $(_isInstalledYay "Timeshift") == 1 ]];
then
echo ""
echo "-----------------------------------------------------"
echo "Create a snapshot"
echo "-----------------------------------------------------"
echo ""
read -p "Enter a comment for the snapshot: " c
sudo timeshift --create --comments "$c"
sudo timeshift --list
sudo grub-mkconfig -o /boot/grub/grub.cfg
echo "DONE. Snapshot $c created!"
echo ""
fi
echo "-----------------------------------------------------"
echo "Start update"
echo "-----------------------------------------------------"
echo ""
yay
2023-09-18 15:03:03 -04:00
notify-send "Update complete" "$updates packages updated successfully"