Wednesday, June 29, 2011

Three Dollars Per Month = Still Factors Freer than a "Free" Dropbox Account

Last week, Dropbox proved that it cares nothing for its users' privacy. For several hours, every Dropbox user's account was accessible through the member website without need of a password. The incident gave clear validity to the intuitive suspicion of thousands across the Internet who used Dropbox's service for the sake of convenience, complacent in the "possible" elimination of their freedom, privacy, and personal dignity.

In the hours that followed, the question was posted on slashdot as to what alternatives to the service might already be in development under a free and open license. An answer, which I decided to investigate further, was SparkleShare.

Not only is SparkleShare released under the GPL, but it also has one other very significant distinction from Dropbox. Rather than hosting your files on Dropbox's server, you decide what server your files are hosted on. This is both a radical advantage in terms of freedom, and a disadvantage (for some) in terms of feasibility.

I decided, a few days ago, to purchase a monthly subscription for a cheap, unmanaged VPS. The site sshVM.com currently offers simple virtual Linux machine, accessible by SSH, for only $3.00. All I had to do then was follow the instructions on SparkeShare's website to set up my own SparkleShare server on my VPS. It was surprisingly simple!

I did have some difficulty getting SparkleShare to build on my local machine. I settled for the PPA:

deb http://ppa.launchpad.net/pdffs/sparkleshare/ubuntu lucid main
deb-src http://ppa.launchpad.net/pdffs/sparkleshare/ubuntu lucid main
Installing and configuring SparkleShare on my machine went mostly smoothly, except I did notice that it crashed any time I tried to open a folder from the SparkleTray system tray icon. This may have been due to the fact that I am running Awesome Window Manager, rather than the GNOME environment it is designed for. If you encounter stability issues with SparkleShare like I have, simply wrap the execution binary in a container script like I have, so that it will be restarted upon crash.

I am sure there is a better way to do this, but here is the script I wrote to launch Sparkleshare, then sit in the background and relaunch it anytime it crashes:

while [ 1 = 1 ]; do if ps -A | grep sparkleshare > /dev/null; then echo "" > /dev/null ; else `echo "sparkleshare start"` ; fi & sleep 10s; done
Let me know if you have a better way of writing that script, and I'll let you know how my experience with Sparkleshare goes!

0 comments: