Как мне упаковать свое приложение для Ubuntu Software Center?

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

Я работаю над отправкой приложения в магазин приложений Ubuntu. Документация по упаковке немного расплывчата, говоря не больше, чем о том, что она должна быть упакована в «формате исходного пакета Debian»:

http://developer.ubuntu.com / publish / my-apps-packages /

Я уверен, что смогу запутаться, соединив tar-архив пакетов с исходным кодом Debian, но есть несколько моментов, которые меня интересуют:

  • Как обрабатывается 32-битная 64-битная штука? Они берут исходные тексты и создают приложения из обоих?
  • Как обрабатывается поддержка различных версий Ubuntu - 10.04, 10.10, 11.04, 11.10 и т. Д.?
  • Как обрабатываются зависимости. Если, например, мое приложение зависит от SDL, как мне это указать?
  • Если я не хочу распространять исходный код для своего приложения (который является проприетарной лицензией), есть ли чистый способ указывает, что источник не должен идти вместе с приложением?
  • Если я не использую autoconf / automake, должен ли мой Makefile быть настроен определенным образом, или требуются автоинструменты?
  • [ 1112]

    Я предполагаю, что ребята из Ubuntu, вероятно, берут исходный код и собирают его для каждой из различных платформ и архитектур, для которых они поддерживают покупку приложений, но в процессе отправки нет очевидного способа указать, с чем приложение работает (т.е. требует поддержки GTK3 и 64-битной версии или только для Intel без поддержки ARM), я могу только надеяться, что материал может быть указан в исходном формате.

    Есть ли какая-нибудь хорошая, исчерпывающая документация, конкретно касающаяся создания пакета с исходным кодом, на которую вы можете указать мне?

5
задан 8 February 2014 в 12:36

2 ответа

Лучше всего начать с изучения ppa

https://help.launchpad.net/Packaging/PPA

Когда вы загружаете источник пакеты (arch) созданы для вас.

Вы также можете посмотреть

https://wiki.ubuntu.com/MOTU/GettingStarted

https: //wiki.ubuntu. ком / PackagingGuide / Полная

0
ответ дан 8 February 2014 в 12:36

На странице, на которую вы ссылаетесь, написано:

Canonical предоставляет вам эту услугу упаковки бесплатно.

и продолжает объяснять, как выложить архив, содержащий ваши двоичные файлы.

Если вы создадите такой тарбол и отправите его через MyApps, то вся упаковка будет сделана для вас. Как сказано внизу, вы можете предоставить пакет с исходным кодом, если хотите, но это не обязательно. Обратите внимание, что это относится к приложениям с закрытым исходным кодом или платным приложениям, все, что является libre и безвозмездно, в настоящее время имеет другой процесс.

Что касается других ваших вопросов:

Как обрабатывается 32-битная 64-битная вещь?

Вы можете просто загрузить 32-битную, если хотите, как это работает на 64-битной тоже. Если вы хотите загрузить 32-битную и 64-битную версию, соберите ее дважды и поместите результаты в подкаталоги «i386» и «amd64».

Как обрабатывается поддержка различных версий Ubuntu - 10.04, 10.10, 11.04, 11.10 и т. Д.

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

Как обрабатываются зависимости. Если, например, мое приложение зависит от SDL, как мне это указать?

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

Если я не хочу распространять исходный код для своего приложения (который является проприетарной лицензией), есть ли чистый способ указать, что источник не должен идти вместе с приложением?

Как уже говорилось, вам не нужно указывать источник вообще.

Если я не использую autoconf / automake, должен ли мой Makefile быть настроен определенным образом, или требуются автоинструменты?

Любая система сборки, поддерживаемая в Ubuntu позволено. Если вы используете простые Makefiles, то это нормально. Однако, если вы загружаете только двоичные файлы, это не проблема.

0
ответ дан 8 February 2014 в 12:36

Другие вопросы по тегам:

Похожие вопросы: