Я делал так: сначала сгенерировал список всех пакетов
eix -c | awk '{print $2}' > /tmp/allpackages
затем натравил на него такой скрипт:
#!/bin/sh
# emerge-pf.sh
pkg="$*"
tmp1=`tempfile` # все URL's всех файлов
tmp2=`tempfile` # по одному URL на каждый файл
tmp3=`tempfile` # имена всех файлов
tmp4=`tempfile` # имена файлов, которых нет в /usr/portage/distfiles
tmp5=`tempfile` # URL's, которые надо закачать
if [[ -z $pkg ]]
then
echo "Usage: emerge-pf [ emerge options ] [ package | class ]"
exit 1
fi
emerge -pf $pkg 2>$tmp1 >/dev/null
for i in `cat $tmp1 | awk '{print $1}'`
do
file=`basename "$i"`
echo "$i" >> $tmp2
echo "$file" >> $tmp3
done
for i in `cat $tmp3`
do
if test ! -f $DISTDIR/$i
then
echo "$i" >> $tmp4
fi
done
for i in `cat $tmp4`
do
cat $tmp2 | grep $i >> $tmp5
done
cat $tmp5 | sort -u
rm -f $tmp1 $tmp2 $tmp3 $tmp4 $tmp5
for i in `cat /tmp/allpackages`; do ./emerge-pf.sh --nodeps $i >> /tmp/allurls; done
дальше дело техники:
cd /usr/portage/distfiles
wget -c -i /tmp/allurls
Правда генерация списка всех урлов очень долгая (. Может кто подскажет способ получше?
вопрос неочень
вопрос неочень понятен - какие версии ? стабильные, тестинг, нестабильные, альфы? снапшоты? в каждом пакете своё.
Я делал так:
Я делал так: сначала сгенерировал список всех пакетов
eix -c | awk '{print $2}' > /tmp/allpackages
затем натравил на него такой скрипт:
#!/bin/sh # emerge-pf.sh pkg="$*" tmp1=`tempfile` # все URL's всех файлов tmp2=`tempfile` # по одному URL на каждый файл tmp3=`tempfile` # имена всех файлов tmp4=`tempfile` # имена файлов, которых нет в /usr/portage/distfiles tmp5=`tempfile` # URL's, которые надо закачать if [[ -z $pkg ]] then echo "Usage: emerge-pf [ emerge options ] [ package | class ]" exit 1 fi emerge -pf $pkg 2>$tmp1 >/dev/null for i in `cat $tmp1 | awk '{print $1}'` do file=`basename "$i"` echo "$i" >> $tmp2 echo "$file" >> $tmp3 done for i in `cat $tmp3` do if test ! -f $DISTDIR/$i then echo "$i" >> $tmp4 fi done for i in `cat $tmp4` do cat $tmp2 | grep $i >> $tmp5 done cat $tmp5 | sort -u rm -f $tmp1 $tmp2 $tmp3 $tmp4 $tmp5for i in `cat /tmp/allpackages`; do ./emerge-pf.sh --nodeps $i >> /tmp/allurls; done
дальше дело техники:
cd /usr/portage/distfiles
wget -c -i /tmp/allurls
Правда генерация списка всех урлов очень долгая (. Может кто подскажет способ получше?
Спасибо.
Спасибо. Будем качать.
Кстати а есть
Кстати а есть такая комманда которая выдаёт ссылки для скачивания из ebuild -ов?
emerge -fp man emerge
emerge -fp
man emerge