Ebuild repository/ru

У пользователей Gentoo Linux есть "основной" репозиторий пакетов, который в прошлом назывался "дерево Portage". Однако, этот термин следовало бы вывести из употребления, поскольку пакетные менеджеры, отличные от Portage, также могут работать с репозиториями пакетов в Gentoo. Основной репозиторий содержит все пакеты программ (называемые файлами ebuild), которые курируются разработчиками Gentoo. Остальные деревья пакетов обычно доступны посредством репозиториев. Пользователи могут добавлять дополнительные репозитории, которые "накладываются" на основное дерево — отсюда название "оверлей".

Репозитории
Репозитории пакетов являются не более (и не менее) чем наборами файлов (файлов ebuild, файлов метаданных, записей ChangeLog ...). Эти файлы можно установить из публичных репозиториев (git, cvs, svn ...) или загрузить в виде файлов tarball и распаковать вручную. Рекомендуется использовать managed репозитории trusted третьих сторон. Любой установленный оверлей заставит Portage просматривать "наложенные" оверлеем файлы, чтобы решить, какой пакет следует установить. Если оверлей содержит скомпрометированный код, то скомпрометированные пакеты могут быть установлены в системе.

The now default approach for handling repositories is through which, like many other Portage related locations, can be a directory as well.

Repository definitions inside also inform Portage if and how the repository can be updated. With it, calling will automatically update the repositories as well.

A deprecated, yet still supported method is to use the PORTDIR_OVERLAY variable inside. This variable can point to one or more additional locations on the file system where repositories are available. The use of the directory is highly preferred.

Для более подробной информации ознакомьтесь с /etc/portage/repos.conf и Portage/Sync article.

Приоритеты
Each overlay has its unique priority. This makes sure that in the case of a specific version being found in several overlays, the resolution is unambiguous. Ebuilds from overlays with higher priority numbers (for example 60) take precedence over ebuilds from overlays with lower priorities (such as 50).

The list of overlays with their priorities can be obtained through the output of the following commands (look for the "Repositories" string):

The default Gentoo Portage tree will have a priority of -1000. That means that all other overlays generally take precedence as they are assigned a higher priority. That is the default behavior, because overlays are designed to "lay over/on top" of the portage tree.

Available software
Некоторые утилиты поддерживают или специально создавались для оверлеев.

Layman
The application makes it easier to manage and update multiple additional overlays. It is a command-line application through which publicly available overlays can be listed, subscribed to and unsubscribed from, as well as update those repositories.

It supports both the as well as  method.
 * When using the method,  manages a dedicated configuration file which should be sourced in by
 * When using, manages the  file directly

Для более подробной информации ознакомьтесь с Layman и Project:Portage/Sync.

emaint
Смотрите статью Project:Portage/Sync и.

eix
is a wrapper starting (which in turn starts ) followed by. For further details see the Eix article and.

Emerging a duplicate package
When working with overlays it is possible to encounter a situation where multiple versions of the same package are available from different overlays. Instruct Portage to install a specific package from a specific overlay with the  notation:

Создание кэша
When large overlays are installed, portage may take a long time to perform operations like dependency resolution. This is because overlays do not usually contain a metadata cache.

Generate a local metadata cache by running after syncing the overlays:

Be careful, because takes a lot of time and it's not recommended for rsync users as rsync updates the cache using server-side caches (most of users of portage are rsync users). Rsync users should simply run (or ) to regenerate the cache. It's probably only users of very large overlays should try.

Masking when using unsafe overlays
When using huge overlays or those with unknown/low quality it is best practice to hardmask the whole overlay.

После этого размаскируйте пакеты, которые необходимо установить.

Смотрите также

 * Overlays project - The official Gentoo project for overlays support.
 * Overlays guide (Overlay project) - A user guide written by the Overlay project.
 * Developer's guide to Gentoo overlays

Внешние ресурсы

 * https://overlays.gentoo.org
 * https://github.com/gentoo/