SparkleShare, un repositorio personal de documentos

Published on at techie , 5 mins.

Con la que está cayendo con el tema del cierre de MegaUpload y el resto de sitios de almacenamiento de ficheros, con los problemas de seguridad que ha tenido en el pasado Dropbox y en definitiva con esta histeria colectiva, supongo que estamos en uno de esos puntos de inflexión que cada cierto tiempo ocurren en Internet que nos hacen cambiar algunos hábitos y maneras de llevar a cabo ciertas tareas o prácticas. Yo usaba MegaUpload para ver películas a un precio razonable (el Premium de MegaUpload me costaba un euro a la semana más o menos) y ahora estoy de nuevo volviendo al p2p y los torrents pero de eso ya hablaré otro día.

Hoy quería comentar SparkleShare, un proyecto de software libre (primer minipunto) que está disponible para Linux, Mac, Windows y Android (segundo minipunto) que hace las veces de «cliente» en nuestros equipos de diferentes servicios de almacenamiento. Es algo así como una alternativa a Dropbox pero diferenciando entre el programa que ejecutamos en nuestro ordenador y quién nos da alojamiento. De hecho podemos usar varios servicios según las necesidades. Para almacenar la información se usan proveedores de un software de control de versiones conocido como Git. No voy a entrar en detalles técnicos porque quiero que este apunte me quede legible para el máximo de personas. Bueno dejo algún apunte más técnico para el final solo apto para techies.

El procedimiento es el siguiente. Lo primero por supuesto instalar SparkleShare en nuestro sistema. Si queremos tener un repositorio privado para código fuente, ahora mismo la opción más fácil para cualquier persona es darse de alta en Bitbucket y crear un repositorio Git privado (es gratis). Una vez creado hay que darle a Bitbucket un fichero que el propio SparkleShare nos proporciona (un .txt que se encuentra en la carpeta creada por el programa). Este fichero lleva una “firma” de nuestra máquina y permite que nuestra máquina pueda conectarse y trabajar con Bitbucket o cualquier otro repositorio. Deberemos subir tantos ficheros como máquinas diferentes usemos, no hay límite.

Una vez nuestra máquina puede trabajar con Bitbucket ya podemos dar de alta el repositorio en nuestro SparkleShare mediante un sencillo asistente que finalmente nos creará una carpeta. Cualquier cosa que metamos ahí se subirá automáticamente al cabo de unos segundos a nuestro repositorio en Bitbucket. De hecho si vamos guardando un fichero de vez en cuando, se irá subiendo cada versión a Bitbucket y llegado el caso podríamos recuperar cualquier versión subida.

[![Configuración de un nuevo repositorio en SparkleShare]( {% img_path configuracic3b3n-de-sparkleshare_012.png %})]({% img_path configuracic3b3n-de-sparkleshare_012.png %})

En el día a día SparkleShare funciona más o menos como Dropbox. Tenemos un icono en el escritorio que nos lista las diferentes carpetas de repos que tenemos en local y podemos ver una ventana con el historial de acciones que ha ido realizando. En esa ventana también podemos escribir notas que se subirán como pequeños archivos a nuestro repo. Igual que trabajamos con repositorios privados podemos hacerlo con repos públicos e incluso compartirlos con más personas para trabajar conjuntamente sobre un mismo proyecto. Bitbucket limita en sus cuentas gratuitas a cinco colaboradores en repositorios privados. A partir de ahí hay que pagar.

[![SparkleShare en el escritorio]({% img_path escritorio_013.png %})]({% img_path escritorio_013.png %})

SparkleShare es todavía un proyecto joven. La interfaz aún tiene que mejorar sobre todo el tema del versionado, que ahora mismo no está todavía disponible. En cualquier caso creo que el proyecto promete porque en definitiva ofrece una forma de trabajar con un control de versiones asequible a cualquier usuario, cuando normalmente estas funcionalidades solo están al alcance de usuarios muy técnicos (desarrolladores) o bien a usuarios de gestores documentales en organizaciones medianas o grandes. Bitbucket es por cierto un estupendo servicio de alojamiento y plataforma de desarrollo. Por supuesto no está pensado ni uno ni otro como servicio para almacenar grandes ficheros, sino más bien para documentación, tal vez imágenes como mucho y cosas así. Yo todavía uso Dropbox pero mis pruebas con SparkleShare han sido más que satisfactorias y en cualquier momento puede que dé el cambio. Este tipo de servicios los veo perfectos para estudiantes o cualquier persona que trabaje con documentación en el día a día y no disponga de un servicio de copia de seguridad en una intranet y casos así.

Bonus para techies. SparkleShare no es más que un cliente de Git llevado a la mínima expresión. Además de poder usarlo con Bitbucket o con GitHub, es posible conectarlo con nuestro propio repositorio mediante SSH. Por lo tanto si tienes acceso a un servidor Git puedes crearte un repo para documentación por ejemplo, y usarlo mediante SparkleShare. Igualmente cualquier copia local de SparkleShare es a todos los efectos una copia local de Git por lo que podemos usar todos los comandos de git para como mínimo ver el log, revertir algo, etc. No sé cómo le sentará a SparkleShare por ejemplo que hagamos ramas, stashing y esas cosas, no lo he probado e imagino que será un follón pero como proyecto de software libre, estoy seguro de que cuenta con listas de correo o foros en los que comentar estos temas si fuera necesario. Yo de momento lo voy a usar para documentación tal y como estoy usando Dropbox, total no tengo ni 300MB ocupados porque no subo más que documentos y como mucho wallpapers :-)


Actualización: Justen [anota más abajo](http://oblongomirihi.