Hola! Estoy comenzando a utilizar Pilas con mis alumnos, ahora que les quise indicar cómo instalarlo me surgió un pequeño problema que creo solucionado… y otro que aún sigo intentando.
Paquete Debian
Hay un problema en el paquete .deb que está en el repo de huayra. Cuando lo descargás e intentás instalar tiene seteado que depende de python-box2d (>= 2.1.2)
. Cuando gdebi se quejó de la versión de la dependencia, supuse que era un problemilla de nuestro querido Debian Stable, pero al investigar un poco más en profundidad empecé a suponer que tal vez había un error en el archivo de control.
Al buscan en PyPi, me di cuenta que la última versión estable es la 2.3b0
y que la anterior es la 2.0.2b2
; lo que me hizo suponer que tal vez hubo un error al escribir la dependencia en el archivo.
Entonces decidí probar de la siguiente manera:
- Descomprimí en una carpeta nueva llamada
pilas
el paquete.deb
- Edité el archivo
pilas/DEBIAN/control
cambiando la dependencia apython-box2d (>= 2.0.2)
- Y después volví a armar el paquete con el comando:
dpkg -b pilas
- Intenté instalar el nuevo paquete
pilas.deb
con el gdebi y salió funcionando.
Lo que me hace suponer que estaba en lo cierto y que hay que corregir el archivo de control del paquete Debian.
Código Fuente
Por otro lado, en uno de los varios intentos, descargué el tar.gz
que está en el mismo repo y cuando sigo las instrucciones de instalación, después de instalar según: sudo python setup.py install
me pasa que aparantemente queda instalado en el sistema, pero sólo puedo ejecutarlo desde la carpeta donde descomprimí los archivos.
Lo que estoy haciendo es:
- Descargo y descomprimo el
tar.gz
- Entro en la carpeta
pilas-1.0.0
- Y ejecuto
sudo python setup.py install
(todas las dependencias estás satisfechas) - Si ahora ejecuto
pilasengine
desde ese directorio, ejecuta sin problemas.
Si ahora quiero ejecutar desde cualquier otro directorio sale el siguiente error:
Traceback (most recent call last):
File "/usr/local/bin/pilasengine", line 4, in <module>
__import__('pkg_resources').run_script('pilas==1.0.0', 'pilasengine')
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 534, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1438, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/EGG-INFO/scripts/pilasengine", line 8, in <module>
pilasengine.utils.iniciar_desde_terminal()
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/utils/__init__.py", line 285, in iniciar_desde_terminal
_ = pilasengine.abrir_asistente()
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/__init__.py", line 610, in abrir_asistente
return asistente.abrir()
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/asistente/__init__.py", line 225, in abrir
ui.setupUi(MainWindow)
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/asistente/__init__.py", line 108, in setupUi
self._cargar_pagina_principal()
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/asistente/__init__.py", line 176, in _cargar_pagina_principal
file_path = pilasengine.utils.obtener_ruta_al_recurso('asistente/index.html')
File "/usr/local/lib/python2.7/dist-packages/pilas-1.0.0-py2.7.egg/pilasengine/utils/__init__.py", line 150, in obtener_ruta_al_recurso
raise IOError("El archivo '%s' no existe." % (ruta))
IOError: El archivo 'index.html' no existe.
Además en el directorio pilas-1.0.0
me aparecen 3 directorios que pertenecen a root: build
, dist
y pilas.egg-info
Supongo que hay algo que no está terminando de instalar en el site-packages
del sistema y no encuentra el archivo para lanzar Pilas.
Bueno, espero que este sea mi primer aporte para hacer que Pilas sea cada vez mejor! Cualquier comentario es bienvenido
(No inicié un issue en GitHub porque no estaba seguro… :-s)
Abrazo!