Как безопасно пользоваться оверлеями.

Я часто встречаю пользователей Calculate и Gentoo опасающихся пользоваться оверлеями. Обычно это связано с тем, что более “свежие” пакеты из оверлеев начинают перекрывать пакеты из основного оверлея, portage. Пользователям calculate это ломает бинарный профиль, он во многом перестаёт быть бинарным, более “продвинутым” пользователям нестабильной ветки и классическим гентушникам иногда ломает систему вообще :slight_smile:

Для решения этой проблемы ранее применялся “грязный хак”, с выносом оверлеев layman за пределы поля зрения portage и мягкой линковкой каталога нужного пакета из “опасного” оверлея в “/usr/local/portage”. Этот метод имеет ряд недостатков, например в случае Calculate к правке конфигов layman и portage придётся подойти более вдумчиво, так как вся calculate специфика живёт в оверлее. К тому же ряд нужных Вам пакетов из оверлея могут отказаться устанавливаться будучи слинкованными в local оверлей, их ebuild скрипты могут использовать eclass из подключаемого оверлея. А поскольку он у нас “вне поля зрения” portage, то и eclasses этого оверлея ему неизвестны.

К счастью современное решение изящно и очень просто:

* Подключите оверлей, например kde.

layman -a kde

* Замаскируйте все пакеты оттуда по маске.

echo "*/*::kde" >> /etc/portage/package.mask/custom

* Размаскируйте нужный Вам пакет. Например:

echo "kde-misc/veromix::kde" >> /etc/portage/package.unmask/custom

* Если нужный Вам пакет только “~”, а Вы на stable, не забудьте высказаться ещё и в package.keywords

echo "kde-misc/veromix ~amd64" >> /etc/portage/package.keywords/custom

Как видите ничего сложного. Счастливого Вам плавания по океану оверлеев:

layman -L

Спасибо, полезная инфа. А таким образом можно же блокировать какой-нибудь пакет из основного оверлея в пользу добавленого или локального?

Serega K. писал(а):

Спасибо, полезная инфа. А таким образом можно же блокировать какой-нибудь пакет из основного оверлея в пользу добавленого или локального?

Да, блокируете в /etc/portage/package.mask/custom . Основной оверлей называется gentoo. Например заблокируем mplayer в основном оверлее:

echo media-video/mplayer::gentoo >> /etc/portage/package.mask/custom

Здравствуйте.
Необходимо подключить оверлей, а именно, bar-overlay, т.к. нужно установить драйвер для МФУ Canon PIXMA 2440.
До 2014-11-07 оверлей был доступен через http://gpo.zugaina.org. В настоящее время это не так.
Стоит ли ждать восстановления доступа к оверлею или придётся самостоятельно писать ebuild к cnijfilter-source-4.00-1.tar.gz (исходный файл драйвера принтера IJ, версия 4.00)?

bar-overlay гуглится, через layman подключается. layman -a bar-overlay. Есть в нём нужный вам ebuild или нет я не знаю, так как вы не сказали название ebuilda и его категорию, в смысле в какой директории его искать хотя бы.

До 2014-11-07 оверлей был доступен через http://gpo.zugaina.org. В настоящее время это не так.

Жизнь - боль…

Стоит ли ждать восстановления доступа к оверлею

Я не могу ответить на этот вопрос, поскольку не являюсь владельцем gpo.zugaina.org.

Спасибо за ответ.
Уточняю, что речь идёт о ebuild’е “cnijfilter-4.00.ebuild”, который ранее можно
было найти в bar-overlay.
Попробую подключить bar-overlay и далее как у вас написано раньше.
Если не получится (тьфу-тьфу), то остаётся воспользоваться подсказками из
http://gentoo.theserverside.ru/book/gentoo-rpm.html
P.S.
Действительно bar-overlay нашёлся. Обнадёживает. Можно будет попробовать создать и local overlay.
Ещё раз спасибо.