Документ взят из кэша поисковой машины. Адрес оригинального документа : http://uneex.mithril.cs.msu.su/static/AltDevBook/alt/ch02s03.html
Дата изменения: Mon Sep 26 12:35:53 2011
Дата индексирования: Tue Oct 2 00:24:34 2012
Кодировка: koi8-r
Документы для разработчиков ALT Linux

Sisyphusљ— основной репозиторий пакетов ALT Linux Team

Sisyphusљ— это основной репозиторий пакетов ALT Linux Team. Все наработки участников ALT хранятся здесь.

Минимальная единица храненияљ— пакет. Пакет может быть бинарным (содержать исполняемые модули) или с исходным кодом.

Формат пакета един для всего репозитория

  • На данный момент основным форматом является RPM;

  • Бинарные пакеты собираются под архитектуру i586;

  • Поле Vendor должно содержать "ALT Linux Team";

  • Обязательно должен быть Changelog с заголовком в формате

    <дата> <мантейнер> <его e-mail> <номер версии и сборки (release)>

  • Обозначение сборки должно быть в формате alt<номер> для новых пакетов и ipl<номер>mdk для старых, переименование со стандарта ipl*mdk на alt* может происходить только при увеличении версии пакета или при переписывании программы заново;

Для каждого пакета определен один или несколько мантейнеровљ— участники ALT, которые следят за его актуальностью и работоспособностью (об обязанностях мантейнеров см. соответствующий раздел данного HOWTO). В каждом пакете есть поле, указывающее на его мантейнера.

Замечание

На данный момент поле Packager в формате RPM указывает либо на мантейнера (в случае, когда он один), либо на последнего собиравшего пакет (в случае групповой разработки).

Sisyphus может подразделяться на несколько репозиториев. На данный момент существуют:

  • Основной репозиторий, собственно Sisyphus;

  • репозиторий contribљ— сюда попадают все новые и не проверенные пакеты;

  • репозиторий classicљ— объединяет все пакеты, имеющиеся как в основном репозитории, так и в contrib. Создан для обратной совместимости со старой схемой Sisyphus (до 1 июня 2002);

  • Собрание устаревших пакетов (obsoletes)љ— сюда попадают пакеты с исходным кодом программ, которые морально устарели и в силу этого уже не пересобираются в современном окружении, или которые вытеснены другими (более современными пакетами). Последнее возможно только по личному пожеланию мантейнера (об этом чуть позже);

  • Собрание неподдерживаемых пакетов (unsupported)љ— пакеты, которые в силу каких-либо причин (чаще всего это лицензионные ограничения) ALT Linux Team не может поддерживать в полном объеме. Пакеты могут присутствовать как в виде бинарных, так и в виде пакетов с исходным кодом. В отдельных случаях исходный код может отсутствовать в пакетељ— это готовая заготовка, из которой вы можете собрать бинарный пакет;

  • Собрание заброшенных пакетов (orphaned)љ— пакеты с исходными текстами, которые на данный момент не поддерживаются. Если вы не знаете, за какой пакет взяться, то посмотрите прежде всего в этот каталог;

ALT Linux Team не гарантирует работоспособности входящих в Sisyphus пакетов. Это полет мысли, текущая разработка, а не готовый к употреблению дистрибутив.

Если мантейнер совершенно не уверен в качестве своей программы и опасается класть ее в Sisyphus, то существует отдельный репозиторий для таких «экстремальных» пакетовљ— Daedalus. На данный момент туда зачастую попадают нестабильные сборки и alpha-версии пакетов.

Для каждого пакета существует четко определенная схема попадания в репозиторий. Исходной точкой является incoming, конечнойљ— репозиторий Sisyphus. Маршрут определяется используемой на данный момент технологией.

Перед тем, как попасть в Sisyphus, пакет обязательно проходит ручную проверку специально выделенными для этого участниками ALT (incominger). Пакет проверяется на качество и соответствие правилам сборки и ему может быть отказано в доступе в репозиторий. Если пакет не прошел какой-либо из участков маршрута в репозиторий, то мантейнеру посылается уведомление об этом с указанием причины.

Для каждого репозитория Sisyphus может существовать отдельный incominger.

Пакет может поменять своего мантейнера по одной из следующих схем:

  • Если он находится в orphaned более одной недели, то пакет можно взять без чьего-либо разрешения. Перед тем, как положить этот пакет в incoming, его необходимо пересобрать с увеличением номера версии или релиза;

  • Если пакет не находится в orphaned, то пакет можно взять, получив разрешение у текущего (последнего) мантейнера или группы оных (определяется по полю Packager);

  • Если мантейнер не откликается после 5 запросов, то пакет автоматически переходит в orphaned;

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

  • Основной

  • contrib

  • orphaned

  • unsupported

  • obsoletes

Перемещение пакета из менее надежного репозитория в более надежный может происходить только после ручной проверки проверяющим (incominger) более надежного репозитория.

Перемещение из более надежного репозитория в менее надежный может происходить автоматически.