diff --git a/app-shells/autojump/Manifest b/app-shells/autojump/Manifest
new file mode 100644
index 0000000..88383ad
--- /dev/null
+++ b/app-shells/autojump/Manifest
@@ -0,0 +1 @@
+DIST autojump-21.6.9.tar.gz 50172 SHA256 8918817688a4e5f1e87e4e559a1bb5cd3fe43cb11222bb5283fd0f44d395464b SHA512 90f2d5fa3e8e272073a8dd00e6023f74d6e9159f5c4d5345fb3e2fbb4829262e0de18d64975dbd7b85bbbfb83f5706f4463f7370806516385cae48595113afff WHIRLPOOL 89e4bb6380396c50a7509050e192ab3dcaeef4861191760a75464cbed0deeecb071544d255d88d8139323abbf38c84f6418821437debf273d1f99d76e63c67bd
diff --git a/app-shells/autojump/autojump-21.6.9.ebuild b/app-shells/autojump/autojump-21.6.9.ebuild
new file mode 100644
index 0000000..bb28c27
--- /dev/null
+++ b/app-shells/autojump/autojump-21.6.9.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-shells/autojump/autojump-21.6.9.ebuild,v 1.2 2013/09/05 19:44:43 mgorny Exp $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
+
+inherit python-r1 python-utils-r1 vcs-snapshot
+
+DESCRIPTION="change directory command that learns"
+HOMEPAGE="http://github.com/joelthelion/autojump"
+SRC_URI="https://github.com/joelthelion/${PN}/archive/release-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="*"
+IUSE="bash-completion python test zsh-completion"
+
+RDEPEND="bash-completion? ( >=app-shells/bash-4 )
+	python? ( ${PYTHON_DEPS} )
+	zsh-completion? ( app-shells/zsh app-shells/zsh-completion )"
+DEPEND="test? ( ${PYTHON_DEPS} )"
+
+src_prepare() {
+	sed -e "s: \(/etc/profile.d\): \"${EPREFIX}\1\":" \
+		-i bin/autojump.sh || die
+}
+
+src_compile() {
+	true
+}
+
+src_install() {
+	dobin bin/autojump
+
+	insinto /etc/profile.d
+	doins bin/${PN}.sh
+
+	if use bash-completion ; then
+		doins bin/${PN}.bash
+	fi
+
+	if use zsh-completion ; then
+		doins bin/${PN}.zsh
+		insinto /usr/share/zsh/site-functions
+		doins bin/_j
+	fi
+
+	if use python ; then
+		python_foreach_impl python_domodule tools/autojump_ipython.py
+
+		einfo "This tool provides \"j\" for ipython, please add"
+		einfo "\"import autojump_ipython\" to your ipy_user_conf.py."
+	fi
+
+	doman docs/${PN}.1
+	dodoc README.md
+}
diff --git a/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch b/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch
new file mode 100644
index 0000000..a16fc2d
--- /dev/null
+++ b/app-shells/autojump/files/autojump-21.3.0-supported-shells.patch
@@ -0,0 +1,34 @@
+--- autojump-21.3.0/bin/autojump.sh
++++ autojump-21.3.0/bin/autojump.sh
+@@ -1,17 +1,17 @@
+ # source autojump on BASH or ZSH depending on the shell
+ 
+ shell=`echo ${SHELL} | awk -F/ '{ print $NF }'`
+-
+-# check local install
+-if [ -s ~/.autojump/etc/profile.d/autojump.${shell} ]; then
+-	source ~/.autojump/etc/profile.d/autojump.${shell}
+-
+-# check global install
+-elif [ -s /etc/profile.d/autojump.${shell} ]; then
+-	source /etc/profile.d/autojump.${shell}
+-
+-# check custom install locations (modified by Homebrew or using --destdir option)
+-elif [ -s custom_install/autojump.${shell} ]; then
+-	source custom_install/autojump.${shell}
+-
+-fi
++case ${shell} in
++	bash|zsh)
++		# check local install
++		if [ -s ~/.autojump/etc/profile.d/autojump.${shell} ]; then
++			source ~/.autojump/etc/profile.d/autojump.${shell}
++		# check global install
++		elif [ -s "${EPREFIX}"/etc/profile.d/autojump.${shell} ]; then
++			source "${EPREFIX}"/etc/profile.d/autojump.${shell}
++		fi
++		;;
++	*)
++		echo "Your shell ${shell} (from SHELL=${SHELL}) is unkown."
++		;;
++esac
diff --git a/app-shells/autojump/metadata.xml b/app-shells/autojump/metadata.xml
new file mode 100644
index 0000000..2d0c96c
--- /dev/null
+++ b/app-shells/autojump/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+	<email>xmw@gentoo.org</email>
+	<name>Michael Weber</name>
+</maintainer>
+<upstream>
+	<bugs-to>https://github.com/joelthelion/autojump/issues</bugs-to>
+</upstream>
+</pkgmetadata>
+
diff --git a/metadata/md5-cache/app-shells/autojump-21.6.9 b/metadata/md5-cache/app-shells/autojump-21.6.9
new file mode 100644
index 0000000..89d1d69
--- /dev/null
+++ b/metadata/md5-cache/app-shells/autojump-21.6.9
@@ -0,0 +1,13 @@
+DEFINED_PHASES=compile install prepare unpack
+DEPEND=test? ( python_targets_python2_6? ( >=dev-lang/python-2.6.8-r3:2.6 ) python_targets_python2_7? ( >=dev-lang/python-2.7.3-r2:2.7 ) python_targets_python3_2? ( >=dev-lang/python-3.2.5-r2:3.2 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) dev-lang/python-exec:=[python_targets_python2_6(-)?,python_targets_python2_7(-)?,python_targets_python3_2(-)?,python_targets_python3_3(-)?,-python_single_target_python2_6(-),-python_single_target_python2_7(-),-python_single_target_python3_2(-),-python_single_target_python3_3(-)] )
+DESCRIPTION=change directory command that learns
+EAPI=5
+HOMEPAGE=http://github.com/joelthelion/autojump
+IUSE=bash-completion python test zsh-completion python_targets_python2_6 python_targets_python2_7 python_targets_python3_2 python_targets_python3_3
+KEYWORDS=*
+LICENSE=GPL-3
+RDEPEND=bash-completion? ( >=app-shells/bash-4 ) python? ( python_targets_python2_6? ( >=dev-lang/python-2.6.8-r3:2.6 ) python_targets_python2_7? ( >=dev-lang/python-2.7.3-r2:2.7 ) python_targets_python3_2? ( >=dev-lang/python-3.2.5-r2:3.2 ) python_targets_python3_3? ( >=dev-lang/python-3.3.2-r2:3.3 ) dev-lang/python-exec:=[python_targets_python2_6(-)?,python_targets_python2_7(-)?,python_targets_python3_2(-)?,python_targets_python3_3(-)?,-python_single_target_python2_6(-),-python_single_target_python2_7(-),-python_single_target_python3_2(-),-python_single_target_python3_3(-)] ) zsh-completion? ( app-shells/zsh app-shells/zsh-completion )
+SLOT=0
+SRC_URI=https://github.com/joelthelion/autojump/archive/release-v21.6.9.tar.gz -> autojump-21.6.9.tar.gz
+_eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	multibuild	46527a4656956da3d58acff72c9b59b1	multilib	3bf24e6abb9b76d9f6c20600f0b716bf	multiprocessing	d7f2985a2c76c365ee20269db5261414	python-r1	cd956d5a4bac2209a64d0f4851cc115d	python-utils-r1	3eaef07c45447158fad343dac1667938	toolchain-funcs	48b38a216afb92db6314d6c3187abea3	vcs-snapshot	58b766562c9fbfb3268b04e33cdf2f66
+_md5_=856e6cd637cd3b6fbb2fda48a8ad2b0a
