0
0
Fork 0
mirror of https://github.com/stronk-dev/Tokyo-Night-Linux.git synced 2024-10-17 20:58:16 -04:00
tokyo-night-linux/.config/polybar/shapes/scripts/updates.sh

46 lines
1.3 KiB
Bash
Raw Normal View History

2021-07-18 05:26:12 -04:00
#!/usr/bin/env bash
NOTIFY_ICON=/usr/share/icons/Papirus/32x32/apps/system-software-update.svg
get_total_updates() { UPDATES=$(checkupdates 2>/dev/null | wc -l); }
while true; do
get_total_updates
# notify user of updates
if hash notify-send &>/dev/null; then
if (( UPDATES > 50 )); then
notify-send -u critical -i $NOTIFY_ICON \
"You really need to update!!" "$UPDATES New packages"
elif (( UPDATES > 25 )); then
notify-send -u normal -i $NOTIFY_ICON \
"You should update soon" "$UPDATES New packages"
elif (( UPDATES > 2 )); then
notify-send -u low -i $NOTIFY_ICON \
"$UPDATES New packages"
fi
fi
# when there are updates available
# every 10 seconds another check for updates is done
while (( UPDATES > 0 )); do
if (( UPDATES == 1 )); then
echo " $UPDATES"
elif (( UPDATES > 1 )); then
echo " $UPDATES"
else
echo " None"
fi
sleep 10
get_total_updates
done
# when no updates are available, use a longer loop, this saves on CPU
# and network uptime, only checking once every 30 min for new updates
while (( UPDATES == 0 )); do
echo " None"
sleep 1800
get_total_updates
done
done