kAIST
@kAIST

Как распространять приложение под linux?

Пишется приложение с GUI на python. Кроссплатформенность досталась практически "бесплатно", то есть могу выкатить приложение и под Linux. Приложение в принципе собирается pyinstaller'ом и запускается без каких либо зависимостей.

Каким образом лучше все это дело распространять? Приложение специфичное, и пользователи linux не основаня целевая аудитория. Скорее всего им будут пользоваться 1.5 человека. Поэтому я ищу максимально простой способ деплоя, чтоб не тратить много времени на эту платформу.

Можно ли вообще делать как в windows с portable сборками приложения? Скачал - распокавал - запустил?
  • Вопрос задан
  • 345 просмотров
Пригласить эксперта
Ответы на вопрос 4
shurshur
@shurshur
Сисадмин, просто сисадмин...
Я не знаю, почему все так активно советуют собирать пакеты. Надо начать с того, что в Linux никогда не было принято использовать pyinstaller... почему? Потому что в Linux python идёт из коробки. В Windows сложно вынуждать пользователей устанавливать интерпретатор языка и все зависимости, тут же с этим проще гораздо.

Так что можно просто распространять архив с приложением и инструкцией по запуску вида:

virtualenv -p python3 env
. env/bin/activate
pip install -r requirements.txt
./app.py
Ответ написан
Sanes
@Sanes
Скачал - распокавал - запустил

Проблема-то в чем? Pynstaller даже в один файл может всё собрать. Права только на исполнения должны поставить.
Ответ написан
paran0id
@paran0id Куратор тега Linux
Умный, но ленивый
Через pypi. Кстати, кроссплатформенно.
Ответ написан
ValdikSS
@ValdikSS
Если у вас в зависимостях пакеты, для которых не нужны системные библиотеки (т.е. все зависимости написаны на самом Python), то наиболее простой и удобный способ — собрать zipapp.
Это zip-архив со всеми зависимостями, который не нужно распаковывать перед запуском. В системе должен присутствовать Python, но он есть в любом популярном дистрибутиве по умолчанию.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы