Currently I am very busy writing my Summer of Code project. You can see my plan on the Ubuntu wiki: http://udu.wiki.ubuntu.com/SimpleBackupSolution and follow my progress in my bazaar-ng repository.
I must say that bazaar-ng is a simple as subversion and as powerful as arch, but as complete as current Xorg package for Ubuntu unstable (aka breezy) ;P
I am writing all of this SoC code in python which is my first real life exposure to this language. I am deeply impressed by the easiness of the language, but slightly depressed by the lack of documentation in some areas, for example python-gnome modules are mostly undocumented. While the simple stuff can be scoped out from some examples, a more advanced use would require much guesswork.
I like that in python everything is an object and that objects with similar interfaces are interchangeable, for example: Tarfile module makes .tar archives. It would really like to write them out to a file, but will also accept a fileobj. It acctually only need this object to have a proper write() function, so a Handle from Gnome-vfs module should do nicely there. That would allow a transparent reading/writing of the resulting .tar to any destination supported by Gnome-VFS.
Now that is cool.
I am writing a backup daemon now. The due date for this is tomorrow. I have local plain file and local .tar backups working. I still have to make Gnome-vfs .tar backups work as intended, make incremental backups work and do some configuration file parsing. Also a simple restore utility must be done 'till tomorrow. I might just make it :)
(GUI tools are scheduled for the next week)