autils

Unnamed repository; edit this file 'description' to name the repository.
git clone https://codeberg.org/emmett1/autils
Log | Files | Refs | README | LICENSE

apkg-outdated (1000B)


      1 #!/bin/sh
      2 
      3 [ "$1" ] || {
      4 	echo "script to check outdated package from repology"
      5 	echo " usage: $0 <port path> <port path> ..."
      6 	echo
      7 	exit 1
      8 }
      9 
     10 while [ "$1" ]; do
     11 	unset curver port
     12 	[ -f $1/abuild ] && port=$(realpath $1)
     13 	[ "$port" ] || { shift; continue; }
     14 	repo=${port%/*}; repo=${repo##*/}
     15 	pname=${1##*/}
     16 	curver=$(grep ^version= $port/abuild | awk -F = '{print $2}')
     17 	[ "$curver" ] || { shift; continue; }
     18 	if [ -s $1/outdated ]; then
     19 		pname=$(tail -n1 $1/outdated)
     20 	else
     21 		case $pname in
     22 			python-*) pname=python:${pname#python-};;
     23 		esac
     24 	fi
     25 	newver=$(curl -s -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" https://repology.org/badge/latest-versions/$pname.svg | grep middle | sed 's/.*middle">//;s/<.*//;s/,//' | tr ' ' '\n' | tail -n1)
     26 	if [ "$newver" = "-" ]; then
     27 		echo "$repo/${1##*/} 404 ($curver)"
     28 	elif [ "$curver" != "$newver" ]; then
     29 		echo "$repo/${1##*/} $newver ($curver)"
     30 	fi
     31 	shift
     32 done