#!/usr/bin/env bash
set -eo pipefail

if [[ "$1" == "-h" || "$1" == "--help" ]]; then
    cat <<EOF
Usage: $(basename "$0") [-h]

Upgrade system packages (apt, snap, flatpak).

Options:
    -h, --help    Show this help message

EOF
    exit 0
fi

is apt >/dev/null && {
    echo
    echo "==========================="
    echo "Upgrading apt packages..."
    echo "==========================="
    echo
    sudo apt update
    sudo apt upgrade -y
}

is snap >/dev/null && {
    echo
    echo "==========================="
    echo "Upgrading snap packages..."
    echo "==========================="
    echo
    sudo snap refresh
}

is flatpak >/dev/null && {
    echo
    echo "==========================="
    echo "Upgrading flatpak packages..."
    echo "==========================="
    echo
    sudo flatpak update -y
}
