[solved] Пересборка установленного пакета (package-only USE changing), но ebuild'а уже нет в актуальном дереве
Коллеги добрый день!
Я извинияюсь за возможный повтор ситуации, но что-то моих скилов поиска в гугле и здесь не хватает для решения вопроса.
Прошу ткнуть носом, если таковая тема уже существует.
Преамбула:
Есть сервак. Его обновления далеко не очень частые. За новшествами не гонимся.
Главное в использовании сервака - это стабильность работы (keyword="amd64").
Но новшества случаются и дерево время от времени приходится обновлять.
И случислось так, что установленный пакет (некоторой версии), уже исчез из текущего дерева (ebuild исчез).
Я не буду говорить название пакета, для моего вопроса это не имеет значение.
Однако, текущей функциональности пакета (ну и что, что старый) на данный момент достаточно.
Чтобы обновиться, нужно много чего останавливать, а это, будем считать, пока невозможно.
Вопрос:
Как ПРАВИЛЬНО пересобрать старый (установленный и работающий) пакет, если его ebuild выведен из актуального дерева?
Пересборка пакета связана с изменением в USE-ах этого пакета.
Мои планируемые действия:
1. Естественно прямой emerge пошлет обновляться. Другого я и не жду. (собственно, этот вариант я испробовал).
2. Можно использовать старый ebuild, который лежит в /var/db/pkg. Можно его встроить в текущее дерево или засунуть оверлеем. Это приберегаю как запасной вариант и мне больше кажется, что это скорее обход в решении проблемы, чем ее нормальное решение.
3. По n-му разу перечитывать man-ы по emerge (+portage-utils +gentoolkit), может что-то добавили. После каждого обновления дерева, пакеты portage, portage-utils и gentoolkit в первую очередь обновляются до актуального состояния.
Подскажите правильное решение
Заранее благодарен
- Для комментирования войдите или зарегистрируйтесь
Да, лучше всего будет
Да, лучше всего будет восстановить ебилд из /var/db/pkg и собрать его с помощью emerge =foo-0.5.4
Цитата: Можно использовать
Это и есть решение проблемы(если пакет ну сильно прям нужен) - положить ебилд из /var/db/pkg в локальный оверлей
Нейтральность - высшее достижение сознания!
И тут засада от инфры - амы
И тут засада от инфры - удалили тарбoллы и патчи ;)
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
slepnoga написал(а): И тут
Патчи и тарболлы хранятся на зеркалах полгода с момента удаления ебилда из дерева. Если кто-то обновляется настолько редко, то да, это печально для него.
По теме: есть проект Graveyard - специально для таких случаев...
Нейтральность - высшее достижение сознания!
Коллеги, Спасибо!Буду
Коллеги, Спасибо!
Буду считать 3 из 3 выбрали пункт 2. Собственно по нему и буду действовать.
2slepnoga: как всегда в точку и по существу.
1. Про патчи я не беспокоюсь, уже накалывался, когда только начинал осваивать gentoo. Теперь перед каждым sync'ом (который кстати осознанный) делается бакап дерева на дату из emerge --info.
2. А вот с исходниками да... Можно попасть в неприятную ситуацию. В данном случае мне повезло, но надо подумать... Может особо важные пакеты тоже бакапировать, чтобы не терзать потом гугль?!
Коллеги, еще раз спасибо!
p.s. не знаю как пометить тему - РЕШЕНО ?А с исходниками еще проще -
А с исходниками еще проще - если вы пакет ставили, то они уже лежат в /usr/portage/distfiles - Простo не надо его чистить.
Для пущей надежности можете одновременно с каждым sync'ом (который осознанный :)) делать подгрузку исходников