- #!/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