summaryrefslogtreecommitdiff
path: root/dev-vcs/git-cola
diff options
context:
space:
mode:
Diffstat (limited to 'dev-vcs/git-cola')
-rw-r--r--dev-vcs/git-cola/Manifest16
-rw-r--r--dev-vcs/git-cola/files/README.gentoo3
-rw-r--r--dev-vcs/git-cola/files/git-cola-2.10-disable-live-tests.patch24
-rw-r--r--dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch22
-rw-r--r--dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch13
-rw-r--r--dev-vcs/git-cola/files/index.html15
-rw-r--r--dev-vcs/git-cola/git-cola-2.11.ebuild104
-rw-r--r--dev-vcs/git-cola/git-cola-2.2.1.ebuild97
-rw-r--r--dev-vcs/git-cola/git-cola-2.3.ebuild96
-rw-r--r--dev-vcs/git-cola/git-cola-2.4.ebuild96
-rw-r--r--dev-vcs/git-cola/metadata.xml11
11 files changed, 497 insertions, 0 deletions
diff --git a/dev-vcs/git-cola/Manifest b/dev-vcs/git-cola/Manifest
new file mode 100644
index 000000000000..9fa673b45909
--- /dev/null
+++ b/dev-vcs/git-cola/Manifest
@@ -0,0 +1,16 @@
+AUX README.gentoo 227 SHA256 c95560b961a37e9c7b731599c9eb85fff9f9a45262747a498ae5034dca2c49cb SHA512 9e8b672fe6998a255dea761e186d5a9031895e8ec0eb14d4942c81a462a238ef1eec0431671da8be3ee4bbacd7f81cec6ec1f9e75e2f4429c3472faad5ba2c2d WHIRLPOOL a1ea204d2353fee42dfdc3880dd2689a7f7b4f12ba2d5d048b86ca29ecf29f34f970b84e5fde30110dfb6f029a8ffd41dc84cff80f1bf652a18ad5db4820958b
+AUX git-cola-2.10-disable-live-tests.patch 827 SHA256 4000f17863633d8395c351131e5afddea8f8273282b97c75d5433292878ab8d5 SHA512 86f7410ce711db2dc19d4348047285dbd1a3c078512d13b589ef898dfd870a4f459371319965c697d8654dd4550a358e67e5d6b74c0317820422c3e98b7084a9 WHIRLPOOL c93ee7de175b39fdeeb5682c7147d3ec0fe599740a1119426392e23eec25072ad1ba2ef1dad5a9497f3ef1ff2d84c5b7189ebfd79e248657b94290380d21e3b2
+AUX git-cola-2.2.1-disable-live-tests.patch 800 SHA256 99762efaf3001ac247bca85e09f4641801898ba8f5a838ea36d8f1394a2c174b SHA512 36b84490d371dbeff3a206603c4ff3d64d6e4b60338c48c83864d66058c95371e3e3621390cb9541a8d955e2a8f1a6187539ee0a966c5b8beaa48a3e417c4803 WHIRLPOOL d1b56be64ce49eb7c7832116f95b6aed36ec58f2a55fc17d037f030ff6ce06d5662a57ef700462566e765f4d5b611526627588bc21c9c234b9996190cddad5ba
+AUX git-cola-2.2.1-update-git-config-in-tests.patch 445 SHA256 d1d2ac758a34d8bca28fc21b002203587dbb4a187ffdbc23f6d2323b57962ea4 SHA512 abb8fadcb851c11e896dbbcd247ea03bb9a6a109302fef0dfa847b6a4702334a16b97508c1e000763ef81af805d46cc28dcf25669d2e51cf79c0e1aadbe43fae WHIRLPOOL 238afaac178f608ce7b33f7dbab65e353f2f4f60d75c2604ec8ceb16d3a484b01dbab648580921c4e9a9461614e296017d0a9a507bc0820de01509c8787e71f9
+AUX index.html 355 SHA256 9b092445f2da302365c22fae670ad75f8d0a57ca64b4c99bf5662b9999869a60 SHA512 a3e66bb220ae05c2f49a75ce413c5aeefb9ced26f7e8b2175b32ade83663153fab94f8601b1d0182d1eeb907edc6c1bef3ad96d84b1e6c00ca4d5a816be79bac WHIRLPOOL fd3d058f2d57dd9664bc498d6b8bfa749d219d44bef7cbf64624abe16e019062108f52f8cc18ebf580e70d2eb20cdb89f760d380a83b932712a689e921201f7f
+DIST git-cola-2.11.tar.gz 1179769 SHA256 bc4007e0d9c80763ef58d630b033bfdbd8406af77bbd292a6c647ed3ca655b5b SHA512 99b865d7a49dcb041e54811141d242386642b5ed6fc12fa7a03431eb9b905cb88d88c4892dc432dd59e8ae3c85f20cc40f4bfb9b6ff002f4e5a4cfc0bdc4c72c WHIRLPOOL e7a3a1d50b6730aefd48e2d0a91cb3bf413240c516194ae39a2b6a7ebb5b07807bba10f51e1c3669817eed49aa938b01328416ca60cfcc684f95bbcd0005eaa2
+DIST git-cola-2.2.1.tar.gz 996484 SHA256 df0a3e1d3c49629926f2e30f55d635eca3c8da12e96232196b307613fa4b3aec SHA512 a91fe706ea150d9bd9a05a9d494c63d373cae0154deca8e40e30fc20e70be32d4fd1f021a971c067d46ab24f472965a12c115eeb4bd94e4f62c21e546d89c109 WHIRLPOOL ac68a558775bc5fdf3a168416132dedbeffe554f6f60f50b7e33f0d17d67aa829318b7a0df2607b47e41b8823d60e206e0544e03382eae7651b9ca1c3b9dfc09
+DIST git-cola-2.3.tar.gz 1005858 SHA256 3319810c16f6864deb5f94f533c7cfd17f30961595454da7c3c75879f56511b3 SHA512 2be0e971cd23aa0a1f8ec92ffd05f64cdd0ee34fb1e3c9bd3a98df0556968e9613d6494002e973db8de8ab389c48205ab1db42823d46e523c24a029cf25e3023 WHIRLPOOL 177996e40cc83dd2d2fe9db1ac97ba318d9d311779415e8e4327f3824a7c19f36f592ed1d6118e5a2d46a594a8dd681d0a2e2e54f2846c3636d9f4f3d8f196f5
+DIST git-cola-2.4.tar.gz 987829 SHA256 ef735431a2e58bac7671c4b9ab4fbb369195b16987fe9d3d931a9097c06c7f36 SHA512 702d5c7322a21e5807354d3b3b7b31fd5cef3c12c3294e2ad57add99f586277d4805e85122682acde40e6243529588e62762f9483d807ed12340057c6a37a0cc WHIRLPOOL de95800c0d8f67d301a102a8f623945170ca5961cde91fdabf2dd396f2470e52e8b51dde1f65b5aed408ebc3cd6802426c7bd3b9cd86db53b2965067d2646f47
+EBUILD git-cola-2.11.ebuild 2450 SHA256 95997661c58173affe54cb643236b35e91cf072d8dac852883e45f20d51a54ab SHA512 4f591549029883a04e5a706fa77254526e8de1ae58c7a6614d3eb1a948dff79dbfe7a6a243d86ddef9c05deffd99a52c78db84559073aa578a688a884608aafd WHIRLPOOL 3801acbb88c690029ec94ac423140db0937b1ce111a760b86503da1e0bdb9f990627a5efd6a7da9df2e648d847a65a865292749f809bba6fb6049f841d74bf17
+EBUILD git-cola-2.2.1.ebuild 2237 SHA256 42fec18c081db17675c3cef7a5788758d30c11dbf4c080fdbdc4043f9c5a256d SHA512 242289488664a7308ad53e1cda3c3ed064125ac0853e78faa3f3b749a721ec9565d912e5373237d78144f06b5b9b9230408aaa16f37603add548992f039fa1e4 WHIRLPOOL 9ccb86f82b39fb7d74518b9daeaf66e36b6f02a7dc20e7ce9de37d98e37ccf6a8234552fef68b8b3f2056c575fc14c1dd14f484c303831673b4a8b4c3739d07f
+EBUILD git-cola-2.3.ebuild 2193 SHA256 3fb818965e3887f015f9ea07951ea2986e1b08b58cd061bb5610e92005b1e749 SHA512 7b2c4b322965a6be84eb2a094e50fbf64e8a556dc4ddfbdb0deb3ae95ca525ea113fdb362163d34b36040707026a3cf9344f406f22662fd3706d094583b036a4 WHIRLPOOL 8d3baa62991b0a1813454641f82565520489a5fe58ca430cb6702f0380fd7c471a4809a9c85c4467ba0fd150414a49a6b5fc92d1f9e17075044c2a01282f23f5
+EBUILD git-cola-2.4.ebuild 2218 SHA256 4cfd4e6942f4de6c5ca170bc7daa82170d207c8606624df0ac4f0dc0aa1f8b7d SHA512 b3033ffa46f5c75700b065ae6e0fe25767e64c79d7525be89c2bf1cf0ef468cd2ca78ee75ea32c63d6d0aa3ce130270f3501e5fcc2fabf7e46bb52480c356461 WHIRLPOOL d8caededf76b9745bcd85361517d9b584430b1afc6a435d70dea1945bc48e37975a7b28487b944e004d5624a923b0ca4ea2f56570de1fb69233892ed68116b44
+MISC ChangeLog 4173 SHA256 8ffb82e9f9fd61e3f503836092bb4301d3d0f4e2505bc81cbedaa6fbc8851b4c SHA512 2d053846595358d03151bf703b81e6af86c1fa58bf6266b9deae68f4d2c3b23b67b64a864fa122f7d37a8f0d4adcd0c89f63a6b25709de3e34cf51b463f6d5c5 WHIRLPOOL 7b8c65a8be0dfbe3937816ae80e5877342351924b5269a492f65ad5ff7eca1caaa4324bc7186dd844acd42109bf7faa04fae5e8418fa20f421c8f8ab033c3d50
+MISC ChangeLog-2015 10625 SHA256 92eca8529f9e81271cbcd284e1c9efd34c569b085c091cf01f69dea79cd373fa SHA512 4c0ba0315dc5abcc446d19357d5c7b964fcd6f31d13b666403823bfcad3db4f1e8a3b56263d3a5b8f40140cc10838290ba027461b12b46de7ba0427d6ec34b49 WHIRLPOOL 4d9f910d6e3a1b64826a944e57954fb7943dc9442466740d037b1026bb38c2d8b9c9bc7aa76f79d14c4053cae7f4da4fc5558146188322f04909944e1e95a167
+MISC metadata.xml 342 SHA256 5b6b3c969c1b84a8d3bde28d76652af018ce5aee5a19289b4d3b0a954a427433 SHA512 9ef75fe8465b602db4d9645535f9ce228af6afffac7309c5f3e7dbe266fe5c89a08e96bc53c2fb4a364a8c3ec6c3d87579eb076d6ba005499f0f4f07316caecb WHIRLPOOL 31a04d11bcc4f8fea3bcedd6dbfb32f7528391a5a350de0899b4fad7a6f356eef70302854fd298c9d10172b9717995ca44c692e54683a1bdbeac75450b870d1d
diff --git a/dev-vcs/git-cola/files/README.gentoo b/dev-vcs/git-cola/files/README.gentoo
new file mode 100644
index 000000000000..0f4af85d5ccc
--- /dev/null
+++ b/dev-vcs/git-cola/files/README.gentoo
@@ -0,0 +1,3 @@
+Please make sure you have either a SSH key management installed and activated or
+installed a SSH askpass app like net-misc/x11-ssh-askpass.
+Otherwise git-cola may hang when pushing/pulling from remote git repositories via SSH.
diff --git a/dev-vcs/git-cola/files/git-cola-2.10-disable-live-tests.patch b/dev-vcs/git-cola/files/git-cola-2.10-disable-live-tests.patch
new file mode 100644
index 000000000000..1f58ea0eddb6
--- /dev/null
+++ b/dev-vcs/git-cola/files/git-cola-2.10-disable-live-tests.patch
@@ -0,0 +1,24 @@
+diff --git a/test/git_test.py b/test/git_test.py
+index 9f812b2..ff7da24 100644
+--- a/test/git_test.py
++++ b/test/git_test.py
+@@ -53,19 +53,6 @@ class GitCommandTest(unittest.TestCase):
+ version = self.git.version()[STDOUT]
+ self.failUnless(version.startswith('git version'))
+
+- def test_tag(self):
+- """Test running 'git tag'"""
+- tags = self.git.tag()[STDOUT].splitlines()
+- if os.getenv('GIT_COLA_NO_HISTORY', False):
+- return
+- self.failUnless('v1.0.0' in tags)
+-
+- def test_show(self):
+- """Test running 'git show'"""
+- oid = 'HEAD'
+- content = self.git.show(oid)[STDOUT]
+- self.failUnless(content.startswith('commit '))
+-
+ def test_stdout(self):
+ """Test overflowing the stdout buffer"""
+ # Write to stdout only
diff --git a/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch b/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch
new file mode 100644
index 000000000000..2ebdc9880d1e
--- /dev/null
+++ b/dev-vcs/git-cola/files/git-cola-2.2.1-disable-live-tests.patch
@@ -0,0 +1,22 @@
+diff --git a/test/git_test.py b/test/git_test.py
+index 9f812b2..ff7da24 100644
+--- a/test/git_test.py
++++ b/test/git_test.py
+@@ -53,17 +53,6 @@ class GitCommandTest(unittest.TestCase):
+ version = self.git.version()[STDOUT]
+ self.failUnless(version.startswith('git version'))
+
+- def test_tag(self):
+- """Test running 'git tag'"""
+- tags = self.git.tag()[STDOUT].splitlines()
+- self.failUnless( 'v1.0.0' in tags )
+-
+- def test_show(self):
+- """Test running 'git show'"""
+- sha = '1b9742bda5d26a4f250fa64657f66ed20624a084'
+- contents = self.git.show(sha)[STDOUT].splitlines()
+- self.failUnless(contents[0] == '/build')
+-
+ def test_stdout(self):
+ """Test overflowing the stdout buffer"""
+ # Write to stdout only
diff --git a/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch b/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch
new file mode 100644
index 000000000000..96271d05548c
--- /dev/null
+++ b/dev-vcs/git-cola/files/git-cola-2.2.1-update-git-config-in-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/test/helper.py b/test/helper.py
+index 006a5b1..64d0dfc 100644
+--- a/test/helper.py
++++ b/test/helper.py
+@@ -87,6 +87,8 @@ class GitRepositoryTestCase(TmpPathTestCase):
+
+ def initialize_repo(self):
+ self.git('init')
++ self.git('config', '--local', 'user.name', 'Your Name')
++ self.git('config', '--local', 'user.email', 'you@example.com')
+ self.touch('A', 'B')
+ self.git('add', 'A', 'B')
+
diff --git a/dev-vcs/git-cola/files/index.html b/dev-vcs/git-cola/files/index.html
new file mode 100644
index 000000000000..7f1e814a0b51
--- /dev/null
+++ b/dev-vcs/git-cola/files/index.html
@@ -0,0 +1,15 @@
+<html>
+<head>
+ <title>Missing documentation</title>
+</head>
+<body>
+<div style="border: 4px double red; padding: 2em; margin: 4em; top: 4em; width: 20em;">
+ This documentation is missing. Please reinstall dev-util/cola with the 'doc' useflag enabled.
+
+ <p style="text-align: right;">
+ Sincerely,<br/>
+ your package maintainer.
+ </p>
+</div>
+</body>
+</html>
diff --git a/dev-vcs/git-cola/git-cola-2.11.ebuild b/dev-vcs/git-cola/git-cola-2.11.ebuild
new file mode 100644
index 000000000000..78f74ae2c038
--- /dev/null
+++ b/dev-vcs/git-cola/git-cola-2.11.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_4 python3_5 )
+DISTUTILS_SINGLE_IMPL=true
+
+inherit distutils-r1 readme.gentoo-r1 virtualx
+
+DESCRIPTION="The highly caffeinated git GUI"
+HOMEPAGE="https://git-cola.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="doc test"
+
+# Since PyQt5 is preferred at runtime if installed, depend on that
+RDEPEND="
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/send2trash[${PYTHON_USEDEP}]
+ dev-python/QtPy[gui,${PYTHON_USEDEP}]
+ dev-python/PyQt5[gui,network,widgets,${PYTHON_USEDEP}]
+ dev-vcs/git"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ python_targets_python2_7? ( dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] )
+ )
+ test? ( dev-python/nose[${PYTHON_USEDEP}] ${VIRTUALX_DEPEND} )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.10-disable-live-tests.patch
+)
+
+python_prepare_all() {
+ # Use system QtPy
+ rm -r qtpy || die
+
+ rm share/git-cola/bin/*askpass* || die
+
+ # remove broken tests
+ rm test/i18n_test.py || die
+
+ # don't install docs into wrong location
+ sed -i -e '/doc/d' setup.py || die
+
+ # fix doc directory reference
+ sed -i \
+ -e "s/'doc', 'git-cola'/'doc', '${PF}'/" \
+ cola/resources.py || die
+
+ # fix ssh-askpass directory reference
+ sed -i -e 's/resources\.share/resources\.prefix/' cola/app.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ mydistutilsargs=( --no-vendor-libs )
+}
+
+python_compile_all() {
+ cd share/doc/${PN}/ || die
+ if use doc; then
+ emake all
+ else
+ sed \
+ -e '/^install:/s:install-html::g' \
+ -e '/^install:/s:install-man::g' \
+ -i Makefile || die
+ fi
+}
+
+python_test() {
+ PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \
+ virtx nosetests --verbose --with-id --with-doctest \
+ --exclude=sphinxtogithub
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+python_install_all() {
+ cd share/doc/${PN}/ || die
+ emake \
+ DESTDIR="${D}" \
+ docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ prefix="${EPREFIX}/usr" \
+ install
+
+ python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase" "${ED}"/usr/bin/git-cola
+ python_optimize "${ED}/usr/share/git-cola/lib/cola"
+
+ use doc || HTML_DOCS=( "${FILESDIR}"/index.html )
+
+ distutils-r1_python_install_all
+ readme.gentoo_create_doc
+}
diff --git a/dev-vcs/git-cola/git-cola-2.2.1.ebuild b/dev-vcs/git-cola/git-cola-2.2.1.ebuild
new file mode 100644
index 000000000000..cad0264b76b7
--- /dev/null
+++ b/dev-vcs/git-cola/git-cola-2.2.1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+DISTUTILS_SINGLE_IMPL=true
+
+inherit distutils-r1 readme.gentoo virtualx
+
+DESCRIPTION="The highly caffeinated git GUI"
+HOMEPAGE="https://git-cola.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="doc test"
+
+RDEPEND="
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/send2trash[${PYTHON_USEDEP}]
+ dev-python/PyQt4[${PYTHON_USEDEP}]
+ dev-vcs/git"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ python_targets_python2_7? ( dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] )
+ )
+ test? ( dev-python/nose[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-disable-live-tests.patch
+ "${FILESDIR}"/${P}-update-git-config-in-tests.patch
+)
+
+python_prepare_all() {
+ rm share/git-cola/bin/*askpass* || die
+
+ # remove broken tests
+ rm test/i18n_test.py || die
+
+ # don't install docs into wrong location
+ sed -i -e '/doc/d' setup.py || die
+
+ # fix doc directory reference
+ sed -i \
+ -e "s/'doc', 'git-cola'/'doc', '${PF}'/" \
+ cola/resources.py || die
+
+ # fix ssh-askpass directory reference
+ sed -i -e 's/resources\.share/resources\.prefix/' cola/app.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ cd share/doc/${PN}/ || die
+ if use doc; then
+ emake all
+ else
+ sed \
+ -e '/^install:/s:install-html::g' \
+ -e '/^install:/s:install-man::g' \
+ -i Makefile || die
+ fi
+}
+
+python_test() {
+ PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \
+ VIRTUALX_COMMAND="nosetests --verbose --with-id --with-doctest \
+ --exclude=sphinxtogithub" \
+ virtualmake
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+python_install_all() {
+ cd share/doc/${PN}/ || die
+ emake \
+ DESTDIR="${D}" \
+ docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ prefix="${EPREFIX}/usr" \
+ install
+
+ python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase"
+ python_optimize "${ED}/usr/share/git-cola/lib/cola"
+
+ use doc || HTML_DOCS=( "${FILESDIR}"/index.html )
+
+ distutils-r1_python_install_all
+ readme.gentoo_create_doc
+}
diff --git a/dev-vcs/git-cola/git-cola-2.3.ebuild b/dev-vcs/git-cola/git-cola-2.3.ebuild
new file mode 100644
index 000000000000..878eef70db2b
--- /dev/null
+++ b/dev-vcs/git-cola/git-cola-2.3.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+DISTUTILS_SINGLE_IMPL=true
+
+inherit distutils-r1 readme.gentoo virtualx
+
+DESCRIPTION="The highly caffeinated git GUI"
+HOMEPAGE="https://git-cola.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc test"
+
+RDEPEND="
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/send2trash[${PYTHON_USEDEP}]
+ dev-python/PyQt4[${PYTHON_USEDEP}]
+ dev-vcs/git"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ python_targets_python2_7? ( dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] )
+ )
+ test? ( dev-python/nose[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.1-disable-live-tests.patch
+)
+
+python_prepare_all() {
+ rm share/git-cola/bin/*askpass* || die
+
+ # remove broken tests
+ rm test/i18n_test.py || die
+
+ # don't install docs into wrong location
+ sed -i -e '/doc/d' setup.py || die
+
+ # fix doc directory reference
+ sed -i \
+ -e "s/'doc', 'git-cola'/'doc', '${PF}'/" \
+ cola/resources.py || die
+
+ # fix ssh-askpass directory reference
+ sed -i -e 's/resources\.share/resources\.prefix/' cola/app.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ cd share/doc/${PN}/ || die
+ if use doc; then
+ emake all
+ else
+ sed \
+ -e '/^install:/s:install-html::g' \
+ -e '/^install:/s:install-man::g' \
+ -i Makefile || die
+ fi
+}
+
+python_test() {
+ PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \
+ VIRTUALX_COMMAND="nosetests --verbose --with-id --with-doctest \
+ --exclude=sphinxtogithub" \
+ virtualmake
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+python_install_all() {
+ cd share/doc/${PN}/ || die
+ emake \
+ DESTDIR="${D}" \
+ docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ prefix="${EPREFIX}/usr" \
+ install
+
+ python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase"
+ python_optimize "${ED}/usr/share/git-cola/lib/cola"
+
+ use doc || HTML_DOCS=( "${FILESDIR}"/index.html )
+
+ distutils-r1_python_install_all
+ readme.gentoo_create_doc
+}
diff --git a/dev-vcs/git-cola/git-cola-2.4.ebuild b/dev-vcs/git-cola/git-cola-2.4.ebuild
new file mode 100644
index 000000000000..3b2f509edd47
--- /dev/null
+++ b/dev-vcs/git-cola/git-cola-2.4.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_4 )
+DISTUTILS_SINGLE_IMPL=true
+
+inherit distutils-r1 readme.gentoo virtualx
+
+DESCRIPTION="The highly caffeinated git GUI"
+HOMEPAGE="https://git-cola.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc test"
+
+RDEPEND="
+ dev-python/pyinotify[${PYTHON_USEDEP}]
+ dev-python/send2trash[${PYTHON_USEDEP}]
+ dev-python/PyQt4[${PYTHON_USEDEP}]
+ dev-vcs/git"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ doc? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ python_targets_python2_7? ( dev-python/sphinxtogithub[$(python_gen_usedep 'python2*')] )
+ )
+ test? ( dev-python/nose[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.2.1-disable-live-tests.patch
+)
+
+python_prepare_all() {
+ rm share/git-cola/bin/*askpass* || die
+
+ # remove broken tests
+ rm test/i18n_test.py || die
+
+ # don't install docs into wrong location
+ sed -i -e '/doc/d' setup.py || die
+
+ # fix doc directory reference
+ sed -i \
+ -e "s/'doc', 'git-cola'/'doc', '${PF}'/" \
+ cola/resources.py || die
+
+ # fix ssh-askpass directory reference
+ sed -i -e 's/resources\.share/resources\.prefix/' cola/app.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ cd share/doc/${PN}/ || die
+ if use doc; then
+ emake all
+ else
+ sed \
+ -e '/^install:/s:install-html::g' \
+ -e '/^install:/s:install-man::g' \
+ -i Makefile || die
+ fi
+}
+
+python_test() {
+ PYTHONPATH="${S}:${S}/build/lib:${PYTHONPATH}" LC_ALL="C" \
+ VIRTUALX_COMMAND="nosetests --verbose --with-id --with-doctest \
+ --exclude=sphinxtogithub" \
+ virtualmake
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+python_install_all() {
+ cd share/doc/${PN}/ || die
+ emake \
+ DESTDIR="${D}" \
+ docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ prefix="${EPREFIX}/usr" \
+ install
+
+ python_fix_shebang "${ED}/usr/share/git-cola/bin/git-xbase" "${ED}"/usr/bin/git-cola
+ python_optimize "${ED}/usr/share/git-cola/lib/cola"
+
+ use doc || HTML_DOCS=( "${FILESDIR}"/index.html )
+
+ distutils-r1_python_install_all
+ readme.gentoo_create_doc
+}
diff --git a/dev-vcs/git-cola/metadata.xml b/dev-vcs/git-cola/metadata.xml
new file mode 100644
index 000000000000..a9e87ceda54e
--- /dev/null
+++ b/dev-vcs/git-cola/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev-zero@gentoo.org</email>
+ <name>Tiziano Müller</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">git-cola/git-cola</remote-id>
+ </upstream>
+</pkgmetadata>