Review: SparkleShare.

I have a lot of images, code projects, documents, game saves and such, and I want to take good care of them, especially my images – they are the most valuable possession I’ve got. That’s why I need a simple and safe backup solution. Earlier I just had an external harddrive, but thats not simple, nor have the security that I need. That’s why I used Dropbox for a while. It was rather cheap and had everything that I needed, except encrypted transfer and I didn’t know what happened with them across the Atlantic Ocean. So I started to look for alternatives – safe, secure, encrypted and I also wanted them to be Open Source so that I could have it running on my own server. GNU/Linux support and a client for Android was also needed.

I found SparkleShare that seemed to be a great solution and had pretty much all that I needed: Open Source, using SSH, rather simple to set up on my own server, webui and an Android client. I started to use it and have been using it since late september, 2011. But…

SparkleShare uses Git to store files and keep a history of changes made to my files. Git is created by the same author as of the Linux kernel, Linus Torvald, and were created for the development of the Linux kernel. Keep revision history, a linear development with the possibility to maintain paralell development branches – version control. For this, it’s perfect! I use Git for my project nowdays (I used Bazaar before). The company I work for has started to use it, too.

That Git is created to development of software does, however, not make it capable as storing files, in my opinion. Now I have 60GB+ of images from the past ten year of my life – that is not optimal for Git and it’s version control. For the everyday user that want’s a Dropbox alternative, this is really not the best solution. Perhaps for a person writing his/her Ph D, it would be great. But with a lot of files, which itself creates much data and uses a lot of storage, you dont need to have a history larger then the files/directory itself.

Installing SparkleShare (server) is pretty straight forward (I’ll post a guide soon). Just install SSH, Git and a few other packages on your server, and you’re good to go. This is a real plus. Also the client is also very easy to install. It comes with packages for most of the well used GNU/Linux distros, and also Mac OS X – not Windows yet. It’s also to build from source. You just install the client, copy the SSH key to your server and start a guide to add your share.

But I’d say this is too hard for new users. Well, if you’re already running your own server, I suppose it’s not that hard, but using its own SSH keys – without a password – is not something I like to do. But that can also be taken care of, altough it also might be a little to hard for the faint of heart.

Installing the WebUI – that is necessary for the Android client – is a little harder. It has a strict dependancy of package version, which I’ve had som issues with. Once up and running, it is incredibly easy to add your Android device, just by scanning a QR code.
The Android client is somewhat a different project – the WebUI too – then SparkleShare. It works to download your stored files, not anything more. You can’t upload any files, which I very much would like. Perhaps in an later version.

Once installed and up and running, SparkleShare takes care of your files. By using Git the files are compressed before uploaded, and the transer is safe by it’s usage of SSH. But I’m not satisfied. It’s hard to upload a lot of files. I wanted to upload all of my 60GB+ images at once, but SparkleShare didn’t seem understand that I added the files. Instead I had to remove them and upload them seperately. It worked, but the compression takes a long time, and if the connection between server and client gets broken during upload, the compression has to be restarted. Also, as I was saying, having a history copy of the files on the client, takes of a LOT of storage space.
Smaller files, like my documents is no problem – of course since the’re smaller.
With the Nautilus addon, it is easy to get back an old version of an edited file just by right clicking on it.

SparkleShare is just a indicator applet, which is simple and works great. Altough I would like to see some info about the sync, like transfer speed, which files, just like the Dropbox indicator. Also I miss sync over LAN, bandwith limit and being able to pause specific shares – ie. so that I can start SparkleShare to only sync my documents while in school, when I don’t want to use up my battery and all of my CPU to compress my images.

Besides that, SparkleShare runs fine in the bakground. If I were to already have uploaded all of my images, the compression wouldn’t take so much time, nor would it be as big of a problem, but the local Git history copy, and Git itself, makes it a little less of ”fun”.

SparkleShare is great for easy sync of small files, not for bigger ones. It’s also great if you’re developing some small software, which you don’t really use Git for yet, but still want’s the version controll and being able to upload it – automatically – to GitHub or perhaps your own Git server.

I would say that SparkleShare is not yet ready for daily use and to drop out of you Dropbox use, or alternative.

