Пересборка всего мира
Несколько раз сталкивался с проблемой, но решал вручную с большой кровью и вот решил обсудить как это сделать правильно.
1. Имеем полную пересборку world: emerge -e world ( допустим 1400 пакетов )
2. Сборка падает на пакете номер 1000 app-accessibility/speakup ( собирается с ядрами <= 2.6.35 у меня 2.6.36 но давайте это опустим )
3. я решаю что этот пакет мне не нужен, сношу его emerge -C app-accessibility/speakup
4. продолжаю сборку emerge --resume --skipfirst, но тут засада: далее(где-то в середине списка) есть другой пакет, которые требует наличия speakup и сборка не может быть продолжена.
И как дальше быть?
Один из способов решения подобной проблеммы - собрать хоть как-нибудь проблемный пакет потом --skipfirst а ПОСЛЕ всего удалить ненужное, но сейчас собрать этот пакет вручную неполучается...
Второй - использовть emergre -bk для сборки в бинарники, и НЕ использовать resume, но это выглядить странно - переставлять ~1000 пакетов из бинарей при какой-нибудь ошибке...
Что хотелось бы: уметь делать skip не только первому пакету, но и списку(яб тогда добавил ненужное в этот список), или на худой конец руками отредактировать resume list
И вдогонку хочется узнать способ как пропустить 'resume list' когда у меня 2-е или 3-и прерваных сборки, а я хочу продолжить первую ?
- Для комментирования войдите или зарегистрируйтесь
--keep-goingиз man emerge
--keep-going
изman emerge
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
да, забыл, но это немного
да, забыл, но это немного другая направленность - он пройдет до самого конча а потом разбирай что и почему не собралось, а потом пересобирать несобранные пакеты(когда их будет сотня) не очень приятная задача.
Пока ждал ответов продолжил
Пока ждал ответов продолжил копать и отрыл как можно вручнцю редактировать resume list:
http://forums.gentoo.org/viewtopic-p-3861491.html
Для ленивых потомков:
При копировании могут возникать проблемы с отступами(возможно потребуется ручное редактирование) - будьте внимательны.
...
Если пакеты не критичные — я их удаляю и засовываю в portage.mask, после чего продолжаю пересборку
emerge --resume
Portage ругается, конечно, но раз замаскирован — делать нечего, приходится пересобирать то, что есть.