Руководство начинающего мейнтейнера 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.

Первым делом нужно уведомить команду о своём желании, написав письмо на адрес join@altlinux.org. Такие письма читают специальные члены команды — принимающие.

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

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

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

После получения необходимой информации принимающий вышлет небольшое тестовое задание и при успешном его выполнении выдаст доступ в incoming и git.alt.

На первый период принимающий назначает одного из существующих мантейнеров в помощь новому участнику.

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

Sisyphus
раздел ALT Linux Wiki, содержащий большое количество информации о различных аспектах Сизифа
rpm
пакетный менеджер и набор инструментов
hasher
инструмент для сборки пакетов
Incoming
ресурс для отправки пакетов в Сизиф и для управления правами на отправку пакетов
git.alt
хостинг git-репозиториев для хранения исходного кода пакетов Сизифа
gear
инструмент для хранения исходного кода пакетов в git-репозиториях

Работа с ключами

При приеме участник предоставляет два криптографических ключа, по которым он идентифицируется в дальнейшем. Берегите свои приватные ключи!

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

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

Создание SSH-ключа

Если у вас нет SSH-ключа, то создать его можно следующей командой:

$ ssh-keygen

Ключ настоятельно рекомендуется сделать с паролем. Для упрощения работы с ключами с паролями можно воспользоваться SSH-агентом.

Публичная часть ключа — файл ~/.ssh/id_dsa.pub.

Создание GPG-ключа

Создать новый GPG-ключ можно командой

$ gpg --gen-key

В процессе ответа на вопросы выберите тип ключа - DSA и ElGamal (можно выбрать только DSA, но тогда этот ключ будет непригоден для шифрования), размер - 1024bit. В качестве email укажите псевдоним@altlinux.org.

Модификация существующего GPG-ключа

Проверьте, что тип ключа - DSA и ElGamal, размер 1024bit. Добавьте идентификатор в ключ с помощью команд

$ gpg --edit-key <key id>
Command> adduid

Укажите своё имя и email вида псевдоним@altlinux.org, после чего сохраните изменения

Command> save

И экспортируйте публичную часть ключа для отправки:

$ gpg --armor --export псевдоним@altlinux.org