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

Содержание

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

The rewrite of this tutorial document with updated contents and more practical examples is available as Guide for Debian Maintainers. Please use this new tutorial as the primary tutorial document.

Debian now requires source-only uploads for normal upload. So this page is outdated.

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

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

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

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

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

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

$ dupload gentoo_0.9.12-1_i386.changes

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

Если при отправке в ftp://ftp.upload.debian.org/pub/UploadQueue/ возникли проблемы, то вы можете исправить их вручную загрузив туда файл *.commands, подписанный GPG, с помощью ftp [86]. Например, используя 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"


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

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

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