diff options
Diffstat (limited to 'bin/list-versions-engywuck.sh')
-rwxr-xr-x | bin/list-versions-engywuck.sh | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/bin/list-versions-engywuck.sh b/bin/list-versions-engywuck.sh new file mode 100755 index 0000000..33bebc1 --- /dev/null +++ b/bin/list-versions-engywuck.sh @@ -0,0 +1,71 @@ +#!/bin/sh + +DATE="20190312T150955Z" + +set -e + +if [ ! -e /tmp/list-versions_sources.buster-freeze ] +then + for ARCHIVE_AREA in main contrib non-free + do + wget "http://snapshot.debian.org/archive/debian/${DATE}/dists/buster/${ARCHIVE_AREA}/source/Sources.xz" -O - | xz -c -d >> /tmp/list-versions_sources.buster-freeze + done +fi + +#if [ ! -e /tmp/list-versions_sources.buster-release ] +#then +# for ARCHIVE_AREA in main contrib non-free +# do +# wget "http://snapshot.debian.org/archive/debian/${DATE}/dists/buster/${ARCHIVE_AREA}/source/Sources.xz" -O - | xz -c -d >> /tmp/list-versions_sources.buster-release +# done +#fi + +if [ ! -e /tmp/list-versions_sources.buster-release ] +then + for ARCHIVE_AREA in main contrib non-free + do + wget "http://debian.ethz.ch/debian/dists/sid/${ARCHIVE_AREA}/source/Sources.xz" -O - | xz -c -d >> /tmp/list-versions_sources.buster-release + done +fi + +List () +{ + PACKAGE="${@}" + + FREEZE="$(sed -n "/^Package: ${PACKAGE}$/,/^Version:/p" /tmp/list-versions_sources.buster-freeze | awk '/^Version: / { print $2 }' | tail -n1)" + RELEASE="$(sed -n "/^Package: ${PACKAGE}$/,/^Version:/p" /tmp/list-versions_sources.buster-release | awk '/^Version: / { print $2 }' | tail -n1)" + + VERSIONS="$(wget -q http://snapshot.debian.org/package/${PACKAGE}/ -O - | grep '<li><a href=' | awk -F\> '{ print $3 }' | sed -e 's|<.*$||' | grep -v 'bpo' | grep -v 'deb[0-9]u')" + VERSIONS="$(echo ${VERSIONS} | sed -e "s|.*\(${RELEASE}\)|\1|" -e "s|\(${FREEZE}\).*|\1|")" + + clear + echo "Package: ${PACKAGE}" + echo + echo ${VERSIONS} | sed -e 's| |\n|g' | sort -V + echo + echo "# releases: $(echo ${VERSIONS} | sed -e 's| |\n|g' | wc -l)" + echo + echo "freeze: ${FREEZE}" + echo "release: ${RELEASE}" + echo + echo +} + +if [ -n "${1}" ] +then + for DEB in ${@} + do + List ${DEB} + done +else + while true + do + echo -n "Package: " + read DEB + echo + + List ${DEB} + + read input + done +fi |