#!/bin/ash
#190801 sfs
E(){
echo "Download pkg from Historical Archive ( https://wiki.archlinux.org/index.php/Arch_Linux_Archive#Historical_Archive )
    Usage: `basename $0` -S[wdd] pkg1 pkg2 ..."
exit 1
}
[ "$2" ] || E
k="$1" ; shift ; p="$@"
[ ! "`echo "$k" |egrep "\-S"`" ] && echo "Error! Only -S support" && exit 1
pwd="`pwd`"
#pkg=
pp="`pacman $k --print-format "%n" $p 2>/dev/null`" || { echo "Пакет $p не найден. Воспользуйтесь поиском : pacman -Ss" && exit 1 ; }
read -p "Пакеты: `echo $pp`
:: Приступить к загрузке? [Y/n] " r
[ "$r" = n ] && exit 1

mkdir -p  /var/cache/pacman/pkg
cd /var/cache/pacman/pkg
#mkdir -p $pkg/pacman-a
#cd $pkg/pacman-a

for n in `echo $pp` ;do
 if [ ! "`pacman -Sp $n 2>/dev/null | egrep "^http://archive.archlinux.org"`" ] ;then
    pacman $k $n  --noconfirm #;exit
 else
    l="`pacman -Swdd $n -p 2>/dev/null`"
    if   [ "`echo $l | egrep '\-x86_64.pkg.tar.xz$'`" ] ; then 	a=x86_64
    elif [ "`echo $l | egrep '\-any.pkg.tar.xz$'`" ] ; then 	a=any
    elif [ "`echo $l | egrep '\-i686.pkg.tar.xz$'`" ] ; then 	a=i686
    fi
    nv="`pacman -Sdd --print-format "%n-%v" $n 2>/dev/null`-$a.pkg.tar.xz"
    log="/tmp/aa2pfs.log"
    wget -nv -nc --show-progress  \
	"http://archive.org/download/archlinux_pkg_$n/$nv"  \
	-o "$log" || { echo ; cat "$log" ; exit 1 ; }
 fi
done
rm $log
cd "$pwd"
[ "`echo "$k" |grep w`" ] || pacman $k $p
#mv $pkg/pacman-a/*.pkg.tar.xz $pkg/ && rmdir $pkg/pacman-a

