What is “SparkleShare“? In a nutshell, it’s an alternative of “Dropbox“ which is open-sourced(GPLv3), multi-platformed(Linux, Mac, Windows) and supporting both your own host and your github repository as the host(This is really COOL!).
Install the client
# 1. The following instructions are for Ubuntu 10.04.
Configure Github as the host
Refer here, for Ubuntu 10.04.
Go to your github account, create an new repository, which will be used by SparkleShare to store your data;
In the SparkleShare initial wizard, fill in your name and email address, then go to your “~/.config/sparkleshare” directory, copy the content of the “sparkleshare.your_email_address.key.pub” file, then go to your github account in browser, create a new SSH Key, paste the content to it. This step makes your SparkleShare client can access your github repository;
Go back to your SparkleShare initail wizard, select “Github” and enter “your_github_username/repository_name” under the “folder name” field, finish.
That’s it. Then everytime when starting your OS, the SparkleShare client will start automatically. After you change(add/update/remove) any file(s) in your local directory(~/SparkleShare), the change(s) will be synchronized automatically to the github repository and the other SparkleShare client(s) if there’s any.
For Ubuntu 12.04, the latest version of SparkleShare(version 0.8.2 at this moment) supports not only your own server and Github, but also Bitbucket, Gitorious and etc. The instructions of Github support is similar to the ones above.
Several things make SparkleShare very unique other than other similar products:
You can setup your own host;
You can leverage Github as the host;
Open source, which means you can develop your own synchronization methods(FTP/WebDAV/RSync) and client(Android/iOS).