#!/bin/bash set -eu declare -A pkg_versions query_url='https://aur.archlinux.org/rpc/?v=5&type=info' while read -r pkg installed_version; do pkg_versions[$pkg]="$installed_version" query_url="${query_url}&arg[]=${pkg}" done < <(if [ -t 0 ]; then pacman -Qm; else cat; fi) curl -gsSf "$query_url" | jq -r '.results[] | .Name, .Version, "\u0000"' | while read -r -d $'\0' pkg aur_version; do installed_version="${pkg_versions[$pkg]}" if ! echo -e "${installed_version}\n${aur_version}" | pacsort | tail -n1 | grep -qxF "${installed_version}"; then echo "${pkg} $installed_version -> $aur_version" fi done