Convirtiendo aplicaciones de Pyhton3 a paquetes Snaps de Ubuntu

Anteriormente les había indicado como convertir una aplicación escrita en Python3 a un archivo ejecutable para que pueda ser corrido en cualquier ordenador Windows, pues bien, ahora les diré como convertir una aplicación py a paquete snap!, el nuevo formato introducido por Canonical con la llegada de Ubuntu 16.04!

ahorcado-snap

Para convertir una aplicación py a snap, hay mas pasos que realizar si lo comparamos con el .exe de Windows, aunque debo admitir algo, son pasos muy sencillos y fáciles!. Bien pongámonos manos a la obra!!!

Supongamos que tengamos un proyecto (en mi caso, el juego tempranero del ahorcado que desarrollé hace algunos días) y queremos distribuirlo mediante el nuevo formato de paquetes universales snap de Ubuntu. Los pasos para realizar esto son: (vía terminal por supuesto)

– Lo primero será instalar Snapcraft, para ello: sudo apt install snapcraft
– Luego de instalarlo nos debemos remitir vía terminal al directorio donde tengamos la aplicación, en mi caso la tengo en un directorio llamado ahorcado que se encuentra dentro de otro directorio llamado proyectos y este a su vez se encuentra en el directorio Home. Para ello: cd proyectos/ahorcado/
– Una vez allí, ponemos en la terminal: snapcraft init
– Esto nos creara un archivo con el nombre snapcraft.yaml el cuál debemos editarlo. Es muy sencillo su edición ya que solo debemos poner características de la aplicación, en mi caso:

editar-snapcraft-yaml

– Luego de esto, realizamos la compilación mediante: snapcraft snap.
– Si nuestro paquete incluye dependencias, es en este momento cuando debemos especificarlas, ¿cómo?, pues editando nuevamente el archivo snapcraft.yaml y luego de la línea «source» debemos colocar stage-packages: nombres de las dependencias.. Como ese no es mi caso por los momentos, saltamos este paso.
– Luego crearemos el entorno para el paquete Snap con: snapcraft stage
– Finalmente creamos el paquete Snap: snapcraft snap

paquete-snap

Para subirlo, bien lo podemos hacer vía terminal:

– Primero nos logueamos en Ubuntu One con el comando snapcraft login
– Luego subimos la aplicación a la tienda de Ubuntu mediante el comando snapcraft push aplicación-1.snap (donde aplicación.snap será obviamente el nombre original del paquete snap)

subir-app-snap

o por GUI mediante la página httpss://myapps.developer.ubuntu.com/.

subir-paquete-snap

Finalmente ya sea que se haya subido el paquete por terminal o por vía web, debemos esperar un lapso de tiempo para que la aplicación pase las pruebas automatizadas y esté disponible en la tienda de Ubuntu. Vale reseñar que para esto, el usuario será notificado a través de su cuenta de correo!