31 lines
880 B
Bash
31 lines
880 B
Bash
#!/bin/bash
|
|
|
|
# uncomment when use script from cron
|
|
PATH=$PATH:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
|
|
|
|
#verify run as root or sudo
|
|
if [[ $EUID -ne 0 ]]; then
|
|
echo "This script must be run as root"
|
|
exit 1
|
|
fi
|
|
|
|
# vars gotify
|
|
readonly TOKEN="<TOKEN_GOTIFY_APP>"
|
|
|
|
apt update -qq
|
|
|
|
#https://askubuntu.com/questions/269606/apt-get-count-the-number-of-updates-available
|
|
num=`apt-get -q -y --ignore-hold --allow-change-held-packages --allow-unauthenticated -s dist-upgrade | /bin/grep ^Inst | wc -l`;
|
|
|
|
if [ "$num" -eq "0" ]; then
|
|
echo "No updates";
|
|
exit;
|
|
else
|
|
#echo "There are $num updates";
|
|
updates=`apt-get --fix-missing --no-download -s dist-upgrade -V | grep '=>' | awk '{print$1}';`
|
|
updates=$(echo $updates|tr -d '\n')
|
|
OUT="There are **$num** updates: \r"
|
|
OUT="${OUT} Packages: *$updates*"
|
|
sh ./utils/gotifypush.sh "$(hostname) pending updates" "$OUT" 5 $TOKEN
|
|
fi
|