Sunday, October 2nd, 2011
Yesterday I did some work on adding plugin support to SparkleShare. This feature allows you to write your own plugins in the form of a simple XML file. It’s possible to preset an address or a complete address + repository, as well as which backend to use (only Git and experimental Mercurial at this point):
<?xml version="1.0" encoding="UTF-8"?>
<sparkleshare>
<plugin>
<info>
<name>Red Hat UX Team Hub</name>
<description>Internal server for the UX team</description>
<icon>redhat.png</icon>
<backend>Git</backend>
</info>
<address>
<value>ssh://git@design.bos.lab.redhat.com/</value>
<example></example>
</address>
<path>
<value></value>
<example>/project</example>
</path>
</plugin>
</sparkleshare>
Save the XML file (ending with .xml, and along with the 24×24px icon) in ~/.config/sparkleshare/plugins and it will appear the next time you start SparkleShare. Granted, it’s not a very friendly way to add plugins, but I’ll work on that.

By the way: does anyone know how to make the secondary description line in the TreeView row 50% transparent and white when the row is selected? I guess I have to take the selection background colour and the selected text colour and then blend them, but I’ve no idea how… 
Tuesday, June 14th, 2011
Hello everyone. Thanks for being here this morning. We’ve got some great stuff for you today.
Put some effort into revamping the SparkleShare event log this weekend. It aggregates all events from all your of folders into one window. Amazing. Much more useful and easier to see what what happened to all your projects during the time you were slacking off. Fantastic. Dealing with several windows felt a bit clunky, so now you can filter the list by using the dropdown at the top. Great. The folders in the menu now take you to the actual folders instead of opening a log, which is a much better mapping. Super easy.
Also added libappindicator support so it integrates well on Ubuntu with help of Bertrand. All of this will be available in stores when someone decides to package it.
Thanks for coming. We’ve got a hands-on area for the press set up. See you soon. Thank you very much.

Tuesday, June 7th, 2011
A first stable release had been in the air for a while now, but issues kept creeping up every now and then that were holding it back. The result was too much rewriting of the code and adding of features than that is good for after a release candidate, but after about two weeks of no critical bugs being reported, and the fact that it’s succesfully syncing my Linux box and Mac, after about a year since the start of the SparkleShare project, I’d like to finally announce SparkleShare 0.2!
Get the Linux an Mac versions fresh off the front page. There is a Mac binary available, but for Linux there’s still only source code. Hopefully the Linux distributions will make installable packages very soon. Please read the documentation before getting started.
Changes since 0.2 RC1
- Added support for Growl to show notifications on Mac.
- Removed the dependancy on GitSharp.
- File rename detection support in the event logs.
- Fixed all crashes reported in RC1 and improved sync algorithm.
- Redid collision detection and conflict resolving (use a copy of each version).
- Improved about dialogs with version checking.
- Pluggable backend (experimental Mercurial support).
Known issues
- For now, a central notification server (an irc daemon) is needed to notify clients of changes because there is no specific server side code yet. Only update infomation “Hey, there are new changes on the server!” is send. You can override this to use your own server by adding a <announcements>my-server.com</announcements> element to the appropriate folder element in ~/.config/sparkleshare/config.xml.
- The Mac version doesn’t have file manager integration yet.
- Resuming from suspend is a bit buggy. Restarting SparkleShare fixes it.
- SparkleShare won’t yet be notified of changes made to the git repository manually by using the command line tools.
Plans for the near future
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 irc.gnome.org, if you’re interested in helping.
Finally…
…I’d like to thank all contributors and testers. Specially Alex Hudson, Bertrand Lorentz, Lapo Calamandrei, and Łukasz Jernaś. Thanks!
Now have fun and create cool stuff!