# An example config file for the mr(1) command. [DEFAULT] # Teach mr how to run svn cleanup. cleanup = if [ -d "$MR_REPO"/.svn ]; then svn cleanup ; fi # And how to run git gc gc = if [ -d "$MR_REPO"/.git ]; then git gc; fi # Tests used in the skips below. # - wantsrc checks whether I probably want a full source checkout (quite # large) # - wantmedia checks whether I probably want various large media files # here. # - private are hosts I trust private data to # - mylaptop only succeeds if it's on my main development laptop, which # gets lots of extra cruft # - kite only succeeds on kite lib = wantsrc() { test "$(whoami)" = joey } wantmedia() { if [ "$(whoami)" = joey ]; then case "$(hostname)" in kodama|dragon|dodo) return 0 ;; esac fi return 1 } private() { if [ "$(whoami)" = joey ]; then case "$(hostname)" in wren|kodama|dragon|dodo|bluebird) return 0 ;; esac fi return 1 } mylaptop() { test "$(hostname)" = kodama } kite() { test "$(hostname)" = wren } [src/mr] checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/mr skip = ! wantsrc [src/linux-2.6] checkout = git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git skip = ! mylaptop || ! wantsrc || ([ "$1" = update ] && [ $(hours_since "$1") -lt 12 ]) [src/dpkg] # A merge of the upstream dpkg git repo and my own personal branch. checkout = git clone git://git.debian.org/git/dpkg/dpkg.git && cd dpkg && git remote add kite ssh://git.kitenet.net/srv/git/kitenet.net/dpkg && git fetch kite && git checkout -b sourcev3 kite/sourcev3 update = git pull origin master && git pull kite sourcev3 commit = git push kite skip = ! wantsrc [html/www.debian.org] # Still in CVS..urk! checkout = CVSROOT=:ext:joeyh@cvs.debian.org:/cvs/webwml cvs co -d www.debian.org webwml # cvs sucks sufficiently that I prefer to run these commands by hand, # and only rarely update = echo "skipping cvs update (too slow)" status = echo "skipping cvs status (too ugly)" skip = ! mylaptop || ! wantsrc # My home directory, which I keep in svn. [] checkout = svn co svn+ssh://svn.kitenet.net/srv/svn/joey/trunk/home-$(hostname) joey # run svnfix after each update update = svn update && svnfix [mail] checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/private/mail skip = ! private