view bin/check-ports @ 0:08cf7bf119b7

Current version of a tool to check the versions of installed ports against the source ports tree and other binary repositories
author Franz Glasner <hg@dom66.de>
date Tue, 10 Oct 2017 22:43:50 +0200
parents
children 7c9ddbea00c8
line wrap: on
line source

#!/bin/sh

installed_packages=$(pkg query '%n')

#for p in ${installed_packages} ; do
#    echo -n $p" "
#    pkg query '%v' $p
#    pkg rquery '%v' $p
#done

#pkg query '%n %v %R' $installed_packages |
#    while read vn vv vR ; do#
#	remote_ver=$(pkg rquery -r FreeBSD '%v' $vn)
#	version_compare=$(pkg version --test-version ${vv} ${remote_ver})
#	echo $vn $vv ${remote_ver} ${version_compare} $vR
#    done

installed_data="$(pkg query '%n/%v/%R' $installed_packages)"

_OLDIFS="${IFS}"
IFS='/'
while read vn vv vR ; do
    remote_ver=$(pkg rquery -r FreeBSD '%v' $vn)
    if [ "${vR}" != "unknown-repository" ] ; then
        version_compare=$(pkg version --test-version ${vv} ${remote_ver})
        if [ "${version_compare}" != '=' ] ; then
            echo $vn $vv ${version_compare} ${remote_ver} $vR
	fi
    fi
done <<EOFEOFEOF687
${installed_data}
EOFEOFEOF687