Local Distfiles (Скачивание всех исходников для каждого ebuild'a в портежах и оверл)
Модератор: /dev/random
Local Distfiles
Подскажет может кто, как скачать все исходники в distfiles для каждого ebuild'a в портежах и оверлеях?
Re: Local Distfiles
А как тот же яндекс делает зеркало distfiles ?
- /dev/random
- Администратор
- Сообщения: 5289
- ОС: Gentoo
Re: Local Distfiles
serzh-z дал верную ссылку.
Подытожу:
Я использую этот скрипт для этих целей. Скрипт считывает простенький текстовый конфиг со списком ebuild'ов (и USE флагов для них), которые нада закачать, и оформляет список закаченых тарболлов (плюс делит по категориям в разные списки, если требуется).
Если интересно, могу расписать подробней и выдать готовое решение для Вашего случая.
Только возникает вопрос: для каких целей Вам это ? :-/
Подытожу:
Я использую этот скрипт для этих целей. Скрипт считывает простенький текстовый конфиг со списком ebuild'ов (и USE флагов для них), которые нада закачать, и оформляет список закаченых тарболлов (плюс делит по категориям в разные списки, если требуется).
Если интересно, могу расписать подробней и выдать готовое решение для Вашего случая.
Только возникает вопрос: для каких целей Вам это ? :-/
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
*offtopic* - ololo!
Re: Local Distfiles
ebuild файл.ebuild fetch не оно?
довольно просто написать скрипт используя следующую команду:
find /usr/portage \( -name "*.ebuild" \)
просто выполнить цикл
ну или составить list файл и с помощью sed добавить к перечню файлов команды ebuild $1 fetch, и если надо одновременно по несколько файлов качать, тогда по идее можно самое простое разделить list файл на равное чило файлов зделать исполняемыми, и выполнить их ./file1.sh>log1&./file2.sh>log2&file3.sh>log3
довольно просто написать скрипт используя следующую команду:
find /usr/portage \( -name "*.ebuild" \)
просто выполнить цикл
ну или составить list файл и с помощью sed добавить к перечню файлов команды ebuild $1 fetch, и если надо одновременно по несколько файлов качать, тогда по идее можно самое простое разделить list файл на равное чило файлов зделать исполняемыми, и выполнить их ./file1.sh>log1&./file2.sh>log2&file3.sh>log3
Re: Local Distfiles
xorader писал(а): ↑19.03.2010 17:59serzh-z дал верную ссылку.
Подытожу:
Я использую этот скрипт для этих целей. Скрипт считывает простенький текстовый конфиг со списком ebuild'ов (и USE флагов для них), которые нада закачать, и оформляет список закаченых тарболлов (плюс делит по категориям в разные списки, если требуется).
Если интересно, могу расписать подробней и выдать готовое решение для Вашего случая.
Только возникает вопрос: для каких целей Вам это ? :-/
Да просто, чтобы локальное зеркало было в конторе, ибо не у всех серверов есть доступ к сети,а оверлеи так же используются и как назло в самый неподходящий момент какой-то distfile не находится в зеркале и приходится его качать с другого севера и тратить время.
Спасибо ormorph. Об этом я как то не подумал...Мне то пришла в голову написать скрипт поиска ebuild, определить версии программ и передать все это emerge c опцией -f, но этот метод не так красив)
Что-то типа такого должно сгодиться:
Код: Выделить всё
find /usr/portage/ -name "*.ebuild"|xargs -I {} ebuild {} fetch
find /var/lib//layman/ -name "*.ebuild"|xargs -I {} ebuild {} fetch
Re: Local Distfiles
minder писал(а): ↑20.03.2010 22:02...
Спасибо ormorph. Об этом я как то не подумал...Мне то пришла в голову написать скрипт поиска ebuild, определить версии программ и передать все это emerge c опцией -f, но этот метод не так красив)
Что-то типа такого должно сгодиться:
Код: Выделить всё
find /usr/portage/ -name "*.ebuild"|xargs -I {} ebuild {} fetch find /var/lib//layman/ -name "*.ebuild"|xargs -I {} ebuild {} fetch
Как сделаете - скажите плз, сколько сейчас полное зеркало весит ? 40-50Gb ?
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
*offtopic* - ololo!
- /dev/random
- Администратор
- Сообщения: 5289
- ОС: Gentoo
Re: Local Distfiles
Shell
$ lftp distfiles.gentoo.org -e 'du gentoo/distfiles; exit'
0 gentoo/distfiles/cvs-src
128148 gentoo/distfiles/public_html
109 gentoo/distfiles/sword/mods.d
27575 gentoo/distfiles/sword/zip
27684 gentoo/distfiles/sword
114032368 gentoo/distfiles
Т.е. ~109G
Спасибо сказали:
Re: Local Distfiles
OMG... в два раза (примерно) потолстело за два года!
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
*offtopic* - ololo!
Re: Local Distfiles
minder писал(а): ↑20.03.2010 22:02Что-то типа такого должно сгодиться:
Код: Выделить всё
find /usr/portage/ -name "*.ebuild"|xargs -I {} ebuild {} fetch find /var/lib//layman/ -name "*.ebuild"|xargs -I {} ebuild {} fetch
В этом случае будут вытягиваться все версии, а нужна, насколько я понял, последняя. Тогда уж лучше искать каталоги с ебилдами, выдёргивать из них последнюю пару, чтобы получалось app-smthng/program, и скармливать это emerge -f.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
Re: Local Distfiles
В этом случае будут вытягиваться все версии, а нужна, насколько я понял, последняя. Тогда уж лучше искать каталоги с ебилдами, выдёргивать из них последнюю пару, чтобы получалось app-smthng/program, и скармливать это emerge -f.
В итоге, всё что Вам нужно не скачается по многим причинам (разные USE-флаги, разные архитектуры, маски, локали, фазы луны,....)
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
*offtopic* - ololo!
Re: Local Distfiles
Может и так. Ну тогда просто делать зеркало и не заморачиваться с поиском ебилдов и скармливанием их ebuild <...> fetch - результат должен быть одинаковым.
Компьютер служит для решения тех проблем, которых до изобретения компьютера не существовало
- /dev/random
- Администратор
- Сообщения: 5289
- ОС: Gentoo
Re: Local Distfiles
Black писал(а): ↑22.03.2010 15:14minder писал(а): ↑20.03.2010 22:02Что-то типа такого должно сгодиться:
Код: Выделить всё
find /usr/portage/ -name "*.ebuild"|xargs -I {} ebuild {} fetch find /var/lib//layman/ -name "*.ebuild"|xargs -I {} ebuild {} fetch
В этом случае будут вытягиваться все версии, а нужна, насколько я понял, последняя. Тогда уж лучше искать каталоги с ебилдами, выдёргивать из них последнюю пару, чтобы получалось app-smthng/program, и скармливать это emerge -f.
как раз нужны все версии, ибо разные архитектуры и KEYWORDS используются.
Re: Local Distfiles
не совсем так, на ftp обычно присутствуют исходники более чем для одного дерева портов, будет качатся много лишнего.
ну и тут сказанно что используются еще и оверлеи, следовательно этих пакетов не будет на ftp.
Re: Local Distfiles
На зеркалах много того, чего нет в офиц.дереве. Например, KDE-3.
У меня получилось 111G с оверлеями:
hardened-development
jmbsvicetto
jokey
kvm
powerpc
sabayon
sunrise
vmware
voip
vps
webapps-experimental
wschlich-testing
xen
zugaina
У меня получилось 111G с оверлеями:
hardened-development
jmbsvicetto
jokey
kvm
powerpc
sabayon
sunrise
vmware
voip
vps
webapps-experimental
wschlich-testing
xen
zugaina
Спасибо сказали: