Руководство начинающего мейнтейнера ALT Linux Team

Материал из ALT Linux Wiki

У каждого пакета в Sisyphus есть один или несколько мейнтейнеров — это те участники ALT Linux Team, которые собирают новые версии пакета, следят за ошибками, которые заводят пользователи в багтракере и общаются с upstream-разработчиками программы.

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

Обязанности мейнтейнера

  • Следить за современностью и актуальностью поддерживаемых им пакетов,
  • Незамедлительно исправлять ошибки, связанные с безопасностью по первому запросу из ALT Security Team,
  • По мере возможности исправлять ошибки, связанные с некорректным функционированием программ,
  • По мере возможности участвовать в списках рассылки ALT Linux Team

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

Участие в разработке софта, входящего в пакет, желательно (это дает возможность иметь в дистрибутиве самую свежую, но при этом рабочую версию софта, а также повышает оперативность исправления ошибок), но не обязательно.

Приём новых участников в ALT Linux Team

Если вы считаете, что какого-то пакета в Сизифе не хватает, или что какой-то пакет заслуживает большего внимания и готовы заняться им — значит, настало время присоединиться к команде ALT Linux Team.

Первым делом нужно уведомить команду о своём желании, создав в Bugzilla «баг» в разделе «Development», компоненте «Вступление в ALT Linux Team». Такие «баги» читает специальный член команды — секретарь.

В этом «баге» нужно написать несколько слов о том, чем вы намерены заняться в ALT Linux Team («собрать для начала такой-то пакет, а потом, если получится, ещё пакеты из такой-то области», «просто помочь со сборкой чего-нибудь», «научиться собирать пакеты» и т. п.).

Помимо намерений, секретарю для включения вас в команду разработчиков нужна ещё следующая информация:

  • псевдоним (имя пользователя) участника. Выбирается им самим, если ещё не принадлежит существующему участнику. Его длина должна быть по возможности минимальной и он не должен содержать цифры.
  • адрес почты, на который будет производиться пересылка с адреса псевдоним@altlinux.org.
  • SSH-ключ (RSA 2048bit или DSA 1024bit). Принимающему нужна публичная часть ключа. Этот ключ будет использоваться для SSH-доступа на ресурсы Sisyphus (incoming, git.alt и другие).
  • GPG-ключ (DSA и ElGamal 1024bit). В ключе должен быть uid вида псевдоним@altlinux.org. Принимающему нужна публичная часть ключа. Этот ключ будет использоваться для подписи пакетов и для удостоверения личности в почте.

Ключи должны быть приложены к «багу» в виде приложений (attachments).

Если у вас нет ssh- или GPG-ключа, прочтите статью «Работа с ключами разработчика».

После получения необходимой информации секретарь создаёт email-адрес, а также назначает одного из существующих мейнтейнеров в помощь новому участнику: назначенный менйтейнер (ментор) помогает новому участнику собирать пакеты, проверяя корректность пакетирования, а также заливает собранные пакеты от своего имени в репозиторий.

После того, как новый участник освоился с инструментарием, научился совместно работать над пакетами (в частности, с ментором), а также освоил основные правила пакетирования, ментор уведомляет об этом секретаря, и тот выдаёт полный доступ в git.alt, а также доступ в incoming. Начиная с этого момента новый участник становится полноправным членом команды.

Ресурсы для начинающего мейнтейнера

Sisyphus
раздел ALT Linux Wiki, содержащий большое количество информации о различных аспектах Сизифа, в частности:
Работа с ключами разработчика
ключи идентифицируют разработчика. Прочтите внимательно!
policy
нормативные документы разработки (в процессе формирования)
Spec, SpecTips, TypicalPackagingErrors
информация о том, как собираются пакеты (в процессе упорядочения)
hasher
инструмент для сборки пакетов
sisyphus_check
инструмент для проверки пакетов на соответствие правилам Сизифа
Incoming
ресурс для отправки пакетов в Сизиф
ACL
управление совместной работой над пакетами
git.alt
хостинг git-репозиториев для хранения исходного кода пакетов Сизифа, а также интерфейс управления ACL
gear
инструмент для хранения исходного кода пакетов в git-репозиториях