eselect/repository

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Eselect/Repository and the translation is 96% complete.
Outdated translations are marked like this.

eselect-repository — это модуль eselect для конфигурирования репозиториев ebuild-файлов для Portage. Конфигурационные файлы для репозиториев хранятся в /etc/portage/repos.conf.

См. также
Для более подробной информации об опциях запустите man repository.eselect.
Заметка
Эта утилита заменяет layman в качестве утилиты для перечисления, конфигурации и синхронизации дополнительных репозиториев. Тем не менее, остались некоторые ситуации, когда layman может дополнить eselect-repository, например, при использовании систем контроля версий, которые Portage не может синхронизировать (к примеру, darcs и g-sorcery).

Утилита eselect-repository написана и сопровождается разработчиком Gentoo Michał Górny (mgorny) .

Установка

Emerge

root #emerge --ask app-eselect/eselect-repository

Конфигурация

Первоначальная настройка

Для работы модуля должен существовать каталог или файл repos.conf, путь к которому задаётся переменной REPOS_CONF в /etc/eselect/repository.conf. В соответствии с Руководством Gentoo желательно выбрать вариант с каталогом, в противном случае не будут работать некоторые инструмены:

root #mkdir -p /etc/portage/repos.conf

Файлы

Пути и параметры могут быть изменены в /etc/eselect/repository.conf. Этот файл хорошо задокументирован и через приведенные в нем комментарии.

Использование

Совет
Репозитории могут быть синхронизированы уже после конфигурации, используя утилиту emaint в Portage:
root #emaint sync -r foo

repos.gentoo.org

Gentoo позволяет пользователям и разработчикам регистрировать репозитории на repos.gentoo.org для публичного использования. eselect repository может скачивать этот список известных репозиториев и обрабатывать его.

Просмотр списка репозиториев ebuild-файлов, зарегистрированных в repos.gentoo.org

eselect repository может вывести список всех репозиториев с repos.gentoo.org:

user $eselect repository list
Available repositories:
  [1]   foo
  [2]   bar
  [3]   baz
  [4]   cross #
  [5]   good *
  [6]   my_overlay @
  • Суффикс * указывает, что этот репозиторий установлен и включен.
  • Суффикс # указывает, что для этого репозитория необходимо обновить их информацию о синхронизации (путём выключения и включения), или они были настроены пользователем.
  • Суффикс @ указывает, что такой репозиторий не указан по имени в официальном, опубликованном списке.


Используйте опцию -i, чтобы перечислить только сконфигурированные репозитории:

user $eselect repository list -i

Добавление репозиториев ebuild-файлов с repos.gentoo.org

Синтаксис: enable (<название>|<индекс>)...

root #eselect repository enable foo bar baz

Добавление репозиториев

Todo:

  • перечислить и объяснить доступные методы синхронизации.


Синтаксис: add <название> <метод-синхронизации> <адрес-синхронизации>

root #eselect repository add test git https://github.com/test/test.git
Заметка
Если репозиторий ebuild-файлов добавляется в первый раз, его необходимо синхронизировать перед использованием.
Предупреждение
Хотя Gentoo репозиторий ebuild-файлов и заполняется или проверяется разработчиками Gentoo, а GURU репозиторий находится под их надзором, это не всегда так для других репозиториев ebuild-файлов. Есть вероятность, что некоторые репозитории могут содержать уязвимые, плохо работающие или, теоретически, даже вредоносные программы.

Отключение репозиториев без удаления содержимого

Синтаксис: disable [-f] (<название>|<индекс>)...

root #eselect repository disable foo bar

Опция -f требуется для репозиториев, не зарегистрированных на repos.gentoo.org, или без информации о синхронизации. Используйте её с осторожностью.

Отключение репозиториев с удалением содержимого

Синтаксис: remove [-f] (<название>|<индекс>)...

root #eselect repository remove bar baz

Опция -f требуется для репозиториев, не зарегистрированных на repos.gentoo.org, или без информации о синхронизации. Используйте её с осторожностью.

Создание нового репозитория ebuild-файлов

Подкоманда create создаст каркас репозитория ebuild-файлов и сконфигурирует его для Portage:

Синтаксис: create <название> [<путь>]

root #eselect repository create <название_репозитория>
Adding <название_репозитория> to /etc/portage/repos.conf ...
Repository <название_репозитория> created and added

См. также