Есть ли стандартный способ создания пакетов Debian для распространения программ Python?

Существует масса информации о том, как это сделать, но поскольку «есть более одного способа снять шкуру с кошки» , и все учебные пособия / руководства, которые частично охватывают этот процесс, похоже, делают определенные предположения, которые отличаются от других

Пока это то, что я понял.

  1. Моей конечной целью должно быть создание «двоичного» пакета .deb. Такой пакет будет независимым от платформы (32/64 бит), как и все программы Python.
  2. Чтобы создать «двоичный» пакет, мне нужно сначала создать пакет с исходным кодом.
  3. Для создания пакета с исходным кодом я могу использовать либо CDBS , либо debhelper . Debhelper - это рекомендуемый способ для новичков.
  4. Суть создания пакета с исходным кодом - это заполнение каталога DEBIAN в каталоге исходных текстов рядом файлов, поясняющих, где файлы должны быть скопированы, какие авторские права и лицензии схема, которой они подчиняются, какие у них зависимости и т. д.
  5. Шаг № 4 можно в значительной степени автоматизировать с помощью команды dh_make , если исходный код Python также поставляется с distutils ' setup.py сценарий.

Теперь мои вопросы:

  1. Правильно ли я понимаю процесс? Я что-то упустил или что-то сделал не так?
  2. Шаг # 5 меня больше сбивает с толку: особенно два момента, которые остаются для меня наиболее непонятными:
    • Как мне написать сценарий setup.py , устанавливающий автономную программу? РЕДАКТИРОВАТЬ: Под автономной программой я имею в виду программу, предназначенную для используется пользователем настольного компьютера (в отличие от модуля , который я понимаю как набор функций, которые будут использоваться другим программным обеспечением после импорта). В моем конкретном случае мне действительно понадобятся две такие «программы»: основное программное обеспечение и отдельная утилита (фактически вторая «программа», которая должна быть в одном пакете с другой).
    • Каковы особенности такого сценария для пакетов DEB? Официальная документация, похоже, касается только RPM и Windows ...

Кстати: это лучшие источники информации, которые я мог найти на данный момент . Если у вас есть что-нибудь получше, поделитесь, пожалуйста! :)

71
задан Peter Mortensen 28 April 2019 в 18:00
поделиться