#!/usr/bin/env bash

set -eu
# shellcheck source=./framework.sh
source "${BASE_DIR}/framework.sh"

if type checkupdates > /dev/null 2>&1; then
    updates=$(checkupdates 2> /dev/null | wc -l)
    if type yay > /dev/null 2>&1; then
        updates_aur=$(yay -Qum 2> /dev/null | wc -l)
        updates=$((updates + updates_aur))
    fi
elif type dnf > /dev/null 2>&1; then
    updates=$(dnf check-update --quiet | grep -c -v "^$")
elif type apt > /dev/null 2>&1; then
    updates=$(apt list --upgradable 2> /dev/null | grep -c upgradable)
else
    updates="N/A"
fi

text="$(print_color "${updates} available" "${updates}" 1 50)"

print_columns "Updates" "${text}"
