Category:Package Maintainers/ru

= Вид деятельности участника =

= Как присоединиться к майнтенерам коллекции пакетов Fedora? =

Итак, вы решили стать майнтейнером проекта Fedora? Это руководство позволит вам создать ваш первый пакет.

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

Прочитайте  Руководящие принципы создателя пакетов и   Руководящие принципы именования пакетов.

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

Создайте учётную запись Bugzilla
Убедитесь, что вы имеете учетную запись в Red Hat Bugzilla.

Почтовый адрес, который вы используете в качестве учётной записи bugzilla должен совпадать с почтовым адресом используемым в систему учётных записей Fedora для всех вещей связанных с упаковкой в Fedora.

Присоединитесь к важным спискам рассылок
Вам необходимо присоединиться к списку рассылки fedora-devel-announce@redhat.com. Это довольно тихий список, где размещается только очень важная информация, касающаяся разработки.

Вы можете присоединиться к списку рассылки fedora-devel-list@redhat.com, где обсуждаются вопросы разработки Fedora и поддержка. Это очень активный список рассылки.

Вы также можете присоединиться к списку рассылки fedora-extras-commits@redhat.com -- Данный список рассылки рассылает все уведомления обо всех фиксация всех пакетов в репозитарии Fedora. Это очень активный список рассылки. База данных пакетов Fedora отошлёт письмо с фиксацией для пакетов, которые вы собираетесь (совместно) поддерживать.

Другой список который вы можете просмотреть (хотябы его архив) -- fedora-packaging@redhat.com. Это список рассылки комитета упаковщиков Fedora, тах, кто определяет руководящие принципы касающиеся всех официальных пакетов проекта Fedora.

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

Один из способов сделать это - присоединиться к списку рассылки fedora-package-review@redhat.com ; все комментарии о предварительном просмотре пакета отсылается в этот список (вы сможете только читать сообщения в нем).

Создание пакета
Вы должны убедиться, что создаёте новый пакет. Пакет, который вы включаете в проект, должен быть свободным и открытым и не должен быть уже в составе Fedora. Вы можете просмотреть список существующих пакетов в коллекции пакетов Fedora в базе данных пакетов Fedora. Пожалуйста проверьте список  обрабатываемых и поданных на рассмотрение пакетов, содержащий список пакетов, которые нуждаются в рассмотрении или уже рассматриваются, а так же список  изъятых пакетов.


 * Если вы не знаете как создавать RPM пакеты, прочитайте Реководство по созданию пакетов.
 * Убедитесь что ваш пакет удовлетворяет  руководящим принципам для пакетов  и   руководящим принципам именования пакетов.
 * Обратите внимание  Forbidden Items и  руководящие принципы при рассмотринии пакетов  (они будут учитывать при рассмотрении пакета).

Загрузите на сервер ваш пакет
Разместите ваш SRPM и SPEC файл где-нибудь в интернете. Это может быть где угодно, доступно по URL. Если вы уже имеете учетную запись Fedora, тогда можете использовать ваше хранилице в http://fedorapeople.org для этого.

Создайте запрос на рассмотрение
Заполните эту форму: https://bugzilla.redhat.com/bugzilla/enter_bug.cgi?product=Fedora&format=extras-review.


 * Прежде чем подавать запрос на рассмотрение, убедитесь, что не существует поданных запросов на этот же пакет.
 * Убедитесь, что вы указали имя пакета (без номера версии и релиза) в поле ' ', вместе с очень коротким описанием пакета.
 * Загрузите spec файл и SRPM на публичный веб-сайт. Если вам необходимо место для хостинга, пожалуйста укажите это в запросе (ticket submission) и кто-нибудь вам поможет. Если вы уже являетесь майнтейнером пакетов Fedora, вы можете использовать http://fedorapeople.org
 * Разместите описание  вашего пакета(обычно, оно может повторять то, что вы указали в spec %description) в поле ' '. Включите  URLs на ваш SRPM и SPEC файлы. Также, объясните, что это ваш первый пакет и вам необходим поручитель (sponsor).

Что бы более детально изучить процесс подачи запроса на рассмотрение прочитайте страницу процесс подачи запроса пакета на рассмотрение.

Уведомите апстрим
Проект Fedora предпочитает оставаться как можно ближе к апстриму проектов. Уведомите разработчиков о том что вы собираетесь создавать пакет данного программного обеспечения. Вы можете отправить им письмо, в котором рассказывается кто вы такой и в котором содержится ссылка запроса на рассмотрение. Это заложит основание для будущего диалога. Они обычно размешают информацию о том что данное программное обеспечение теперь является частью Fedora или, возможно, будут уведомлять вас о серьезных ошибках в текущем выпуске, планах на будущее и т.д.

Следите за запросом
Следите за запросом в Bugzilla для вашего первого пакета. Вам должны выслать уведомление по электронной почте. Устрание любые препятствия на которые вам укажут.

Заведите учетную запись Fedora
Создайте учетную запись в системе учетных записей Fedora (Fedora Account System) (это не просто учетная запись в bugzilla)


 * 1) Посетите домашную страницу системы учетных записей Fedora: https://admin.fedoraproject.org/accounts/
 * 2) Нажмите 'New account' и заполните поля.
 * 3) После создание учетной записи, пожалуйста, убедитесь что вы подписали ЛСУ (CLA) (если вы нажмёте по ссылке "My Account" одно из полей будет иметь вид CLA: CLA Done) Note: Служащие Red Hat должны заполнить поле    вместо CLA.  Из систему учетных записей, подайте запрос на вступление в новую группу, поместите   в поле групп и нажмите Apply.  Затем попросите TomCallaway подтвердить ваше вступление.

