2010-02-05 21 views
13

Estoy tratando de averiguar cómo puedo instalar un paquete de Python que no tiene un archivo setup.py con pip. (El paquete en cuestión es http://code.google.com/p/django-google-analytics/)PIP instala un paquete de Python sin un archivo setup.py?

Normalmente, simplemente compruebo el código del repositorio y el enlace simbólico en mis paquetes de sitio, pero estoy tratando de congelar todo mi entorno en un archivo de requisitos pip para facilitar el despliegue y las pruebas .

¿Alguna idea?

+0

"Normalmente, simplemente comprueba el código del repositorio y el enlace simbólico en mis paquetes de sitio". Para ser claro, normalmente no usas 'setup.py'? Si normalmente no usa 'setup.py', y esto no tiene' setup.py', ¿cuál es la pregunta? –

+4

@ S.Lott Creo que eso fue muy bien explicado por la segunda mitad de la oración. –

+0

@ Carl Meyer: Para ser claro: No estaba claro para mí. Entonces tengo que preguntar. No puedo seguir la pregunta porque es demasiado escueta. La pregunta es acerca de usar setup.py y no usar setup.py. No puedo seguirlo –

Respuesta

6

No puede. PIP instala paquetes de Python. Eso no es un paquete de Python. He oído que la comunidad de Django en general no hace muchos paquetes, lo que hace que cosas como lo que estás tratando de hacer sean complicadas. Pero eso podría estar mal.

Si desea congelar su entorno, es posible que desee consultar Buildout. Otras opciones en este caso es usar un svn: externo.

+3

Solía ​​ser más cierto de lo que es ahora (en la comunidad de Django). Hoy en día, una proporción mucho mayor de aplicaciones reutilizables de Django en la naturaleza (bueno, las decentes de todos modos) son paquetes adecuados. Er, distribuciones. Lo que sea ;-) –

+0

¡Me alegro de escucharlo! –

15

Horquilla el repositorio y agrega un setup.py de trabajo. Luego envíe una solicitud de extracción al autor.

Ah, está en Google Code. Entonces, archiva un error y publica un parche.

Si el autor se niega a hacer su código en una distribución instalable de Python (nunca me pasó a mí), simplemente aloje su tenedor en algún lugar y póngalo en su archivo de requisitos.

Cuestiones relacionadas