Incluyendo las dependencies del script de Python (contenido virtualenv) en Platypus

Estoy tratando de convertir un script de Python en una aplicación OS X que puedes ejecutar directamente desde Finder. Estoy probando Platypus , que parecía ser la opción más simple. El problema con el que me estoy encontrando es con los packages que incluyo en el script. Los instalé a través de pip en un virtualenv. Preguntándose cuál sería la forma mejor / más adecuada para include esos files en el package Platypus. Sé que podría simplemente copyrlos en el mismo directory e includelos en el package Platypus, pero preferiría hacer algo más limpio como include el virtualenv, aunque parece que los usuarios de la aplicación tendrían que instalarlo.

También me encontré con py2app que parece ser capaz de lograr algo similar a Platypus, pero su documentation es algo oscura.

  • Ejecutando brew doctor muestra que tengo 3 scripts de "configuration" de python diferentes instalados. ¿Cómo me deshago de ellos para que ya no reciba esta advertencia?
  • Ejecutar un script como root y presentar una GUI para iniciar session en los usuarios
  • ¿Cómo configurar múltiples PATH en el usuario bash_profile en OSX 10.8?
  • TextWrangler ejecutando Python 2.7 después de que lo quité de mi Mac
  • ¿Qué versión (es) de Python están preinstaladas en OS X 10.9 Mavericks?
  • Errores al usar brew para instalar python3
  • ¿Cuál es el layout de keyboard / keyboard más conveniente para la progtwigción?
  • Hacer un progtwig python una aplicación
  • One Solution collect form web for “Incluyendo las dependencies del script de Python (contenido virtualenv) en Platypus”

    La forma en que he resuelto esto en el pasado es agrupando los contenidos del directory virtualenv en Platypus y luego activando el intérprete de Python incluido con un script.

    Aquí hay una tapa de pantalla de la interfaz de Platypus para mostrar lo que quiero decir:

    Configuración de la ventana de ornitorrinco

    Notarás que he agrupado todo el directory de venv (que se creó con el command virtualenv ) y mi script de Python, my_app.py .

    El script que en realidad le estoy diciendo a Platypus que ejecute, run.sh , es un script de shell con los siguientes contenidos:

     #!/bin/sh "$PWD/venv/bin/python" my_app.py "$@" 

    Todo lo que hace este script es usar el binary de python en el directory de venv para ejecutar el script de Python incluido. El "$@" está allí para pasar cualquier argumento a run.sh directamente en my_app.py sin cambiarlos.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).