[pyar] Buildout + compilar python adentro, crear virtualenv y meterle eggs, como hago ?! :)

Eka (Esteban Feldman) ekagaurangadas en gmail.com
Mie Dic 1 09:49:51 ART 2010


2010/11/30 Emiliano Dalla Verde Marcozzi <edvm en airtrack.com.ar>

> El 30 de noviembre de 2010 13:06, Pablo Ziliani <pablo en kultroom.com>escribió:
>
> ¿No estás haciendo las cosas al revés? Quizás no conozca todas las
>> posibilidades de buildout, pero por lo general uno instala paquetes al
>> interprete que quiere usar, no un intérprete a los paquetes que instaló para
>> OTRO intérprete (el que está corriendo el buildout).
>>
>> Buscando un poco por ahí vi este buildout.cfg que quizás ya hayas visto:
>>
>>    - https://bitbucket.org/zgwmike/360go/src/tip/buildout.cfg
>>
>> Obviamente no lo probé (tampoco el tuyo), así que no tengo idea si
>> funciona o no, pero fijate en la sección [virtualenv] cómo se llama al nuevo
>> intérprete para reescribir los paths del virtualenv que instaló con el
>> intérprete "anterior". Luego se puede usar ese virtualenv para instalar las
>> demás dependencias. Con algo más trabajo podrías volver a correr un nuevo
>> bootstrap/buildout con ese intérprete, pero a esta altura quizás te convenga
>> directamente escribir un nuevo recipe.
>>
>> Por otra parte ¿estás seguro de que realmente necesitás instalar un
>> intérprete propio?
>> Es bastante común ver cosas como este buildout.cfg para django que estoy
>> usando:
>>
>> [buildout]
>> parts =
>>    python
>>    django
>>    (...)
>>
>> eggs =
>>    south
>>    (...)
>>
>> [python]
>> recipe = zc.recipe.egg
>> interpreter = python
>> eggs = ${buildout:eggs}
>> extra-paths =
>>  ${buildout:directory}/mi_proyecto
>>
>> [django]
>> recipe = djangorecipe
>> eggs = ${buildout:eggs}
>> extra-paths =
>>  ${python:extra-paths}
>> (...)
>>
>> El truco está en la opción ${python:interpreter}, que crea un wrapper que
>> toca el sys.path y luego llama al python con que se ejecutó el buildout.
>> La ventaja, es que funciona ahí donde zc.recipe.cmmi (configure/make/make
>> install) no; por ejemplo, en Windows. La desventaja es que tenés que tener
>> instalado previamente el python que querés usar.
>>
>>
>>  Casi olvido ... la parte de virtualenv por ahi no es necesaria, ya que al
>>> compilarse el
>>> python desde los fuentes, es un python 'isolado'.
>>>
>>
>> o aislated...
>>
>> Sé que no es muy útil lo que te digo, pero por ahí te ayuda a pensar el
>> problema.
>>
>> Suerte,
>> Pablo
>>
> Gracias Pablo, le voy a hechar un ojo a la recipe de django :) ... por el
> momento ahora me cambie
> de tema, tratando de meter un python en un initrd x) ...
> Saludos!
>
>
>
> --
> *Emiliano Dalla Verde Marcozzi*
> Encargado de IT y Python Ninja Developer
>
>
>
> San Juan 4879
> Rosario. Argentina
> Tel. (+54) 341 437 6878
> www.airtrack.com.ar
>
> "Chuck Norris doesn't need a debugger, he just stares down the bug until
> the code confesses."
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>

Para lo que sirva, Yo uso buildout y virtualenv, pero no mezclo. Buildout me
permite tener sandboxeado un proyecto dado que crea el bin con todos los
path adentro y ya con eso no necesito virtualenv.

El djangorecipe es muy bueno, tambien usa Paster con el template de
django-buildout [0]

Just my 2 cents

Saludos

[0] http://pypi.python.org/pypi/fez.djangoskel/

-- 
Chant Hare Krishna and Be Happy

Eka
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101201/901b9791/attachment.html>


More information about the pyar mailing list