madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged.
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
# Teach mr to run a few git and svn specific commands.
svn_cleanup = svn cleanup "$@"
git_gc = git gc "$@"
# Teach mr to run a few git and svn specific commands.
svn_cleanup = svn cleanup "$@"
git_gc = git gc "$@"
-git_tag = git tag -l
-svn_tag = svn ls "$(LC_ALL=C svn info . | grep -i ^URL: | cut -d ' ' -f 2 | sed -e 's/trunk/tags/')"
+git_tags = git tag -l
+svn_tags = svn ls "$(LC_ALL=C svn info . | grep -i ^URL: | cut -d ' ' -f 2 | sed -e 's/trunk/tags/')"
# I prefer to git-svn rebase to fetch
git_svn_update = git svn rebase
# I prefer to git-svn rebase to fetch
git_svn_update = git svn rebase
-# This hack is here because git pull stupidly outputs tag info to stderr.
-# Shut it up but let real errors through, for use in cron.
-quietupdate = mr -s -n update 3>&1 1>/dev/null 2>&3 | egrep -v '(storing tag|tag: )' || true
# Tests used below.
# - anon checks whether this is an anonymous checkout, by testing what url
# $HOME uses
# Tests used below.
# - anon checks whether this is an anonymous checkout, by testing what url
# $HOME uses
# if not, the checkout is minimal
# - on checks whether the given host basename is one of the listed
# values. A value can also have a username in it, ie "joey@dodo".
# if not, the checkout is minimal
# - on checks whether the given host basename is one of the listed
# values. A value can also have a username in it, ie "joey@dodo".
-# - 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
lib =
# - mylaptop only succeeds if it's on my main development laptop, which
# gets lots of extra cruft
lib =
- wantmedia() {
- on joey@kodama joey@dragon joey@dodo joey@turtle
- }
- private() {
- on joey@wren joey@kodama joey@dragon joey@dodo joey@turtle \
- joey@blurbird joey@slug
- }
}
# The root of my home directory.
}
# The root of my home directory.
order = 1
checkout =
if anon; then
order = 1
checkout =
if anon; then
git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/home joey
fi
git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/home joey
fi
# Dummy target to create Maildir. Doesn't run offlineimap since I have that
# cronned on machines where I want it.
# Dummy target to create Maildir. Doesn't run offlineimap since I have that
# cronned on machines where I want it.
update = :
skip = ! full
checkout = mkdir Maildir Maildir/cur Maildir/new Maildir/tmp; chmod 700 Maildir
status = :
update = :
skip = ! full
checkout = mkdir Maildir Maildir/cur Maildir/new Maildir/tmp; chmod 700 Maildir
status = :
+[mail]
+checkout = git clone ssh://joey@git.kitenet.net/srv/git/joey/private/mail
+# I use mairix to index my mail archive; keep its index up-to-date.
+fixups = if [ "$(which mairix)" ]; then ionice -c 3 mairix -Q; fi
+skip = ! mylaptop
+
+[tmp]
# This is a dummy target, all it does is run fixups at the end of
# an update.
# This is a dummy target, all it does is run fixups at the end of
# an update.
-[tmp]
-update = fixups
-checkout = fixups
+fixups = $HOME/bin/fixups
+checkout = mkdir -p $HOME/tmp