Ubuntu / Linux news and application reviews.

Sparkleshare your own server

Last week we saw how to install Sparkleshare in Ubuntu from a PPA. As a reminder:

Sparkleshare is a tool to synchronize your files in the cloud - like Dropbox or SpiderOak - but unlike these, Sparkleshare is open source and allows you to use your own server. Sparkleshare uses GIT so if you delete/modify some files by accident, you can easily revert the changes.

If you want to use Sparkleshare to syncronize files with your server, the set up is a bit more complicated so I though I'd make a separate post for this. Using the steps below, you should be able to use Sparkleshare with your own server (make sure you've firstly installed Sparkleshare on your computer!).

How to set up Sparkleshare with your own server

1. Stop sparkleshare on your computer. To get Sparkleshare to sync with your server, you'll need to create a paswordless SSH key which you'll use to login to your server.

Firstly install openssh-client on your computer (obviously you must have Sparkleshare installed already):
sudo apt-get install openssh-client

Now generate a key pair if you don't have one already:
ssh-keygen -t rsa

Do not enter a password for the key (just press the ENTER key).

2. Copy the key to the server:
ssh-copy-id USER@SERVER

3. Connect to the server and install GIT (if it's not already installed):
sudo apt-get install git-core

4. Now let's set up the Sparkleshare GIT folder on your server:
git init --bare sparkleshare.git

5. Back on your computer, go into the Sparkleshare folder and clone the remote Sparkleshare GIT repo:
cd ~/SparkleShare/
git clone USER@SERVER:sparkleshare.git

6. You can now start SparkleShare from the menu - copying new files in your ~/Sparkleshare/sparkleshare folder should now sync them with your server (without requesting for a password). To set up Sparkleshare sync on multiple computers, simply follow steps 1, 2 and 5 on each computer.