LINUX.ORG.RU

Ответ на: комментарий от Kindly_Cat

сходу вопросы:
1. как быть с юзами? писать в один /etc/portage/package.use
или же в /etc/portage/${CATEGORY}/${PN}/lol.use
2. как быть с ебилдами? просто устанавливать ${CATEGORY}/{$PN}
или же брать именно нужные версии
опять же - если в дереве нет нужной версии - брать из базы?
3. как быть с $C{XX}FLAGS? записывать по-пакетно
или же как-то отсортировать самые попсовые и запилить в make.conf?
4. как быть с кейвордами? попакетно или же опять как с $C{XX}FLAGS в make.conf

megabaks ★★★★
()
Ответ на: комментарий от megabaks

как быть с юзами?

Так юзы, с которыми собран пакет, есть в файле USE:

avalon test # cat /var/db/pkg/app-admin/conky-1.9.0-r1/USE
X amd64 consolekit curl elibc_glibc iostats kernel_linux multilib ncurses nvidia policykit portmon rss truetype userland_GNU weather-metar weather-xoap

Всё остальное тоже есть в соответствующих файлах.

Kindly_Cat
() автор топика
Ответ на: комментарий от megabaks

как быть с ебилдами?

Можно сделать два ключа: первый для установки строго тех же версий, второй - для установки доступных версий в случае недоступности указанной.

Kindly_Cat
() автор топика
Ответ на: комментарий от Kindly_Cat

ты не понял вопроса
с этой базой я сталкивался миллион раз - что там есть отлично знаю
вопрос был о том, что делать с данными в этой базе
например юзы:
есть USE, который содержит юзы, с которыми собран пакет
есть IUSE, который содержит все юзы пакета
ок
восстанавливаем:
все юзы из IUSE, которые не встречаются в USE, мы минусуем
получается что-то типа: foo bar -shit -ololo
что делать с этими данными?
записать в виде «${CATEGORY}/{$PN} foo bar -shit -ololo» в /etc/portage/package.use
или же
в виде «foo bar -shit -ololo» в /etc/portage/${CATEGORY}/${PN}/lol.use
вот о чём был вопрос

megabaks ★★★★
()
Последнее исправление: megabaks (всего исправлений: 1)
Ответ на: комментарий от Kindly_Cat

а с остальными вопросами чего?
особенно интересы флаги компиляторов
хотя...есть вариант достать флаги из environment.bz2 виртуалов

megabaks ★★★★
()
Ответ на: комментарий от megabaks

чот типа

CFLAGS=$(bzgrep "declare -x CFLAGS=" `ls -d /var/db/pkg/virtual/* | grep -m1 virtual`/environment.bz2 | cut -d\" -f2)

megabaks ★★★★
()

годный скрипт долго пилить
и результат потом ещё доооолго допиливать - одни кейворды чего стоят:
ACCEPT_KEYWORDS в базе нет, те KEYWORDS, что есть, берутся из ебилдов без фильтра архитектуры
т.е. тот же /etc/portage/package.keywords ты хрен восстановишь
...
жесть, короче

megabaks ★★★★
()

если не спешно (сейчас я в отпуске)-могу помочь сие сделать с помощью моей надстройки над портажом

ZuBB ★★★★★
()

Я для чего это затеял: чтобы не хранить целиком stage4, а лишь, так сказать, отпечаток, по которому можно её реконструировать.

Хотя, опять же, настройки софта теряются. Целиком каталог /etc в архив добавлять?

Kindly_Cat
() автор топика
Ответ на: комментарий от megabaks

Если бы я знал Руби, я бы не просил перечислить функции. Имена файлов в /bin мне ничего не говорят, увы.

Kindly_Cat
() автор топика
Ответ на: комментарий от Kindly_Cat

сейчас мне проще вспомнить чего точно нет :)

а нет собственно зависимостей, лицензий пакажей (сложности с парсингом; WIP), флагов с профилей, примеров как все пользовать и всякой мелочовки. мож еще что забьіл (сейчас в голове не работа :) )

ZuBB ★★★★★
()
Ответ на: комментарий от Kindly_Cat

сначала я думал так же. но потом пришло понимание.. :)

если я ничего не путаю то оно может немного? больше чем cache plugin

sorry have2go

ZuBB ★★★★★
()
Ответ на: комментарий от ZuBB

Нет, пока я занят немного другим. Тем более, мы тут пришли к выводу, что одной базы портежа для полного воссоздания системы недостаточно.

Kindly_Cat
() автор топика
Ответ на: комментарий от Kindly_Cat

что одной базы портежа для полного воссоздания системы недостаточно

ну с каталогом /etc я тебе не помогу :) а с make.conf и /etc/portage/* должно вроде как все получится

в ообщем как хочешь. мое дело — предложитьхотелось хоть как нить его потестить :)

ZuBB ★★★★★
()
Ответ на: комментарий от Kindly_Cat

Наверное, к базе пакетов придётся добавить make.conf и /etc/portage

make.conf, /etc/portage, /var/lib/portage/world, а /var/db/pkg не надо.

Lavos ★★★★★
()
Ответ на: комментарий от Lavos

при таком раскладе ничего пилить и не надо
речь же шла про /var/db/pkg only
оттуда, кстати, можно много чего вытянуть, но не всё, да

megabaks ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.