Git is simply not the best way to get people from the closed, you-dont-know-where-or-what-theyre-doing-with-your-files, clients like Dropbox, and start to use free and open source ones. For me, version controll is not as important as a simple and secure backup solution. I’d say SparkleShare using Rsync would be a better way of doing this.

Perhaps Rsync could be used together with a simple script that saves a deleted file for a while, before it’s completely deleted. And perhaps having preferences to set which files/dirs needs to have version control.

I’m sorry to say that I’m leaving SparkleShare to find, or develop, a new backup solution not using Git.

19 svar på ”Review: SparkleShare.”

  1. Thanks for your SparkleShare review!

    I see that the SparkleShare developer(s) have come to the same conclusion as you, regarding Git not being optimal for large files. On, under the section ”<strong>Plans for the near future</strong>”, one can read:

    <cite>I would really like to try and get more people involved to work on the Windows version (it runs, but it’s hard to get running and it doesn’t integrate well with the system) and mobile versions for Android and iPhone (these would be simple clients, able to browse your files on the server, download and upload stuff, etc.).

    Now that SparkleShare’s backend is pluggable, I’d like to implement something based on SFTP or similar. While Git is very cool, it’s not always the best solution for storing huge files in. So there are problems to be solved there. Git support will definitely always stay by default though, because it’s the most awesomest DVCS ever made. The right balance needs to be found between having a history and not using too much space.

    More ideas can be found on the wiki. Join the IRC channel: #sparkleshare on, if you’re interested in helping.</cite>

    I totally agree with your conclusions about SparkleShare and what needs to be improved. Hopefully we’ll see a software like that in the near future!

  2. Why not just use a private GIT repository if what you need to do is share small set of documents, images, etc?

    1. Hi Sun, and thank you for your comment,

      First of all, this is an old review and I haven’t followed SparkleShare’s development since I stopped using it at the same time as this review. Maybe it got better(?).

      Secondly, that is not what I’m looking for, nor need. The issue is still that it keeps a full set of files per commit, is it not? That was both the point, and the issue, with SparkleShare. Also that’s not what GIT is for – it’s for code and shared development.

      I’m happily using ownCloud since a few years back and that is exactly what I needed in the first place.

  3. I’m amazed, I must say. Seldom do I come across a blog that’s equally
    educative and entertaining, and let me tell you, you’ve hit the nail on the head.
    The issue is something that too few folks are speaking intelligently about.
    Now i’m very happy that I stumbled across this during my search for something concerning this.

  4. I like the helpful information you supply to your
    articles. I’ll bookmark your weblog and take a look at again right here regularly.

    I’m quite certain I will be informed a lot of new stuff proper right here!
    Best of luck for the next!

  5. Keep up the wonderful work, I read few articles
    on this internet site and I think that your web blog is real interesting and contains circles
    of excellent information.

  6. Hey! I just wanted to ask if you ever have any trouble with hackers?
    My last blog (wordpress) was hacked and I ended up losing many months of hard work due
    to no backup. Do you have any solutions to stop

    1. Use protective plugins and settings to reduce the risk of brute force and other forms of attacks. Also use two-step authentication. Also make sure to run it on a secure server.

  7. Wow, superb blog structure! How lengthy have you ever been running a blog for?
    you made blogging glance easy. The whole look of your web site is wonderful, let
    alone the content![X-N-E-W-L-I-N-S-P-I-N-X]I simply couldn’t leave
    your website prior to suggesting that I extremely enjoyed the standard information an individual provide to your visitors?
    Is gonna be back steadily in order to inspect new posts.

  8. An impressive share! I have just forwarded this onto a colleague who
    was conducting a little research on this.
    And he in fact bought me lunch simply because I found it for him…
    lol. So let me reword this…. Thank YOU for the meal!!

    But yeah, thanx for spending time to discuss this subject
    here on your site.

  9. Do you mind if I quote a few of your articles as long as I provide credit and
    sources back to your blog? My website is in the exact same niche as yours
    and my users would truly benefit from a lot of the information you present
    here. Please let me know if this alright with you. Many thanks!

Kommentarer inaktiverade.