#!/bin/bash for a in i486 i686 pentium4; do for r in core extra community testing community-testing staging community-staging; do for k in '' '-lts' '-pae' '-zen'; do kernels=$( curl -Ss "https://mirror.archlinux32.org/${a}/${r}/${r}.db" \ | bsdtar -Oxf - \ | sed -n ' /^%FILENAME%/ { N s@^%FILENAME%\n@@ p } ' \ | grep "^linux${k}"'\(\|-docs\|-headers\)-[0-9]' ) || continue kernels=$( printf '%s\n' "${kernels}" \ | sed ' s/\(linux'"$k"'\)\(\|-docs\|-headers\)-\([^-]\+-[^-]\+\)-[^-]\+$/\1\2 \1 \3/ ' \ | sort -k1,1 ) errors=$( printf '%s\n' "${kernels}" \ | uniq -cf2 \ | grep -v '^\s*3\s' ) || continue echo "$a/$r/linux$k" echo "$kernels" echo done done done exit # \ | sed ' s/-\([^-]\+-[^-]\+\)-[^-]\+$/ \1/ s/\(-docs\|-headers\|\) / \1- / s@^.*/\([^/]\+/[^/]\+/[^/]\+\) \(\S\+\)$@\1 \2@ ' \ | sort -k1,1 \ | uniq -cf2 \ | sed ' s/^\s*[12]\s\+// t d ' \ | sed ' s/ \(-\S\+\)\?-/\1/ '