Глава 9. Отправка пакета

Содержание

9.1. Отправка в архив Debian
9.2. Включение файла orig.tar.gz для отправки
9.3. Пропущенные отправки

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

После того, как вы станете официальным разработчиком [83], то сможете отправлять пакеты в архив Debian [84]. Вы можете делать это вручную, но легче воспользоваться существующими инструментами автоматизации, такими как dupload(1) или dput(1). Здесь будет рассказано как это сделать с помощью dupload [85].

Сначала, вам нужно настроить конфигурационный файл для dupload. Вы можете отредактировать системный файл /etc/dupload.conf, либо создать свой собственный файл ~/.dupload.conf, указав те настройки, которые нужно изменить.

Описание каждого параметра приведено в справочной странице dupload.conf(5).

Параметр $default_host определяет, какая из очередей отправки будет использована по умолчанию. Первичной является anonymous-ftp-master, но возможно, что вы захотите использовать другую [86].

Соединившись с Интернетом, вы можете отправить свой пакет следующим образом:

$ dupload gentoo_0.9.12-1_i386.changes

Команда dupload проверяет, что контрольные суммы SHA1/SHA256 ваших файлов совпадают с указанным в файле .changes. Если они не совпадают, она предложит пересобрать пакет (о том, как это правильно делать, смотрите раздел Раздел 6.1, «Полная (пере)сборка»).

Если при отправке в ftp://ftp.upload.debian.org/pub/UploadQueue/ возникли проблемы, то вы можете исправить их вручную загрузив туда файл *.commands, подписанный GPG, с помощью ftp [87]. Например, используя hello.commands:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Uploader: Foo Bar <Foo.Bar@example.org>
Commands: 
 rm hello_1.0-1_i386.deb
 mv hello_1.0-1.dsx hello_1.0-1.dsc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

[...]
-----END PGP SIGNATURE-----

При самой первой отправке пакета в архив, вам также потребуется добавить к нему файл с исходным кодом orig.tar.gz. Если номер редакции Debian для данной версии программы не равен 1 или 0, то вам следует указать команде dpkg-buildpackage параметр -sa.

Для команды dpkg-buildpackage:

$ dpkg-buildpackage -sa

Для команды debuild:

$ debuild -sa

Для команды pdebuild:

$ pdebuild --debbuildopts -sa

Противоположный по действию параметр -sd позволит исключить файл с исходным кодом orig.tar.gz.

If you created multiple entries in debian/changelog by skipping uploads, you must create a proper *_.changes file that includes all changes since the last upload. This can be done by specifying the dpkg-buildpackage option -v with the version, e.g., 1.2.

Для команды dpkg-buildpackage:

$ dpkg-buildpackage -v1.2

Для команды debuild:

$ debuild -v1.2

Для команды pdebuild:

$ pdebuild --debbuildopts "-v1.2"


[84] Существуют публично доступные архивы, например http://mentors.debian.net/, которые работают почти также как архив Debian и предоставляют зону для отправки людям, не имеющим статуса разработчика Debian. Вы можете создать свой архив с помощью инструментов, перечисленных в http://wiki.debian.org/HowToSetupADebianRepository. Поэтому данный раздел также будет полезен не только разработчикам Debian.

[85] Сейчас, вероятно, пакет dput имеет больше возможностей и становится более популярным, чем dupload. Для его настройки используется системный файл /etc/dput и пользовательский ~/.dput.cf. Также он поддерживается службами Ubuntu без дополнительной настройки.

[87] Смотрите ftp://ftp.upload.debian.org/pub/UploadQueue/README. Или же вы можете использовать команду dcut из пакета dput.