Установите клиентские инструменты сборки (Koji)
Чтобы собрать пакеты для коллекции Fedora или EPEL, вам нужен Koji. Вам, также нужно сгенерировать клиентский сертификат в Fedora Account System и сохранить его в файле, где make-файлы (makefiles) Fedora CVS будут искать эти файлы по умолчанию.

Пакет  предоставляет инструменты, предназначенные для того, чтобы помочь в установке и работе с  fedora, поэтому установите его:

После установки запустите его, запустив установку конфигурации koji:

Теперь вы можете использовать "koji" что бы попробовать собрать пакет для платформы (например, PPC) или дистрибутива для которого пакета не существует. Отметим, что вы можете протестировать сборку ("scratch" сборки) даже когда ваш пакет еще не разрешён (approved) и вы не имеете поручителя. Это легко можно сделать при помощи koji команды: koji build --arch-override=PLATFORM --scratch TARGET path_to_source_RPM Где: <!-- Непереведённый английский текст
 * TARGET является ключевым словом обозначающим дитрибутив dist-f9 (для Fedora 9). Вы можете выполнить "koji list-targets" чтобы просмотреть список всех ключевых слов (возможных целей).  Чтобы создать сборку для следующего выпуска (rawhide), не используйте  "dist-rawhide", вместо этого используйте "dist-fX", где X на один больше чем текущий стабильный выпуск.
 * PLATFORM is a platform keyword such as i386 (32-bit), x86_64, ppc, or ppc64. You can omit --arch-override=PLATFORM, in which case koji will do test builds on all the architectures the spec file says the package supports.
 * Note that you need to supply the path to the source RPM (which ends in .src.rpm), and not a URL. (If you only have the spec file, use   to create the new source RPM).

Your koji builds can only depend on packages that are actually in the TARGET distribution repository. Thus, you can't use koji to build for released distributions if your package depends on other new packages that Bodhi hasn't released yet. You can use koji to build for rawhide (the next unreleased version), even if it depends on other new packages, as long as the other packages were built in the CVS "devel" section as described below. If you need to build against a package that is not yet a stable released update, you can file a ticket with rel-eng at: https://fedorahosted.org/rel-eng/newticket and request that that package be added as a buildroot override. For packages in EPEL, you have to use the component epel to get the request to the right persons.

Вы можете больше узнать о работе koji с помощью: koji --help           # Основная помощь koji --help-commands  # список комманд koji koji COMMAND --help   # помощь по комманде COMMAND

PackageMaintainers/UsingKoji содержит больше информации о использовании Koji.

Join the Packager group
Apply for membership in the Fedora Packager group

Get Sponsored
When the package is APPROVED by the reviewer, you must separately obtain member sponsorship in order to check in and build your package. Sponsorship is not automatic and may require that you further participate in other ways in order to demonstrate your understanding of the packaging guidelines. Key to becoming sponsored is to convince an existing sponsor-level member that you understand and follow the project's guidelines and processes.

See PackageMaintainers/HowToGetSponsored for more information on the process of becoming sponsored.

Your sponsor can approve your request and move you from "pending" to "sponsored". You should receive email confirmation of your sponsorship.

Add Package to CVS and Set Owner
Follow CVSAdminProcedure to get a CVS module for your new package and branches for recent releases.

This will be used to set up the proper records in the owners database, which is used for access to build the package, bugzilla population, and other features. This step creates a CVS module for your new package, with empty directories for each requested distribution.

Check out the module
You could check out your module now, but before doing that, consider doing "mkdir ~/cvs ; cd ~/cvs" - that way, all your files are inside that. Also, run ssh-add, so that you won't have to keep typing in your key password.

Now you are ready to checkout your module from CVS: fedora-cvs

Where  should be replaced with the name of your package.

You should now have a directory named after your package with a directory for each branch inside of it.

You can use fedora-cvs with many modules at the same time. To checkout from cvs run fedora-cvs {module names seperated by spaces}, for example: fedora-cvs konversation mysql-gui-tools snort

Import Your Package
Now that you've checked out your (empty) package module with fedora-cvs, cd into the module: cd MODULE_NAME

Run the common/cvs-import.sh script, to import the contents of the SRPM into CVS: ./common/cvs-import.sh PATH_TO_SRPM

Obviously, replace  with the full path (not URL) to your approved SRPM.

This imports into only the devel branch. You will probably also want to do additional imports using the -b parameter, which will import the package into other distribution branches like F-9, e.g.: ./common/cvs-import.sh -b F-9 PATH_TO_SRPM

The cvs-import.sh program will respond with: Checking out module: 'NAME' You may see errors like this several times, these can be ignored: buffer_get_ret: trying to get more bytes 129 than in buffer 34 buffer_get_string_ret: buffer_get failed buffer_get_bignum2_ret: invalid bignum key_from_blob: can't read rsa key key_read: key_from_blob AA.... failed But among them you should see: Unpacking source package: NAME....src.rpm... Along with a list of the source files in the source package, followed by checking and uploading of the files.

Then, you'll see "If you want to make any changes before committing, please press Ctrl-C. Otherwise press Enter to proceed to commit." Press Enter.

Finally (if you haven't set up an other editor) vi will open up to let you edit the CVS changelog. For the changelog, use the same format as the end of the .spec file. If you haven't used vi yet, after entering your changelog press 'Enter' and type :wq and press 'Enter' again to finish the import.

Tag Or Update Your Branches
Branches are # (formerly  #), , etc. So F-9 is the branch for Fedora 9.

Before a branch can be built in the Fedora Package build system, the files in that branch must be tagged in CVS. -->