Існує маса інформації про те, як це зробити, але з тих пір "існує більше одного способу зняти шкіру з кота" , і всі навчальні посібники / посібники, які охоплюють деякий процес, схоже, роблять певні припущення, які відрізняються від інших підручники, мені все одно не вдалося зрозуміти це.
Поки що це, на мою думку, я зрозумів.
- Моєю кінцевою метою має стати створення "двійкового" пакета .deb. Такий пакет буде незалежним від платформи (32/64 біт), оскільки всі програми Python є такими.
- Для створення "двійкового" пакету мені спочатку потрібно створити вихідний пакет.
- Для створення вихідного пакету я можу використовувати
CDBS
абоdebhelper
. Debhelper - рекомендований спосіб для початківців. - Основою створення вихідного пакету є заповнення
DEBIAN
каталогу у вихідному каталозі кількома файлами, що уточнюють, де потрібно копіювати файли, яким авторським правом та схемою ліцензування вони підлягають, які залежності вони мають тощо ... - Крок # 4 може бути в значній мірі автоматизований
dh_make
командою, якщо джерело Python також постачається зі скриптом distutilssetup.py
.
Тепер мої запитання:
- Чи правильно я розумію процес? Щось мені не вистачає або щось, що я помилився?
- Крок No5 насправді більш заплутаний для мене: саме два моменти, які для мене залишаються найбільш незрозумілими:
- Як написати
setup.py
сценарій, який встановлює автономну програму? EDIT: Під автономною програмою я маю на увазі програму, призначену для використання користувачем робочого столу (на відміну від модуля, який я розумію як сукупність функціональних можливостей, що використовуються іншим програмним забезпеченням після імпорту). У моєму конкретному випадку мені насправді були б потрібні дві такі "програми": основне програмне забезпечення та окрема утиліта (фактично друга "програма", яка повинна бути в одному пакеті з іншою). - У чому особливості такого сценарію для пакетів DEB? Офіційна документація, схоже, стосується лише RPM та Windows-матеріалів ...
- Як написати
BTW: Це найкращі джерела інформації, які я міг знайти собі на сьогодні. Якщо у вас є щось краще, ніж це, будь ласка, поділіться! :)
- Посібник з упаковки Python Ubuntu
- Створення пакета .deb з python setup.py (він відображає кроки, але недостатньо пояснює їх, щоб я міг їх продовжити)
- Відео ShowMeDo про "створення пакета .deb із програми python" (воно не здається сучасним і - якщо я це правильно зрозумів - створюватиме пакети для особистого використання, без залежностей та без підписаного журналу змін та іншого ключові дані, які роблять його несумісним із політикою Debian).
setup.py
трохи. Це можна порівняти ізautotools
кроком, який використовують багато проектів GNU C / C ++, але специфічним для python. Це простіше, ніж здається, читайте docs.python.org/distutils/index.html