How I rolled my own Dropbox like sharing with SparkleShare

Posted by Brian Porter on December 15, 2011

I have been looking for over a year for a way to have the simple syncing between computers like DropBox does, but on my own server, without space limits. I also just started using git this year, and have set it up on my private (hosted) server.

Git is very robust and fast, and so when I discovered SparkleShare last week, and saw that they use git, and ssh it went click! That totally made sense.

So today I finally got around to setting it up. It was as simple as this:

1) Download and copy SparkleShare on to my Mac (Snow Leopard), and start it

2) logon to my Server and add the SSH Key from my ~/SparkleShare directory to my known keys on the server ( http://sparkleshare.org/set-up-a-host/)

3) setup a new git repository (see last link to the documentation)

4) add the username@hostname and directory for my hosted git repository

Then a sub-directory with the name of the git project was added to the ~/SparkleShare directory.

I was able to add files to it and see that they were replicated to the Server.

I then went to my laptop which already had an authorized SSH key to the git repository, and installed SparkleShare, and added the same hosted project.

The files I had copied into the SparkleShare directory on my other computer showed up on my laptop.

That was it…

Some things I noticed:

1) How can I remove a hosted project/repository from the OSX client?

2) How can I access the history and versions of a file?

3) How about using Sparkle (the library for updating) to keep it up to date

So anyways… Thanks @SparkleShare for a great job.

If you made it this far, you may as well follow me on LinkedIn: Follow Brian Porter