utilities
Backup your system for a desktop user
Sunday, April 5th, 2009 | Uncategorized | 6 Comments
While Linux and Debian are plenty of programs for backing up your system, things change when you need a backup system for a common desktop user. In this area there is a lot of room for improvement, as programs for KDE and GNOME are years behind what programs for Windows and Mac OS X are offering.
There has been some programs intents of writing a good program, full featured and with a nice graphical interface, as Simple Backup, and its fork Not So Simple Backup, pybackpack, or TimeVault, an intent to clone Apple’s TImeMachine, and it’s fork TimeVaultNG written for KDE. Those are projects that start with a great impulse, even some of the mentored by Google Summer of Code, and when they reach some basic functionality, they get abandoned or not being properly maintained.
What I would like to see for a backup system for desktop user is:
- Desktop independent backend. Why implement and reimplement and reimplement again. A lot of effort is lost in early stages, until program starts to be functional. For this, using yet written utils as rdif-backup, duplicity or rdup would allow this step to get ready faster, and being more reliable.
- Frontend integrated with desktop, being it GNOME or KDE. This will imply implementing two desktop clients, so they can use technologies available to each one.
- Using dbus for communicating frontend and backend.
- Backend should be able to detect removable devicies as well as network based backups (think on NAS), and only perform the backup if they are present
- Allow to store backups also in Amazon S3. This could be in raw or even better, with a system that would allow mounting the remote device as a local HDD. This is something JungleDisk makes, and using fuse should not be hard to implement
A lot of improvement and innovation has taken place in Linux Desktop during all these years, but backups are also important for SOHO users, and they need a well integrated program for doing that, as console based solutions usually require configuration skills which desktop users don’t have.
Updated 6th April 22:26 CEST: I have been recommended in comments to try Back in Time and Déjà Dup. Both are in active delopment, which is a bonus. The first one works in a similar way to TimeVault, while the second one works using duplicity as backend, but has support to upload the resulting files to a remote server using SSH or to Amazon S3. I will investigate more on these apps.
Giver: little util for sharing folders
Wednesday, December 31st, 2008 | Uncategorized | Comments Off
While searching for different options to share files among different computers in a local LAN I found via Planet Ubuntu giver a little util which uses avahi/zeroconf to publish shared folders or files. It is a easy tool, that works and that serve well its purpose.
But its development has stopped some time ago, and that means that nobody has cared to port it to Windows, where it would be an
interesting tool to avoid the need of using windows network to share folders, which in an ad-hoc network tends to work problematically.
These little gems should receive more care from freedesktop.org, GNOME Foundation, Canonical, Novell, … as are the utils that make a difference in desktop expecience. Having a nice visual effects is not enough to attract people to free destops, but having tools that make everyday life is.
git tips
Thursday, December 25th, 2008 | Uncategorized | 4 Comments
Git is becoming my main utility for Debian packaging, as I am using it to keep my work on packages I maintain alone or in a team by using git.debian.org facilities. I am not still using tools like TopGit to keep patches, by I also intend to do so in a near future.
What does git give me over svn? Basically two things: branches and having the whole source code at hand. The first is obvious, I can easily create branches to experiment without having to change anything in the way the package is, so if a new upstream release occurs in the time it takes me to implement some change (and that usually happens) I can upload it straight, not affecting my undergoing changes.
Also I appreciate having the whole source code. This could have been also done using svn, but we preferred not to do so, and most packages only have debian dir in their svn repositories. This makes harder work with upstream sources, where they need to be patched. Git provides me the way to have always an upstream source code copy at hand, and the branch power can also be applied to it.
But I wanted to write about a couple of git tips that I found. Seems that they have already appeared on Planet Debian before, but I think that is not a bad idea to remember them (from damog’s blog):
1. Changing into a directory that contains a repo and shows you on PS1 what branch you are standing on:
On .bashrc I have:
GITPS1='$(__git_ps1 ":%s ")'
export PS1=”${GREEN}\w${RS} ${YELLOW}${GITPS1}${RS}\\$ ”
But what I didn’t want to lose was the code that was posted to paste.bin after in a comment someone pointed out that this trick was a bit annoying if your home dir were also a git repo. This is one solution:
__maybe_git_ps1 () {
local BRANCH=”$(__git_ps1 ‘%s’)”
case “$BRANCH” in
master)
# silent
;;
”)
# not a git repo? -> silent
;;
*)
if [ -n "$1" ]; then
printf “$1″ “$BRANCH”
else
printf ” (%s)” “$BRANCH”
fi
;;
esac
}
2. An alias I like to use on repos that are personal for quick tracking:
[alias]
…
log1 = log –pretty=oneline –abbrev-commit
Thanks damog for these tips!

