#!/bin/bash # Этот скрипт проверяет наличие обновлений, обновляет и перезапускает сервисы при необходимости echo -e "\n"; read -n 1 -p "Проверить обновления? [Y/n]: " cupdate; if [[ "$cupdate" = "" || "$cupdate" = [yYlLдД] ]]; then echo -e "\n"; pamac checkupdates -a; fi #--------------------------------------------------------------------------------------------- echo -e "\n"; read -n 1 -p "Обновить? [Y/n]: " update; if [[ "$update" = "" || "$update" = [yYlLдД] ]]; then echo -e "\n"; sudo sed -i 's/skipAutosnap=false/skipAutosnap=true/g' /etc/timeshift-autosnap.conf; echo -e "\n"; pamac upgrade --force-refresh | tee $HOME/upgrade.pamac; #--------------------------------------------------------------------------------------------- echo -e "\n"; read -n 1 -p "Обновить через yay? [y/N]: " yayupd; if [[ "$yayupd" = [yYlLдД] ]]; then echo -e "\n"; yay | tee $HOME/upgrade.yay; echo -e "\n"; fi sudo sed -i 's/skipAutosnap=true/skipAutosnap=false/g' /etc/timeshift-autosnap.conf; echo -e "\n"; #--------------------------------------------------------------------------------------------- # echo -e "\n"; read -n 1 -p "Обновить flatpak? [y/N]: " flat; # if [[ "$flat" = [yY] ]]; then echo -e "\n"; flatpak update; echo -e "\n"; fi # Проверка необходимости постдействий после обновлений --------------------------------------- if [[ -f $HOME/upgrade.pamac ]]; then if cat $HOME/upgrade.pamac | grep 'Нет заданий.'; then rm $HOME/upgrade.pamac; fi fi if [[ -f $HOME/upgrade.yay ]]; then if cat $HOME/upgrade.yay | grep 'делать нечего'; then rm $HOME/upgrade.yay; fi fi if compgen -G "$HOME/upgrade.*" > /dev/null; then echo -e "\n"; # -------------------------------------------------------------------------------------------- read -n 1 -p "Сравнить конфиги pacnew? [Y/n]: " diff; if [[ "$diff" = "" || "$diff" = [yYlLдД] ]]; then echo -e "\n"; read -n 1 -p "Сравнить в meld(графика)? [Y/n]: " difft; if [[ "$difft" = "" || "$difft" = [yYlLдД] ]]; then sudo DIFFPROG=meld pacdiff; else sudo DIFFPROG=vimdiff pacdiff; fi # Конец условия Сравнить конфиги pacnew? fi echo -e "\n"; read -n 1 -p "Проверить сервисы для перезапуска? [Y/n]: " restart; if [[ "$restart" = "" || "$restart" = [yYlLдД] ]]; then echo -e "\n"; sudo systemctl daemon-reload; sudo needrestart -u NeedRestart::UI::stdio -r i; echo -e "\n"; fi # Конец условия Необходимости постобработки ------------------------------------------------- fi #Конец условия Обновить? fi echo -e "\n"; # Удаление логов ------------------------------------------------------------------------------ if [[ -f $HOME/upgrade.yay ]]; then rm $HOME/upgrade.yay; fi if [[ -f $HOME/upgrade.pamac ]]; then rm $HOME/upgrade.pamac; fi