Ebuild repository/ru

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

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

В настоящее время, по умолчанию работа с репозиториями осуществляется посредством. Как и в других случаях при работе с Portage, это может быть файл или каталог.

Определения репозиториев в также сообщают Portage, следует ли обновлять тот или иной репозиторий, и если следует, то каким образом. Все репозитории, которые следует обновлять, автоматически обновляются при вызове команды.

Устаревший и не рекомендуемый к использованию, но все еще поддерживаемый способ работы с репозиториями — посредством переменной PORTDIR_OVERLAY в файле. Эта переменная может указывать на одно или более мест в файловой системе, где расположены репозитории. Настоятельно рекомендуется использовать каталог.

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

Приоритеты
У каждого репозитория ebuild-файлов есть уникальный приоритет. Таким образом реализуется недвусмысленное разрешение пакетов, даже если одна и та же версия пакета находится в нескольких репозиториях ebuild-файлов. Файлы ebuild из репозитория ebuild-файлов с более высоким приоритетом (например, 60) предпочитаются файлам ebuild из репозитория ebuild-файлов с более низким приоритетом (например, 50).

Список репозиториев ebuild-файлов и их приоритеты можно получить из вывода следующих команд (найдите строку "Repositories"):

Gentoo репозиторий имеет приоритет -1000. Это означает, что другие репозиториии ebuild-файлов имеют старшинство, поскольку им присвоен более высокий приоритет. Это поведение используется по умолчанию, так как идея репозиториев ebuild-файлов заключается в том, чтобы "накладываться/перекрывать" Gentoo репозиторий.

Доступное программное обеспечение
Некоторые утилиты поддерживают или специально создавались для репозиториев ebuild-файлов.

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

Оно поддерживает как метод, так и метод.
 * При использовании метода, работает с отдельным конфигурационным файлом, который читается файлом
 * При использовании метода, работает непосредственно с файлом

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

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

eix
— обертка, запускающая команду (которая в свою очередь запускает команду ) и затем. Подробнее читайте в статье Eix и в.

Установка пакета, имеющего дубликаты
When working with ebuild repositories it is possible to encounter a situation where multiple versions of the same package are available from different ebuild repositories. Instruct Portage to install a specific package from a specific ebuild repository with the  notation:

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

Generate a local metadata cache by running after syncing the ebuild repositories:

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 ebuild repositories should try.

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

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

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

 * Overlays project - The official Gentoo project for ebuild repositories' support.
 * Overlays guide (Overlay project) - A user guide written by the Overlay project.
 * Developer's guide to Gentoo overlays - This document is kept only for historical purposes. The current guide is maintained as Project:Overlays/Overlays guide.
 * Defining a custom repository - Section in the Gentoo Handbook

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

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