Найти - Пользователи
Полная версия: Распространение приложения
Начало » Python для экспертов » Распространение приложения
1
ivan342
Подскажите как распространять приложение на python для mac os? Сейчас написал программку, а как её правильно упаковать, чтобы она была среди прочих приложений и легко запускалась не знаю.
vic57
https://habrahabr.ru/post/124573/
doza_and
Маком не пользовался но я думаю vic57 дает плохой совет.

Если ваш код на питоне не требует зависимостей, то он и так будет запускаться, куда бы вы его не положили, просто добавьте права на запуск (думаю так на основе аналогии с UNIX). И весь пост лишний.

Если вы его хотите сделать принадлежностью системы, то надо делать инсталлятор.

Если зависимости есть, но только от модулей питона, то кошерный путь воспользоваться setuptools и добавить ваш модуль в pypi. Лучше сделать whl. при установке без интернета просто берете whl и ставите все командой pip.

Если есть зависимости от большого числа нестандартных бинарных модулей, имеет смысл рассмотреть
анаконду. https://www.continuum.io/downloads. Свой модуль вы можете тоже туда пихнуть. Для инсталляции например поставляете скрипт устанавливающий анаконду и ваш модуль.

Самый легкий для пользователя способ, воспользоваться менеджером пакетов данной ОС.

Для мака насколько я понимаю наиболее простые для пользователя варианты.
https://en.wikipedia.org/wiki/App_Store_(iOS)
http://brew.sh/
Но как ими пользоваться это уже вопрос к вам, как пользователю Мака.
На Appstore насколько я понимаю вам надо будет платить деньги разработчикам ОС. И эта политика у них проводится жестко в отличии от Linux.





vic57
я маком пользуюсь и для себя пишу/запускаю так же как в линукс.
py2app и есть часть setuptools.
https://github.com/kaist/shoot-and-view
пример реализации
https://www.youtube.com/watch?v=5Ehhts9HhE8
здесь с картинками
doza_and
vic57
py2app и есть часть setuptools.
У меня мака нет. Поэтому я сужу по документации. https://pythonhosted.org/py2app/
setuptools может много чего наделать, в том числе исполняемые модули.
Основной смысл моего послания в том что ТС не знает как распространять программу. Запаковка в исполняемый модуль тут не причем. Я считаю что для распространения паковать ее в исполняемый модуль не нужно, и более того в большинстве случаев вредно.
vic57
все это в маке делается штатно.
1. устанавливаем pip (если нету)
2. в консоли : pip install py2app
3. заходим в папку проэкта(к примеру ~/work)
cd work
4. py2applet myfile.py
5.получаем папку work/myfile.app - это и есть мак-приложение
ради интереса сделал на PyQt HelloWorld, получился бандл весом 83 мега -все необходимое притянулось, но тут надо копать py2app, а мне это незачем.
vic57
doza_and
Я считаю что для распространения паковать ее в исполняемый модуль не нужно, и более того в большинстве случаев вредно.
у мака свой формат, там типа sandbox получается. а распространяют именно бандлом, если в аппстор.
а для себя можно AppleScript сделать, или Python Launcher применить.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB