Automatically removing a torrent when it has finished downloading

So as not to saturate my (very limited) uplink when a torrent as finished downloading (using transmission-daemon on my Raspberry Pi) I wanted it to be removed automatically. There were a number of docs on the web about how to do this but here is a simple 2-line file that will do it:

#!/bin/bash
transmission-remote -t $TR_TORRENT_ID -r

Save this as /usr/bin/torrent-complete.sh, chmod +x the script. Stop transmission-deamon (you need to do this rather than a restart as it always dumps the current live config on stop/restart so any changes you make while it is running will be nuked) Then open up /etc/transmission-daemon/settings.json and add (or modify) the following lines:

    "script-torrent-done-enabled": true,
    "script-torrent-done-filename": "/usr/bin/torrent-complete.sh",

Start up transmission-deamon and there you go.

Creating a git history out of a collection of tarballs

So, recently I found some projects from 10+ years back that I had a load of tarballs/zip files for which were taking up quite a bit of backup space. I figured I could unzip each of the repositories in date order and put the changes into a git repository in order to save a bit of space. Here are the commands to do this:

# Put the list of files to import in a file and manually
# edit the order if required to make the history the
# correct order
ls ../tarballs/*.bz2 > ../file_list
git init .
for i in `cat ../file_list`; do
 rm -fr *; # Clear out for next tarball
 tar xjf $i;
 git add -A; # Add any new files
 git add -u; # Remove any files removed from tarball
 git commit -am $i; # Commit with the filename
done

I also did this with some backups from an old psion – converting the 50 or so tarballs to a git repo reduced 500mb of backups to 30mb of git…