Это старая версия документа.


Шаг 0. Регистрация на Launchpad

Если вы уже зарегистрированы на Launchpad можете пропустить этот шаг.

Перейдите по ссылке https://login.launchpad.net/+new_account и пройдите регистрацию. Это позволит вам создавать PPA, участвовать в обсуждении багов, править переводы и многое другое.

Шаг 1. Создание цифрового ключа

Цифровым ключем в дальнейшем будут подписываться все ваши пакеты. Именно при помощи него будет подтверждаться то, что пакет был выложен именно вами, а не кем-то другим. Более подробная информация о ключах содержится в этой статье.

Сгенерируйте ключ, выполнив в терминале следующую команду:

gpg --gen-key

Укажите тип ключа DSA and Elgamal, размер ключа оставьте по умолчанию - 2048, срок - без ограничения срока действительности. Подтвердите что вы правильно ввели всю информацию. Теперь укажите свои имя и фамилию, маленький коментарий и адрес электронной почты. Подтвердите, что вся информация введена правильно. После этого программа начнет генерацию ключа. В процессе может появится надпись вроде этой:

Недостаточно случайных чисел.  Выполняйте какие-либо действия для того,
чтобы ОС могла получить больше случайных данных! (Необходимо ещё 145 байт)

Попробуйте что-то понабирать на клавиатуре и процесс пойдет дальше.

В итоге должно получится примерно следующее:

gpg: ключ B0CF7C64 помечен как абсолютно доверяемый.
открытый и закрытый ключи созданы и подписаны.

gpg: проверка таблицы доверий
gpg: 3 ограниченных необходимо, 1 выполненных необходимо, PGP модель доверия
gpg: глубина: 0  корректных:   2  подписанных:   1  доверия: 0-, 0q, 0n, 0m, 0f, 2u
gpg: глубина: 1  корректных:   1  подписанных:   0  доверия: 0-, 0q, 0n, 0m, 1f, 0u
pub   2048D/B0CF7C64 2012-05-08
      Отпечаток ключа = BF0A D1A0 94EC 9396 803B  E256 F636 0EA4 B0CF 7C64
uid                  Baba Yaga (pensioner) <yaga@deepforest.ru>
sub   2048g/BED82F5A 2012-05-08

Нас интересует первая строчка, в ней указан ID ключа. В примере ID равен B0CF7C64.

Теперь отправим публичный ключ на сервер ключей:

gpg --send-keys --keyserver keyserver.ubuntu.com B0CF7C64
На этом этапе генирируются публичный и личный ключи. Личный ключ должен находится только у вас, иначе это поставит под угрозу безопасность PPA.

Шаг 2. Принятие Code of Conduct

Code of Conduct это документ, описывающий правила поведения в сообществе Ubuntu. Без подписания этого документа у вас не будет возможности использовать некоторые функции Launchpad, в том числе и создание PPA.

  • Перейдите по ссылке https://launchpad.net/codeofconduct
  • Нажмите Register an OpenPGP key
  • В поле Fingerprint введите отпечаток ключа, полученый в результате предыдущего щага и нажмите Import Key
  • На почту придет зашифрованное письмо. Почтовые клиенты (такие как Evolution) обычно предлагают расшифровать письмо. В противном случае можно скопировать текст письма в текстовый файл и выполнить команду

    gpg --decrypt /tmp/mail.txt

    где /tmp/mail.txt - файл с письмом.

    В конце расшифрованного письма будет ссылка на Launchpad, которой вы подтвердите что вы являетесь владельцом ключа.

  • Вновь перейдите на страницу https://launchpad.net/codeofconduct и скачайте Code of Conduct по ссылке Download the current Code of Conduct.
  • Подпишите скачанный файл коммандой:

    gpg --clearsign UbuntuCodeofConduct-1.1.txt

    Это создаст подписанный вашим ключом файл UbuntuCodeofConduct-1.1.txt.asc .

  • Перейдите на страницу https://launchpad.net/codeofconduct и нажмите на ссылку Sign it!. в появившееся поле Signed Code ввода вставьте все содержимое файла UbuntuCodeofConduct-1.1.txt.asc и нажмите Continue.

Шаг 3. Создание PPA

Перейдите на страницу своего профиля на Launchpad и найдите ссылку Create a new PPA. Заполните поля Display name и URL . Поле Description не обязательно для заполнения. При заполнении помните, что пользователи будут прописывать часть строки URL при добавлении PPA, поэтому его нужно делать максимально коротким, но при этом отражающем суть PPA. Описание Descriprion, будет выводится пользователям в терминал, при добавлении PPA, поэтому тоже не усердствуйте с объемом.

Шаг 4. Загрузка пакетов в PPA

Загрузка пакетов осуществляется утилитой dput.

sudo apt-get install dput

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

dput ppa:ваш_логин/url_ppa <source.changes>

где <source.changes> – файл полученый во время подготовки исходного кода.

Ссылки