From 38423c67c8a23f6a1bc42038193182e2da3116eb Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@redcorelinux.org>
Date: Sat, 25 Apr 2020 11:37:10 +0100
Subject: gentoo resync : 25.04.2020

---
 dev-vcs/Manifest.gz                                | Bin 13653 -> 12987 bytes
 dev-vcs/darcs/Manifest                             |   6 +-
 dev-vcs/darcs/darcs-2.12.0.ebuild                  |   2 +-
 dev-vcs/darcs/darcs-2.12.5.ebuild                  |   2 +-
 dev-vcs/darcs/darcs-2.8.4-r6.ebuild                |   2 +-
 dev-vcs/git/Manifest                               |  50 +-
 dev-vcs/git/git-2.23.1-r1.ebuild                   |   2 +-
 dev-vcs/git/git-2.23.2.ebuild                      | 725 ++++++++++++++++++++
 dev-vcs/git/git-2.23.3.ebuild                      | 725 ++++++++++++++++++++
 dev-vcs/git/git-2.24.1.ebuild                      |   2 +-
 dev-vcs/git/git-2.24.2.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-2.24.3.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-2.25.1.ebuild                      |   2 +-
 dev-vcs/git/git-2.25.2.ebuild                      |   2 +-
 dev-vcs/git/git-2.25.3.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-2.25.4.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-2.26.0.ebuild                      |   2 +-
 dev-vcs/git/git-2.26.1.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-2.26.2.ebuild                      | 728 +++++++++++++++++++++
 dev-vcs/git/git-9999-r1.ebuild                     |   2 +-
 dev-vcs/git/git-9999-r2.ebuild                     |   2 +-
 dev-vcs/git/git-9999-r3.ebuild                     |   2 +-
 dev-vcs/git/git-9999.ebuild                        |   2 +-
 dev-vcs/hg-evolve/Manifest                         |   4 +-
 dev-vcs/hg-evolve/hg-evolve-9.3.0.ebuild           |  39 --
 dev-vcs/hg-evolve/hg-evolve-9.3.1.ebuild           |  39 ++
 dev-vcs/hgsubversion/Manifest                      |   3 -
 dev-vcs/hgsubversion/hgsubversion-1.9.2.ebuild     |  33 -
 dev-vcs/hgsubversion/metadata.xml                  |   9 -
 dev-vcs/hgsvn/Manifest                             |   3 -
 dev-vcs/hgsvn/hgsvn-0.2.3-r2.ebuild                |  43 --
 dev-vcs/hgsvn/metadata.xml                         |   9 -
 dev-vcs/hgview/Manifest                            |   3 -
 dev-vcs/hgview/hgview-1.9.0-r1.ebuild              |  52 --
 dev-vcs/hgview/metadata.xml                        |   8 -
 dev-vcs/mercurial-server/Manifest                  |   4 -
 .../mercurial-server-1.2-r1.ebuild                 |  82 ---
 .../mercurial-server/mercurial-server-9999.ebuild  |  82 ---
 dev-vcs/mercurial-server/metadata.xml              |  10 -
 dev-vcs/mercurial/Manifest                         |  16 +-
 dev-vcs/mercurial/mercurial-4.9-r2.ebuild          | 158 -----
 dev-vcs/mercurial/mercurial-4.9.1.ebuild           | 158 -----
 dev-vcs/mercurial/mercurial-5.0.2.ebuild           | 158 -----
 dev-vcs/mercurial/mercurial-5.1.2.ebuild           | 161 -----
 dev-vcs/mercurial/mercurial-5.2.2-r1.ebuild        |   2 +-
 dev-vcs/mercurial/mercurial-5.3.1.ebuild           | 171 -----
 dev-vcs/mercurial/mercurial-5.3.2.ebuild           | 171 +++++
 dev-vcs/mercurial/metadata.xml                     |   1 -
 dev-vcs/subversion/Manifest                        |   2 +-
 dev-vcs/subversion/subversion-1.13.0-r1.ebuild     | 532 +++++++++++++++
 dev-vcs/subversion/subversion-1.13.0.ebuild        | 532 ---------------
 dev-vcs/svn2git/Manifest                           |   2 +
 dev-vcs/svn2git/svn2git-1.0.18.ebuild              |  47 ++
 dev-vcs/tortoisehg/Manifest                        |  12 +-
 dev-vcs/tortoisehg/metadata.xml                    |  17 +-
 dev-vcs/tortoisehg/tortoisehg-4.9.1.ebuild         |  80 ---
 dev-vcs/tortoisehg/tortoisehg-4.9.ebuild           |  80 ---
 dev-vcs/tortoisehg/tortoisehg-5.0.2.ebuild         |  80 ---
 dev-vcs/tortoisehg/tortoisehg-5.3.2.ebuild         |  54 ++
 dev-vcs/tortoisehg/tortoisehg-9999.ebuild          |  50 +-
 60 files changed, 6758 insertions(+), 2047 deletions(-)
 create mode 100644 dev-vcs/git/git-2.23.2.ebuild
 create mode 100644 dev-vcs/git/git-2.23.3.ebuild
 create mode 100644 dev-vcs/git/git-2.24.2.ebuild
 create mode 100644 dev-vcs/git/git-2.24.3.ebuild
 create mode 100644 dev-vcs/git/git-2.25.3.ebuild
 create mode 100644 dev-vcs/git/git-2.25.4.ebuild
 create mode 100644 dev-vcs/git/git-2.26.1.ebuild
 create mode 100644 dev-vcs/git/git-2.26.2.ebuild
 delete mode 100644 dev-vcs/hg-evolve/hg-evolve-9.3.0.ebuild
 create mode 100644 dev-vcs/hg-evolve/hg-evolve-9.3.1.ebuild
 delete mode 100644 dev-vcs/hgsubversion/Manifest
 delete mode 100644 dev-vcs/hgsubversion/hgsubversion-1.9.2.ebuild
 delete mode 100644 dev-vcs/hgsubversion/metadata.xml
 delete mode 100644 dev-vcs/hgsvn/Manifest
 delete mode 100644 dev-vcs/hgsvn/hgsvn-0.2.3-r2.ebuild
 delete mode 100644 dev-vcs/hgsvn/metadata.xml
 delete mode 100644 dev-vcs/hgview/Manifest
 delete mode 100644 dev-vcs/hgview/hgview-1.9.0-r1.ebuild
 delete mode 100644 dev-vcs/hgview/metadata.xml
 delete mode 100644 dev-vcs/mercurial-server/Manifest
 delete mode 100644 dev-vcs/mercurial-server/mercurial-server-1.2-r1.ebuild
 delete mode 100644 dev-vcs/mercurial-server/mercurial-server-9999.ebuild
 delete mode 100644 dev-vcs/mercurial-server/metadata.xml
 delete mode 100644 dev-vcs/mercurial/mercurial-4.9-r2.ebuild
 delete mode 100644 dev-vcs/mercurial/mercurial-4.9.1.ebuild
 delete mode 100644 dev-vcs/mercurial/mercurial-5.0.2.ebuild
 delete mode 100644 dev-vcs/mercurial/mercurial-5.1.2.ebuild
 delete mode 100644 dev-vcs/mercurial/mercurial-5.3.1.ebuild
 create mode 100644 dev-vcs/mercurial/mercurial-5.3.2.ebuild
 create mode 100644 dev-vcs/subversion/subversion-1.13.0-r1.ebuild
 delete mode 100644 dev-vcs/subversion/subversion-1.13.0.ebuild
 create mode 100644 dev-vcs/svn2git/svn2git-1.0.18.ebuild
 delete mode 100644 dev-vcs/tortoisehg/tortoisehg-4.9.1.ebuild
 delete mode 100644 dev-vcs/tortoisehg/tortoisehg-4.9.ebuild
 delete mode 100644 dev-vcs/tortoisehg/tortoisehg-5.0.2.ebuild
 create mode 100644 dev-vcs/tortoisehg/tortoisehg-5.3.2.ebuild

(limited to 'dev-vcs')

diff --git a/dev-vcs/Manifest.gz b/dev-vcs/Manifest.gz
index 3757de0c9ea1..af86cea37ee3 100644
Binary files a/dev-vcs/Manifest.gz and b/dev-vcs/Manifest.gz differ
diff --git a/dev-vcs/darcs/Manifest b/dev-vcs/darcs/Manifest
index 58ff45321b22..68af2979ea1a 100644
--- a/dev-vcs/darcs/Manifest
+++ b/dev-vcs/darcs/Manifest
@@ -12,8 +12,8 @@ DIST darcs-2.12.5.tar.gz 1460698 BLAKE2B 9050b5863221d2c82e93d689b733b34a0b63fd0
 DIST darcs-2.8.4.tar.gz 1301464 BLAKE2B 748494ae1c34318c14e128a4d08667b839644dbcf2b2d8bbcc86263ee5332f859f91bc2a56f3c6ccf6a465f45a90d97d304c9c15ebdd3cdd709c251c61c15a6c SHA512 c60531bacea43bdd5a18ae461dd390fe64682cac56fa4e6b5153a5da3c003b59d8fb24827bd42b4b30f0d2c61877d36b58eb98317644f9f8a200ab7c5961c48e
 EBUILD darcs-2.10.1.ebuild 4661 BLAKE2B 6baeaff0f00e514365f325bb67d264c1eb2a793a324aa867a11bd3713a952f2e4cca38ee872ba4a588e5babe6b4f92b199fefd3fb8eda70b572f9009b48c3a20 SHA512 947f58a975cfada502261baf79ff494dc096ecc2a835ee987778216221ce690c1a0fb10f1f67aa902e47b18fe7476988a0e623348f2756e55eb468d31db93328
 EBUILD darcs-2.10.3-r1.ebuild 4751 BLAKE2B a5e2fad1a29d43c82f7e3f6f38630c3201ca374ff38436005a4c1d6338a7b05aa275f365d8acd3b77608802542fb7e2c0797f3f692e949e3995f3694c31f580e SHA512 b8ec1cba9be4ce72c654d874358d6373530e1cd4cbdab69af8c16e1f552c6d749d59fce393fc736afe11c4480a11d6ae04c439aea8bd513575ada01d1515698d
-EBUILD darcs-2.12.0.ebuild 4791 BLAKE2B b9e6085aacdfe01ad75de297bc07d92eaa44020582c32ab0205e6e611c3cc397e3d44ae54971be00f0912d704df6937e419205f75256724927a1925e679faaf6 SHA512 7acd3d2ec037f65df5b7e5b9e466c7c181c411b461ad9cef45ce1a32e9f8174420a7d42ac356a305e554b3ad6cef54a1a7f694349ca09c88e9e0649f5073b3d2
+EBUILD darcs-2.12.0.ebuild 4793 BLAKE2B 558f2d89ff6ed54f16ff484468d4ef22b1795af9fda247ba6dd541b07b485fa79aa15fae59b3596a6dc1942c58fc7426217ad497ed79d57b5688ddd99414b023 SHA512 e96ba3b3038d115244731196882984cf37775dfd4ccc89470f315b075a5dfae6627dde57c499cc23cb52650cf671d0fa5f50c8f8033a5c85819a59ffdfb90311
 EBUILD darcs-2.12.4.ebuild 4477 BLAKE2B b803195ef7164c026944e943954ed3fc2f712c98a49f2aad9d01dcc4a7a2a6151d03c41b5bd1771f8017dda7b3c753a4db85450de97b6be3a5de0608045a3014 SHA512 173e6683a317a5a79f0f20f656bc7eb9be0a870871e8d6979a2db2687ad7eff35b0bcd1eff4e74d7eb55c31f2924887ffe6a6e6460f0aa24ce66fb0e427298ad
-EBUILD darcs-2.12.5.ebuild 4555 BLAKE2B aa01eda188a3e57a9dfff277d74549531ef0f98f970df24da3af24c4f6ab44c5939eedea7bbc54412ed685904c60d43f7784d2a792a0a523060cba5bef37cf1a SHA512 16e7e10dd0e3806b2dafa09791822f31fe6e34e2aacfd57c9854a8a2ec2797e226c01e4cfea4cb720c19ac83336ccea970823c58716a0469637af156b012f87f
-EBUILD darcs-2.8.4-r6.ebuild 4676 BLAKE2B f41de936160402e96cf39e3c5d9ec8f4cad0e659c97ab46809b16b1ce8a89693a065bb27e5fc3a869f3cfe66994d413b3da99416c847ba0d5480c10e2ff5a569 SHA512 dee9a9c509696aa771c725a6cad7ddfc282066754edf584acc85da4d9aef12faafd60d6ac4ac5e92a71c24b52ac246871a9752a3b64b4dcbf16a00ace858b6eb
+EBUILD darcs-2.12.5.ebuild 4557 BLAKE2B 79069ed807976f10766d6b1c7856eea63bc3ce04f0f24fc1192ff80a208fdeb92f71b01867c90620c7f7e8fefb6d41a98fa2183c2aa5d65b876bca9fbf09df00 SHA512 2dc134298a44a05d71b1932c49b09dbb2ba28955174d3fdcf857427c80013560e504f1e83cb9ad46870567f132252f6a8c55d2b97f61c9f12efd47f46a35186e
+EBUILD darcs-2.8.4-r6.ebuild 4674 BLAKE2B e5289660b80bf55eee4604e87deedf31978bd205ae46b0f8c161d4ed1cfd6f5cac3df60c0030b7fdd68c9e5b4783dd557c766612d171e7d70aaec2109a11c9e6 SHA512 3e31ed5a97205cfbc9001785c36402225ba3a3700f2f3add0da6e94951a2fef9452ad41baa40f74bc06d1813b9c01c5c9bc98b623101dd9e3763aef30857d39a
 MISC metadata.xml 593 BLAKE2B c4ab655306f001cc3fe3007152e25d32d97fd3a87db76051c6c75b1d53c2c6ebd2105b2674bea5872e678b577c3cca737a3bbf6fe89923bc4f780ea2dc8642fc SHA512 cab7d36edce3f7da1742ebf086f69468f2745cb58fae83e74fa3e6016f4a7285aaa57100fed17df47940a51029ea78892147b7fe86ef2e456b7e34cc34a421bd
diff --git a/dev-vcs/darcs/darcs-2.12.0.ebuild b/dev-vcs/darcs/darcs-2.12.0.ebuild
index 160bcf620c14..bb4e04774663 100644
--- a/dev-vcs/darcs/darcs-2.12.0.ebuild
+++ b/dev-vcs/darcs/darcs-2.12.0.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
 
 LICENSE="GPL-2"
 SLOT="0/${PV}"
-KEYWORDS="amd64 x86"
+KEYWORDS="~amd64 ~x86"
 IUSE="+curl +network-uri +terminfo +threaded"
 
 RESTRICT=test # occasionally hangs on directory creation race conditions
diff --git a/dev-vcs/darcs/darcs-2.12.5.ebuild b/dev-vcs/darcs/darcs-2.12.5.ebuild
index a524fcf1fea2..c1bf7f7d2b6b 100644
--- a/dev-vcs/darcs/darcs-2.12.5.ebuild
+++ b/dev-vcs/darcs/darcs-2.12.5.ebuild
@@ -15,7 +15,7 @@ SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
 
 LICENSE="GPL-2"
 SLOT="0/${PV}"
-KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
 IUSE="+curl +network-uri +terminfo +threaded"
 
 RDEPEND=">=dev-haskell/async-2.0.1.4:=[profile?] <dev-haskell/async-2.2:=[profile?]
diff --git a/dev-vcs/darcs/darcs-2.8.4-r6.ebuild b/dev-vcs/darcs/darcs-2.8.4-r6.ebuild
index b77a3146c093..5f688a52aac3 100644
--- a/dev-vcs/darcs/darcs-2.8.4-r6.ebuild
+++ b/dev-vcs/darcs/darcs-2.8.4-r6.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
 
 LICENSE="GPL-2"
 SLOT="0/${PV}"
-KEYWORDS="amd64 ~ia64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
 IUSE="doc test"
 RESTRICT="!test? ( test )"
 
diff --git a/dev-vcs/git/Manifest b/dev-vcs/git/Manifest
index 60ef9413eaa4..a220bab54627 100644
--- a/dev-vcs/git/Manifest
+++ b/dev-vcs/git/Manifest
@@ -12,27 +12,59 @@ AUX git-daemon.socket 116 BLAKE2B 0fbf31de87810ac737adfab21acf87b0d95f62df5208fe
 AUX git-daemon.xinetd 260 BLAKE2B 594a046b5b2b580b7cfed1b620e014160965046c5e5a42359b6134af0a4c03a30a9464db5e19c6027645d9084550743e397af2d6566b7543a2b509e025aeb1e1 SHA512 5e0c85004e7e2b89fd191350022b9970a6ca03129b4c913e159570b99b5797ab924f667cd3dc5693a9d4916b7b5cf36814eda015dbdf46a1354eb50d1c081f9c
 AUX git-daemon_at-r1.service 340 BLAKE2B 879db8b274d8e1d2995a2ea1e4b1d66cac3d6979006fc24721db8b389395ac98a98444f032eaf7c66d6c02ab394a764e16a9cd3b5446b6be9061b9bdd89cf964 SHA512 073d8752dc224ff1130a5290e0f965a04b19f2a8dbd5d50172101099386ad3af0fd5e1abf57030960b750a2adf36a7ae69d18ddc990bab4e694486e65424cfa9
 DIST git-2.23.1.tar.xz 5713672 BLAKE2B 50db7bafbadcefbc5a56db478ea0464d289c45190a0454e0b8f3d99d48e6251071482df0240ee1ee8a1f733c91e9e46d34794bca8ca70d3c4ecc3b5da6d5d529 SHA512 708f8b9a7c65c1c9d3117b1b7ee9383044b66fe8a5c168a52ba561985670f659d514aa34988ea8ba85c127da6a23c39c511919a6d661bffc9cf782e30fd62373
+DIST git-2.23.2.tar.xz 5714372 BLAKE2B 591f3a46720c249a7325b3a39cd5fe788c47c977fb8f052092b5db18b75fc81d6a9c44923368f881ae02573e172ed8be74f0c10c0f7f205acc011ab602930f3f SHA512 5e0e78ba06ffae8b11fe730a3666a43813b65b9c7e188b4795b1fc6db701993bf39efd392b0ee8bc10b97873bb015cc21635e23d979b5a9d903c119516b01489
+DIST git-2.23.3.tar.xz 5716108 BLAKE2B 9d0e63e075d8e64bf2772bdd3e49e9907ae093bcfe6a73a003c3bb8a61f557cce154ef8011aa7d068eaca49f8f14c027d935d7ef2fcbc21eb511f803dfbf4a00 SHA512 29b1344fed72c588e9a04d3fb493f2f91490f61853d48644a2d36c23c3251cf1fd549c256def25865e9f33b50135cdfa5108814105d9fcf360d6d1938487d2bf
 DIST git-2.24.1.tar.xz 5772304 BLAKE2B 45e49325221cd0407968b4e2ff7bcab7ea021863119ae29fec5c7a9ff10461b5af0ea05f587647c7d4965c38e25f1140f194be72ff5f1bea8851c0485effbfa2 SHA512 010c13d4023c142876d0e075a394b74bef422944d8ca602325d0b2b47bf28b1d534283c7f295751113c83fdfcc0c91f97090e8f906560d44b04a94607fd8fcf7
+DIST git-2.24.2.tar.xz 5772460 BLAKE2B 626ca95a675f4f1ae7ad49c7054ad85e0b14fde9230c4e9fc0408a028ea7c4b34243e73bb3364fd5ae4d25a3565ea54a090220e4ed3fe7fd05ea772ff09be6f3 SHA512 2860f9b09ccc1f17398fd5a122d37e3c9fc22a7921ff82f30c28fa58bc609e63f84bbb0a28849ad96680652911fbb1971bcd321b7fc9ff13a96bb27b23f726cc
+DIST git-2.24.3.tar.xz 5774192 BLAKE2B a8bea56f85a12863565325984a303ac2d964e0371de5252252a736a376a22cc1695da15b46d35bdec8a36c2ebd7ba7040727265acee37892350aad08209ed15f SHA512 b2fbafd0faa06a304e960f78696f5c033eb5330b18af28c0d169af86aa836dada0c3cf349993b1c9a6129d0c42788167a393f9db9be981610318dca5743b2c87
 DIST git-2.25.1.tar.xz 5875548 BLAKE2B 582da3d4ac996d7b9ce6cf505661496ab1a2cd061f058745350498121956b33d79739b567fb5fea0b4e298303261256034aa0b8da0b842feab04ae67a7d5b142 SHA512 15241143acfd8542d85d2709ac3c80dbd6e8d5234438f70c4f33cc71a2bdec3e32938df7f6351e2746d570b021d3bd0b70474ea4beec0c51d1fc45f9c287b344
 DIST git-2.25.2.tar.xz 5877576 BLAKE2B c07bb888eb05a9f3cc91f207bc5151fd7eeb8137e151353dada0637bc879da5a594097649c9a49ecfe173a550d19ecba5eba47638e2f1a7f07467818a763c82e SHA512 5f24bb060165a7397286588cfa32a3e77a98059058363699f7873a2efbb77419dc8985a9b8ae05166035e24db586c379b55c7049a5b6a436c554a7f621a51a23
+DIST git-2.25.3.tar.xz 5878708 BLAKE2B b9e9ed205856a2d5cca57a539ab420e597e8de46624f1411f725c914cfd9f23c7129502b8511acef7eda0f2cd2322928843e54416df8b6f5a45a7b71a8a52a5a SHA512 1ea2f0727baa29200f33469463c3b6db04a2e228e83ff552faa47fefe31063d92966d7502b2f13546c36cfc2756d42d71a26e41141c0fb972af9d6760f3aa471
+DIST git-2.25.4.tar.xz 5880976 BLAKE2B a3ac79918ba174a93844d9518a2f1c6970abe2cd31acea260742d3c03a31a03131f53603a3bd3e525a60f8ebcfbbaa3b92228e2486717ca2d389a978e39bd5ec SHA512 ca2ecc561d06dbb393fe47d445f0d69423d114766d9bcc125ef1d6d37e350ad903c456540cea420c1a51635b750cde3901e4196f29ce95b315fda11270173450
 DIST git-2.26.0.tar.xz 6005104 BLAKE2B c112e51c32f36860e61e81fd3b540cf4eb3d126d28dd533472d6cafdb55f813df48df31ad06a3317224ea2b2b3a9ac3e02ca37d2364167878c7e2fc5fcc2e45e SHA512 bf8a832211782a9446d041a54da254f2586b894375191fb1a6dc7a6594856ca43230fa1ea804b54daceb68caa8d20c02bdbdbf7b2fa1761ce05a11a26b122a9b
+DIST git-2.26.1.tar.xz 6006104 BLAKE2B a94075d995a6fe1682dd20a09c5deefbdf4859a809734d59da83df5e7d0d6e9a287313fd579c289e9e13208c74c9cf68919804dea037bdabed92087d17e5e7ee SHA512 1defa0d94e26e474abd47ec8a0c43c05152e10a5aca5f1aee7480ef0db9f5abd03275fefb7c4e0ee816199c87c0b2a13c164c5f7aa5ff36cafdacf27b3573785
+DIST git-2.26.2.tar.xz 6007864 BLAKE2B efce003a95e24dbb6e14feebd35874c9ed1a5c06d7f0722d4dfefae830613b64b81faa41d5952400fa382b385d15d48829f8ee3b4d065e134bd38fa0e10bf570 SHA512 5d92d07b171c5cd6e89a29c1211c73c1c900cd51c74d690aebfb4a3d0e93b541b09b42b6d6a1a82f5c3d953096771f9a8605c63be139f559f58698c1a0eabcfc
 DIST git-htmldocs-2.23.1.tar.xz 1296144 BLAKE2B 5be4a8afdd79234d220c119b8a4239e640486dc52236d980d08e6b3cad1be61b683c0e3dff6bdd67035a1e23f1d07858d3344f9f2ae90b44188395f34c22fea4 SHA512 c005be3baf129c9320893270d1d3b69e01546a29d482d29e5bc7baefbaab33e45d877c5c09e47312bbdb8b3dfcff27735c2427dcae9eb21fd3500ec30e214ae1
+DIST git-htmldocs-2.23.2.tar.xz 1295232 BLAKE2B 220a5b19cf6e7e1eddf18059262a72fdb5050eb6314ffcd45f925fe6fa9d1e1ecb14e2f8bfe77293a85813303a2cd04ad51dd70783e1a2ef83154d802ad3fc83 SHA512 6069c667666a1bbc706b6e1de2c0d9a46270423fe17ab25a3ae7b6821e0e4a78c16e394b6d486d76aaf100fbe637e03c05bb86b483be9a3f9b6ca3b8f553eb05
+DIST git-htmldocs-2.23.3.tar.xz 1295344 BLAKE2B 7a6d8198cf8285717f11731ea907ea06786c486701a729d071deedc5437a595dab355ae2d0ac2814b10503ab4161e76a1245663a9ce35ce48d03be9905315db3 SHA512 2c86c03f29f1a4fc2acb17a17a9e1a3df2ec95138895f5c8e776859772ebc7b95c24af0e328508ccf1ea85b7adaa86a9aedc4d0c353ffc91ad5810ecc9a48059
 DIST git-htmldocs-2.24.1.tar.xz 1307992 BLAKE2B 80b39d2fcf47d20a584109572414ff8d275245afb80c3946e2fa62346fdaee3b1c873a0dccfb44af52290756d26d5e53021a1bf1ace7ada34e50e03244f05e92 SHA512 4da610ba1ee307e4f53414e324ef63ab25cf3945a74bf813aeacd4cf714710eab31776c2402c9567f1a3805e3d8576a158c78a72722c0178fb7c2dec2dcebf5a
+DIST git-htmldocs-2.24.2.tar.xz 1307584 BLAKE2B 06080a6135bca6e0670f57d8a4aedfd488b8b36347c232653aa8f601703436683b7ea3db19822f35647cea6530d90c03b60a96e5070482e4ecf138807711fe2e SHA512 48e01d712e81eab7b7bcaf0f2aded56b74a84ba3a32502b0af39f4df22b8260c5c233303626d3bbff55955a90da800716aa5c7fb5e69b7ce28d3e0f2e9def7c7
+DIST git-htmldocs-2.24.3.tar.xz 1307828 BLAKE2B 5d6dda03e2c51346326a1258a14a0ee16fab7fe83c80b4a1a0b307a6343db851d89b96afcf616e10ad5831352a90332ac602e5713444855327e11be8992a5274 SHA512 14289fb46cff48bece0cdafea9ef201facdb58eafce4b735ce50489356deb993c481ac1b6e96a2f98cfe30434280997c47f2cca0bdb2b6e85c31cb7cf17cc257
 DIST git-htmldocs-2.25.1.tar.xz 1295708 BLAKE2B 18a274e5eb48030f50c0f38cbcc81b0e65c55ea6b702a9cc4f231c274faf0247c4fdaccde2d348717826d1bd914fe62b387946ae63aba64ba032c43898529f7a SHA512 f261cf72a7b59277666c543d2b40cc9e37ae6d4925616dcb448325e69c59efdee9db151a0d509545d5b366d82fe1196ece289197c02c65ae5f8c91526d49b0fb
 DIST git-htmldocs-2.25.2.tar.xz 1296488 BLAKE2B 274c425ba1f52e26c36b5276b7796c465cd5bbf6d2fa73e7f821e0fb727902ce088ea6b7e37cac6c1cace9e7a4f41f3bebe2227aee313a17e2aac6dbf8729a7d SHA512 abe131ef4761e4f112da171baf6d9be6b745f5d06b9e90731052ef13bdc9f71557e53cd93a3e8ea5c33706b7f08cda8aa0e3e760409abda1b9582625ec513ca5
+DIST git-htmldocs-2.25.3.tar.xz 1296852 BLAKE2B aa54f8bcdd48f3d53749f8391340616feb965d466c4d7bb81050f2a17050335ca44984f56d0cbc1b6787b4aa6cf8b1ff521cafacae43f8e4e2401ba1a1d8e4a4 SHA512 df4bb00c20b5adba1d80e9afb75a9f4d63bad4ca46b317aa94949621979260f991d6efea473141760ec2e849ba90d87fbd9a8fbca73cf0e0a35462ad6621860e
+DIST git-htmldocs-2.25.4.tar.xz 1296896 BLAKE2B 4f6469acdcd699698bd1f19bd0d911fd522c1890115f25c087a7870b855eb9354340fe17e9e6aaec7fb27cd951fe28cadbf26e1aeadc76f3c3a1cde4d23e42cd SHA512 e10c6fa52e213a2b18290fed375f6e176eef17b0a19f6906f09d6228d18bece88ff0ec97d871db0ba29fc0fbff73740312ab01eab809bd6a9a41c8b295cf8d67
 DIST git-htmldocs-2.26.0.tar.xz 1303968 BLAKE2B 7a0a7972e58d0be5beb8c4b507f5f7a868cd467f8a87c2bef61a2520876ca0c60353431fa689985dd623c2b54ce79dc89eaf46b99a559cf3d05cbf1fa7756544 SHA512 1fa037b21034121f161416a50f4913cd998a22226f796684b50e49f80a5e2cd7495dc7b4f16b608e556fda8acd2d66145669909fa4c1a4c4d3ba8096f2a0558e
+DIST git-htmldocs-2.26.1.tar.xz 1304500 BLAKE2B b11e39075a206bfbe1c2244c40a24f0bd08424f1afba61f968433573eff7dbf949f78bf078467b13609d4cc8c22f714fc1d7b3f3369e588601982bc07b2d5cbf SHA512 b23163fe36f95d34a8f3bb5d89bf5b6c6d61441807a0d6b9bfa79fcb1bc08e74c4bfc03105984329349059ff8ac6c5aad2ae54f638cc49ef81b57cf00143be13
+DIST git-htmldocs-2.26.2.tar.xz 1304788 BLAKE2B e0de88c5c41646d5fb9b54e2ee873c7904e1b85c67f971499f0227eb2dd59cabd4ffc58c468cf8a7a7466920af972dbc7f95d78003e487edac9a15a9c49b80a2 SHA512 b577693180b4fc035af211e3b83e98ad5e1bfbb98706924858df6558383b82ca05f870bdae90f8a14c8bf664f091ee928af52dcdebdfb98dc7387fdfe2e3a396
 DIST git-manpages-2.23.1.tar.xz 448432 BLAKE2B 0de4b2c0dcc3a70188a66d8aa6e16aeaad84a9f16b764934b06f61773db2d5141cc0b1091780d126f29a1f50c767a54fbb7d01a36f86d387d8ccb4060f48156e SHA512 16145c0c2215ce6a3aa9045f35f670258f6823a765ed2feec680ed980420d1bb008fc39d8f379c81cd0b259fc582d15e42395d4f954171b20bcf214ab25e41d7
+DIST git-manpages-2.23.2.tar.xz 449184 BLAKE2B 348e6a90c87cc7c872727a426920fa3b66b1bf92c24562241cee67609b5ed11e78170fa7ed5f80e6f704ae12ba166af1b2c68704917beb2c06b85e05fd6744c6 SHA512 37bb03852f2cb0c4e3d6cd68e1b707feab5ac54442bf48b9e179074438f7e595ad7304d61c6b7344352298a6c0584f6de11a71e82066fcd3bf892424b7d783d6
+DIST git-manpages-2.23.3.tar.xz 449464 BLAKE2B bfc0153e43724df7210110e836d47f17258e45a876aa9bf4604c3f38e690e0e5379d4394df96c3dd84ea4d7371b7843729e6fb5d4b43fd7d4a9b4c3f4062a922 SHA512 a7b5fc48a5b840eb9b668b441ad3c30f65adc73c22cda461ffaca1cfddf154bf1974cab6c372b4534fd45a43a2e2ab96513364845a7db4285b88e31bf7619f8e
 DIST git-manpages-2.24.1.tar.xz 453752 BLAKE2B 51a549099205341bfec5a7998e5f66e9fc78ffd05fd04e745401a8bcc5bffcb64f26a64c7e24c9822bc2d62d000ea2b13779ffe19f065124a8e42b306fb5a2d3 SHA512 ee1e70fdbfc6eae97dc3b3180fa119b0d1189db7cae3e45b8baa9311d0c1162a5b46824a785e91288522a9fd00b8e4ff07590f4e4722a08955d6a9d048cc3a90
+DIST git-manpages-2.24.2.tar.xz 454672 BLAKE2B e48a0fb43537c354c98c5a34d8b133cc7c13349d57e83edacc6623e9410137652813069020142619d9ad2a56d082cd79272afb5cd4ff8c22bb37b821465e94ce SHA512 1a39797fbc1eff216c7416df4fa372c60a8406ff8406e3d332c371ead26286fb3976b35702286af12064712e7ded565538729824a02ac714518f01b725d8688b
+DIST git-manpages-2.24.3.tar.xz 454796 BLAKE2B b340b33593e596a7a87385110fea53a96b68f0b0c5c02e046a1aff5ff7c7a6bf3d7a55c4d33796db8e84824df72451ad51db9fc44df4840ecd0183c0ef49eba0 SHA512 22709e159196da27befc26eef3ab40dab9700c95abf6892860a81c8e5df7d85ad423c877e6c88949cfc611c4dfebd956f02a78f0340c1cd4d58c48f80e3e1cce
 DIST git-manpages-2.25.1.tar.xz 457408 BLAKE2B 6b9d7074bc690156e7d4a14b04d8e82c9441c8b9330bdf40de215fc48ee7bbfaf410b57bbf48bd6127a60f0d6daa0adf7194fc8eb43b3d8e2a9b5d054cb7d5ea SHA512 c36afa05f641c6e1d909cbe0e3292a10f35c0a05867e2782e6770857714b152de839f1e9b2c2ff2efea0b50b19cfdf3022d8617a299f4aa3940533eb891fa6ba
 DIST git-manpages-2.25.2.tar.xz 459208 BLAKE2B b78fdade0d99035969d16f726422e63f6c98c0cfbdcbeb272a07619f5efbece88eddf008884ec3c10ab05d8558fb975f6f89604757a424adae922ea3a8ad5a24 SHA512 61bc0090fa36f537a193c8007f82f4ac005f6afa86621d6273f131230381a1f17712d95b3a47c27bbd9eea351fd49d4f1c16fabe7f81b40a6aa1308e8afc5371
+DIST git-manpages-2.25.3.tar.xz 459192 BLAKE2B 17bb4c6ab68b85efaca2e99469f601df029677e7b09e379e8b4bff23b54bf4cc3aedc5c16e0769d2bafef79ea2428db582accb1df78795d1d4c365dcee68daba SHA512 a6ae01129281e85fba8da1fd8cbe9bb2c33cce3075163af328aedb4ab721b9816b364cc18d87ae675b88af2baa5777acb0f874a6a172bdef3429d25d89f8f271
+DIST git-manpages-2.25.4.tar.xz 459344 BLAKE2B b0ac88f691984f39f6cfbf41d2d61ab443573974277536641daddf0e9b7755ea9cb6bc96ecf3c14479809036171e461eff72cb498c63a56eea041341b8a65af5 SHA512 a67b881f289d5b3e2187ad55c5176258c30108c73fc7c18d50c1a6b42b241ce46dba28acf2f7bfc994b044444a6678096a35ad60936ea6cba07b52ddf647da17
 DIST git-manpages-2.26.0.tar.xz 462092 BLAKE2B 1ad35195b41b399f9f7eb4c981947c0ef4430e669c456b1b3cad0073d2f680315dc11a6e434b1e17601502a16b10187f0ef5587b81a5c6e4bfe04ba8a3cdf976 SHA512 828bebfa5a2cf4558ca6bdd276cc251c6212ceba702418246f05b9f2d41d1c89908b7cd2f81179a1a2b0aca2dbf07ccba9903edd9dae3b5ad9ef6e80b9f50aeb
-EBUILD git-2.23.1-r1.ebuild 19572 BLAKE2B 8cbbfa368e95d8155b4a3eef6fa80f4e6bdec3012a5183ecede843c0b2aceef5f87025bc59dde82fed210658473edf9333ace111d3e76ba861567426714f2ba2 SHA512 f5db037f73d2fe87db65775f69ff47c2584caa343148bb9e3ecfc5430bb69890eb2bd8574fb4a2f67dca79bc83c6fddc4aa987ce6a05fd4348a351edbdf20694
-EBUILD git-2.24.1.ebuild 19520 BLAKE2B 8a9580af1c964060e10f52cfdbd303e5586bb35ae527544f3377f467642cc3579facf257ac414cf0f7fca20b909e0f2867c67239debb561b5098ba96f2d80757 SHA512 b2bd6a5800a8144ec16ba0b237abc0e9175facf352eb78c1380768f83f029332a8f7474e6f77ea5207e0d9299871ce1296ba8ffe4ddf3a45ea2e3d005dd8b9ea
-EBUILD git-2.25.1.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-2.25.2.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-2.26.0.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-9999-r1.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-9999-r2.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-9999-r3.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
-EBUILD git-9999.ebuild 19529 BLAKE2B 424ae3168c7a9727984ea59bf25ee82099b355596c00c646d873f5d19c3f3879563bd2a96c3c98d18a70f2156ca73ecd067c2c40ae20e8d24714e4f131c73252 SHA512 30ec5ae8194fde7fb24798bd6d72618895b6c6d9e42ab185c32ecf39e1a84c69c4efcce7a99d27416310413dbfad9d93f654f356f1eeaf51a5f7ceeaeae82a3d
+DIST git-manpages-2.26.1.tar.xz 462068 BLAKE2B 9dcacafb43cc2bdbb6e321addcdbe365a5d1051b374baf27324573a16b359a1294683079edd86b5a9fd82886a58c362bcb0a11f7fbb64e3f6ed4340d05b56413 SHA512 6a52e709b7a3382e45620be1d3517ef23dae6c3f4e68cdfe4f4580a36e591a5c43075d3b869b5dee1bb3253fc9334c0270548f2edc9fb75262169222fa653454
+DIST git-manpages-2.26.2.tar.xz 462052 BLAKE2B 27fc44360c9f890e9f7754e8423f5596548f076f5fec5dfc6c752e8b3caa5f64ba182c1566b67878b19fbb115297e08def1bf9d2711c7334cbb8e1b20fc039a1 SHA512 9591e94683a6b49d8b9f2afddc826576023fdfa6de6db4af3a28a2af00b175d5be710d86a31d0f1b8320cc38b6f27698e17fb3e8c1f2b0c5ced37296ef1109b6
+EBUILD git-2.23.1-r1.ebuild 19573 BLAKE2B 35983794691d8fe7502b222096e9d1e01c95f8c89fec2a1e49202eb2ed60088b11c73a2256d1f19daca3183150f36eee2283cfdba50a986d50cb5077da433b76 SHA512 4c1b537e780c7dc6dd4fad76bca845fc0f5a28fc56fdcb93f45bcde384a31a930067d25cf89138704c35eec3f27256e20c4c4f6e57aa775b04a1c32022be907d
+EBUILD git-2.23.2.ebuild 19573 BLAKE2B 35983794691d8fe7502b222096e9d1e01c95f8c89fec2a1e49202eb2ed60088b11c73a2256d1f19daca3183150f36eee2283cfdba50a986d50cb5077da433b76 SHA512 4c1b537e780c7dc6dd4fad76bca845fc0f5a28fc56fdcb93f45bcde384a31a930067d25cf89138704c35eec3f27256e20c4c4f6e57aa775b04a1c32022be907d
+EBUILD git-2.23.3.ebuild 19574 BLAKE2B e17e407fbbf94061fe39dbeac1fd85edbd809d70cc8ffcc3396732967dede5d4eb9f72c4d7d02dfa5a09e0cc8dbb99617a1e4b6b5b38cbcae2a955e6d434a758 SHA512 7debf6a7cdd9574f978ea4a13e5d5a29a776b6e6b211d677b8b754aa9e0761f6fe67f889191d9049bf1a0090fb52a46ae8462a1303772801e21627bf6f091c92
+EBUILD git-2.24.1.ebuild 19521 BLAKE2B dfb38bb99ae92456ba2cf3f6a7773247e032a08bf37b2d089ce8a774241ce91d7283f89b47473d354503fd4a09e05478694ab2ea6bae08721036d079a30310f1 SHA512 bccf20abcf3aea9916838539b160833966bd435b846da31e63c6c264a0effac97bd7ac3bb198ed8dbd2dd2f1170c560b5ff515d6e3f82286e1a55fddee8a7859
+EBUILD git-2.24.2.ebuild 19521 BLAKE2B dfb38bb99ae92456ba2cf3f6a7773247e032a08bf37b2d089ce8a774241ce91d7283f89b47473d354503fd4a09e05478694ab2ea6bae08721036d079a30310f1 SHA512 bccf20abcf3aea9916838539b160833966bd435b846da31e63c6c264a0effac97bd7ac3bb198ed8dbd2dd2f1170c560b5ff515d6e3f82286e1a55fddee8a7859
+EBUILD git-2.24.3.ebuild 19522 BLAKE2B fad557f77da163b8a4e6b69fc34106c390f932a53883c994e1b9a29ef9fa6015f562dee92a7ba559ac827e2bbfd59887cf4a61b8e3fd706482a89722fe610671 SHA512 92493c65f775265b53ddbf7a9b0141ef27f43dfa2207e5a2a26d927c86266724698f07dcbf312453658b67fd6ea66d5b1f561d98b74fa66ae2f8e3c94d233e4b
+EBUILD git-2.25.1.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-2.25.2.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-2.25.3.ebuild 19521 BLAKE2B dfb38bb99ae92456ba2cf3f6a7773247e032a08bf37b2d089ce8a774241ce91d7283f89b47473d354503fd4a09e05478694ab2ea6bae08721036d079a30310f1 SHA512 bccf20abcf3aea9916838539b160833966bd435b846da31e63c6c264a0effac97bd7ac3bb198ed8dbd2dd2f1170c560b5ff515d6e3f82286e1a55fddee8a7859
+EBUILD git-2.25.4.ebuild 19522 BLAKE2B fad557f77da163b8a4e6b69fc34106c390f932a53883c994e1b9a29ef9fa6015f562dee92a7ba559ac827e2bbfd59887cf4a61b8e3fd706482a89722fe610671 SHA512 92493c65f775265b53ddbf7a9b0141ef27f43dfa2207e5a2a26d927c86266724698f07dcbf312453658b67fd6ea66d5b1f561d98b74fa66ae2f8e3c94d233e4b
+EBUILD git-2.26.0.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-2.26.1.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-2.26.2.ebuild 19522 BLAKE2B fad557f77da163b8a4e6b69fc34106c390f932a53883c994e1b9a29ef9fa6015f562dee92a7ba559ac827e2bbfd59887cf4a61b8e3fd706482a89722fe610671 SHA512 92493c65f775265b53ddbf7a9b0141ef27f43dfa2207e5a2a26d927c86266724698f07dcbf312453658b67fd6ea66d5b1f561d98b74fa66ae2f8e3c94d233e4b
+EBUILD git-9999-r1.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-9999-r2.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-9999-r3.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
+EBUILD git-9999.ebuild 19530 BLAKE2B 18f451213b0c34458af4a8a18579d27337b4a85fd9750192c402f88b31742eda5a89f47718cb93507aacc1a6e2b675074870165a8ba516d1a80d8620011ff671 SHA512 095f841f319ef96d6cc24e070e056f08d3223ee8f39111dbabe096314675b58132d73aacf70e43e3802894290a6afaa070f6ff8643c2735e6c0c8b99498ad259
 MISC metadata.xml 2197 BLAKE2B b48502c8c414bcbceb6a917291e79d8b33c3f5d4c0e3e25e5a8c77720bd96b6bee120b177034c76d5ee00692951e71c721df3b8b8219dea13644e3af318fbd3f SHA512 6b39bc6d79605bd0a5ffe03599e6fad7da4e3cf2a8f0896be4c47b9a12be8eccc97849d022b3863626c2606274b6b718e00ce6646394302cc3f2468863a3d274
diff --git a/dev-vcs/git/git-2.23.1-r1.ebuild b/dev-vcs/git/git-2.23.1-r1.ebuild
index d7bd28749fae..eb01978045fa 100644
--- a/dev-vcs/git/git-2.23.1-r1.ebuild
+++ b/dev-vcs/git/git-2.23.1-r1.ebuild
@@ -173,7 +173,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-2.23.2.ebuild b/dev-vcs/git/git-2.23.2.ebuild
new file mode 100644
index 000000000000..eb01978045fa
--- /dev/null
+++ b/dev-vcs/git/git-2.23.2.ebuild
@@ -0,0 +1,725 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+CDEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${CDEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+DEPEND="${CDEPEND}
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	DEPEND="${DEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+
+	"${FILESDIR}"/git-2.23.0-avoid_empty_remote_line.patch #698384
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		grep -q getdelim "${ROOT%/}"/usr/include/stdio.h && \
+			myopts+=( HAVE_GETDELIM=1 )
+	fi
+
+	has_version '>=app-text/asciidoc-8.0' \
+		&& myopts+=( ASCIIDOC8=YesPlease )
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED%/}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED%/}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED%/}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED%/}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED%/}"/usr/libexec/git-core/git-svn \
+			"${ED%/}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED%/}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED%/}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[ ${rc} -eq 0 ] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.23.3.ebuild b/dev-vcs/git/git-2.23.3.ebuild
new file mode 100644
index 000000000000..a34dbe298d99
--- /dev/null
+++ b/dev-vcs/git/git-2.23.3.ebuild
@@ -0,0 +1,725 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+CDEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${CDEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+DEPEND="${CDEPEND}
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	DEPEND="${DEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+
+	"${FILESDIR}"/git-2.23.0-avoid_empty_remote_line.patch #698384
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		grep -q getdelim "${ROOT%/}"/usr/include/stdio.h && \
+			myopts+=( HAVE_GETDELIM=1 )
+	fi
+
+	has_version '>=app-text/asciidoc-8.0' \
+		&& myopts+=( ASCIIDOC8=YesPlease )
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED%/}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED%/}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED%/}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED%/}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED%/}"/usr/libexec/git-core/git-svn \
+			"${ED%/}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED%/}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED%/}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[ ${rc} -eq 0 ] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.24.1.ebuild b/dev-vcs/git/git-2.24.1.ebuild
index 8c40bec89c81..b14f087bb86b 100644
--- a/dev-vcs/git/git-2.24.1.ebuild
+++ b/dev-vcs/git/git-2.24.1.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-2.24.2.ebuild b/dev-vcs/git/git-2.24.2.ebuild
new file mode 100644
index 000000000000..b14f087bb86b
--- /dev/null
+++ b/dev-vcs/git/git-2.24.2.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.24.3.ebuild b/dev-vcs/git/git-2.24.3.ebuild
new file mode 100644
index 000000000000..b4cba1683a7a
--- /dev/null
+++ b/dev-vcs/git/git-2.24.3.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.25.1.ebuild b/dev-vcs/git/git-2.25.1.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-2.25.1.ebuild
+++ b/dev-vcs/git/git-2.25.1.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-2.25.2.ebuild b/dev-vcs/git/git-2.25.2.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-2.25.2.ebuild
+++ b/dev-vcs/git/git-2.25.2.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-2.25.3.ebuild b/dev-vcs/git/git-2.25.3.ebuild
new file mode 100644
index 000000000000..b14f087bb86b
--- /dev/null
+++ b/dev-vcs/git/git-2.25.3.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.25.4.ebuild b/dev-vcs/git/git-2.25.4.ebuild
new file mode 100644
index 000000000000..b4cba1683a7a
--- /dev/null
+++ b/dev-vcs/git/git-2.25.4.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.26.0.ebuild b/dev-vcs/git/git-2.26.0.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-2.26.0.ebuild
+++ b/dev-vcs/git/git-2.26.0.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-2.26.1.ebuild b/dev-vcs/git/git-2.26.1.ebuild
new file mode 100644
index 000000000000..373486b54b60
--- /dev/null
+++ b/dev-vcs/git/git-2.26.1.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-2.26.2.ebuild b/dev-vcs/git/git-2.26.2.ebuild
new file mode 100644
index 000000000000..b4cba1683a7a
--- /dev/null
+++ b/dev-vcs/git/git-2.26.2.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl +ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( >=app-editors/emacs-23.1:* )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/git/git-9999-r1.ebuild b/dev-vcs/git/git-9999-r1.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-9999-r1.ebuild
+++ b/dev-vcs/git/git-9999-r1.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-9999-r2.ebuild b/dev-vcs/git/git-9999-r2.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-9999-r2.ebuild
+++ b/dev-vcs/git/git-9999-r2.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-9999-r3.ebuild b/dev-vcs/git/git-9999-r3.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-9999-r3.ebuild
+++ b/dev-vcs/git/git-9999-r3.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/git/git-9999.ebuild b/dev-vcs/git/git-9999.ebuild
index db2ca20707c2..373486b54b60 100644
--- a/dev-vcs/git/git-9999.ebuild
+++ b/dev-vcs/git/git-9999.ebuild
@@ -174,7 +174,7 @@ exportmakeopts() {
 		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
 		$(usex perforce '' NO_PYTHON=YesPlease)
 		$(usex subversion '' NO_SVN_TESTS=YesPlease)
-		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex threads '' NO_PTHREADS=YesPlease)
 		$(usex tk '' NO_TCLTK=YesPlease)
 	)
 
diff --git a/dev-vcs/hg-evolve/Manifest b/dev-vcs/hg-evolve/Manifest
index 9b641637e559..a935f254bc3d 100644
--- a/dev-vcs/hg-evolve/Manifest
+++ b/dev-vcs/hg-evolve/Manifest
@@ -1,5 +1,5 @@
 DIST hg-evolve-8.5.1.tar.gz 755965 BLAKE2B c9d6ea06f91cc537e1ea9266a09cded59e3dfb69f0bb5300a40b971bda6f9ce680c81978c23806972ca88931d9f2d67eedce14ba1f56670fa3c18194b63e2999 SHA512 7c5d9608d03ab81fc7291edb3f0ddb016cd4b267997bf66fcb221c9c917fbd34bfb4637bbb0c60b460a32304ee45fd7e30db929312dfbaa94df17baf7947482e
-DIST hg-evolve-9.3.0.tar.gz 789635 BLAKE2B 0e9fa2d2a9bf211b45e23d80b0d082ad5e77297ed82593f12ba433b04dcca55813817a169cbd68ca7165d866005f7a708043e53b7f1d376ec17f8dd2923dfe7e SHA512 f65132bfb8063aa0ab9878bef2fd4909c181d8026c971af224b6f69def5d9f8bb31e9e022ad7c1e098b8a154191f07009392336e0d1e787dedc5382dff2a6326
+DIST hg-evolve-9.3.1.tar.gz 798989 BLAKE2B b4992275e75c096535156cb42946f3eb90f8667b8691de5570099b7b4ff371da3b17ec3b44802c95cac21e196b1a7b8349707039de08ddbddf930bc620ee71e6 SHA512 453104989ec1e4a7072098f8c453290d66270f1992ab1a9a7c94be96f1c3e2b9989940796579de1e11f298ffdb7eaf7b9c9bb05def61fba4feeb5e2f39299670
 EBUILD hg-evolve-8.5.1.ebuild 749 BLAKE2B 3d42920b21837708f764dbe4e012e11938c722802a22724bac8931c3e671b07ff389a9f8c920b555c27daa830b47bcab20e0aac3b037e83d9006775d21434b42 SHA512 f3b40e73c9ba525e53707ed0df74c9a3566b6ce5dcf986b16d67350a69664773019c27955343e261ad4bb28335a8ecaf6b00ca310a5d2bce590e3c7d34bcf127
-EBUILD hg-evolve-9.3.0.ebuild 764 BLAKE2B dad3a999e0f5a439a5a79fe42d2ef6e86672ece4b76e60c2ea42fe868002c07cce75c4837e3a6440d0df50c870689b1e91057a0e9af9247fbb21bfd053807a0a SHA512 41bb97620a8908b0e6c3d3cf5688e20a91990789fc796069cf08f9f5c2ddaf49271e2a22e646e4f0098ba58b328d38182db9368126c474abb8bdf840a5e3a502
+EBUILD hg-evolve-9.3.1.ebuild 764 BLAKE2B dad3a999e0f5a439a5a79fe42d2ef6e86672ece4b76e60c2ea42fe868002c07cce75c4837e3a6440d0df50c870689b1e91057a0e9af9247fbb21bfd053807a0a SHA512 41bb97620a8908b0e6c3d3cf5688e20a91990789fc796069cf08f9f5c2ddaf49271e2a22e646e4f0098ba58b328d38182db9368126c474abb8bdf840a5e3a502
 MISC metadata.xml 395 BLAKE2B a61ed69918c8861a242c5add3e383902abb25cd10dc6f74b59a8e02fef50fa5a4da459494f3ac720989ada3ca730bbeeecb34d412129a191b210639b0473bcd9 SHA512 1676e93039dcb739017c0c119376b9c93e8cd1f7ae3a31c48e5eb6aa2ec92662bc7b5a834c00ecfe689408f27169559eb84e8e48a004e1f87e1eb59bfbbd7d16
diff --git a/dev-vcs/hg-evolve/hg-evolve-9.3.0.ebuild b/dev-vcs/hg-evolve/hg-evolve-9.3.0.ebuild
deleted file mode 100644
index 6ac77b0d8610..000000000000
--- a/dev-vcs/hg-evolve/hg-evolve-9.3.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6..8} )
-
-inherit distutils-r1
-
-DESCRIPTION="enables the changeset evolution feature of Mercurial"
-HOMEPAGE="https://www.mercurial-scm.org/doc/evolution/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc"
-
-RDEPEND="
-	>=dev-vcs/mercurial-4.6[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? ( dev-python/sphinx )"
-
-python_prepare_all() {
-	rm hgext3rd/__init__.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	use doc && emake -C docs all
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	if use doc; then
-		dodoc -r html/
-	fi
-}
diff --git a/dev-vcs/hg-evolve/hg-evolve-9.3.1.ebuild b/dev-vcs/hg-evolve/hg-evolve-9.3.1.ebuild
new file mode 100644
index 000000000000..6ac77b0d8610
--- /dev/null
+++ b/dev-vcs/hg-evolve/hg-evolve-9.3.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 python3_{6..8} )
+
+inherit distutils-r1
+
+DESCRIPTION="enables the changeset evolution feature of Mercurial"
+HOMEPAGE="https://www.mercurial-scm.org/doc/evolution/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND="
+	>=dev-vcs/mercurial-4.6[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx )"
+
+python_prepare_all() {
+	rm hgext3rd/__init__.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+	use doc && emake -C docs all
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	if use doc; then
+		dodoc -r html/
+	fi
+}
diff --git a/dev-vcs/hgsubversion/Manifest b/dev-vcs/hgsubversion/Manifest
deleted file mode 100644
index ccf1fdb7e810..000000000000
--- a/dev-vcs/hgsubversion/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST hgsubversion-1.9.2.tar.gz 203801 BLAKE2B dd8f53baf1d12263be1dde75b2a0a9367ea038bc4655322ac8e89c5fafe67cd42ab94f83b2eda2ff28f521b8ef7ecb5034dad0916bb2fdfadeee68e52f75e348 SHA512 e11e0db50702d0fa0c29ac75bde8f943551ff392218656f82672c25635b43ed17d26026af106723875165806577881c268ebb5fb82954add599dcb14b13e4744
-EBUILD hgsubversion-1.9.2.ebuild 962 BLAKE2B 4833325dc5e01b08959554b99695efa01d916a3418b29c663f3d33ab84c61d0d089a75aa5c19ddc85ed1de76e497bba884234a059f18a40688ae0b50f88e1072 SHA512 fa49482f3e86fc449ddd54aa56e39ca04e91ec921e79f484159e2092eec7d1f7843f3040faa01d12559b3e721ff85afa0e6206558ec5c6bfa57646c2be9938e2
-MISC metadata.xml 305 BLAKE2B ae280ffce2435476e46877db066a5967861112aef4cbde989981b8d01919e32706a758691ba0f085015eb681c2a55b2a601313bd9d9d9319497037e689d55bb8 SHA512 a5d7eb8c02ff08bf50591a24a4b0b76a76e799fe5903a27c8a648e1ab839f28135f6f16eac2ba557006936dabadfb08543c203fe0fcb3ff8f89f62e63fdb300f
diff --git a/dev-vcs/hgsubversion/hgsubversion-1.9.2.ebuild b/dev-vcs/hgsubversion/hgsubversion-1.9.2.ebuild
deleted file mode 100644
index d83432918135..000000000000
--- a/dev-vcs/hgsubversion/hgsubversion-1.9.2.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-inherit distutils-r1
-
-DESCRIPTION="hgsubversion is a Mercurial extension for working with Subversion repositories"
-HOMEPAGE="https://bitbucket.org/durin42/hgsubversion/wiki/Home https://pypi.org/project/hgsubversion/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 x86 ~ppc-macos ~x64-macos ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-vcs/mercurial-1.4[${PYTHON_USEDEP}]
-	|| (
-		>=dev-python/subvertpy-0.7.4[${PYTHON_USEDEP}]
-		>=dev-vcs/subversion-1.5[python] )
-"
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
-	test? ( dev-python/nose[${PYTHON_USEDEP}] )
-"
-
-python_test() {
-#	"${PYTHON}" tests/run.py || die "Tests failed under ${EPYTHON}"
-	# Upstream is using nose and the other way simply runs no tests
-	LC_ALL=C nosetests --verbose || die
-}
diff --git a/dev-vcs/hgsubversion/metadata.xml b/dev-vcs/hgsubversion/metadata.xml
deleted file mode 100644
index 9ed0465431f5..000000000000
--- a/dev-vcs/hgsubversion/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-	<!-- maintainer-needed -->
-	<upstream>
-		<remote-id type="pypi">hgsubversion</remote-id>
-		<remote-id type="bitbucket">durin42/hgsubversion</remote-id>
-	</upstream>
-</pkgmetadata>
diff --git a/dev-vcs/hgsvn/Manifest b/dev-vcs/hgsvn/Manifest
deleted file mode 100644
index 1ea222c4494d..000000000000
--- a/dev-vcs/hgsvn/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST hgsvn-0.2.3.zip 199696 BLAKE2B 1947d69a5f9a01d7802a3f0a1fd7f38b15df4f653ca9aaf836646eb03be30e4a4f09c24469a9b118e4eba769a94636fe04d2f7399fb3d835d54c8d0225af6f1e SHA512 d88d683730430b825411b4267c78e82e492f45d55c49c8a19ed159a95390e58507b07217c4e5082a223c3217042fdc1ae2c96648b1880bd441117ca173ca4c09
-EBUILD hgsvn-0.2.3-r2.ebuild 889 BLAKE2B 7e9003d55c2eaef93c98f3738d9e67abf2e85192fae55b8cd7d0cd14e4efa09a094c7d430afd329b55d7f8f86245beca3492036567a12952da9fc03d0c36e5d1 SHA512 0782e8818fd7d179a613516d02d2caff32ad8f6f30d7e6afb891ea3c0badf12d82f60f696f3c4a8791013ed0b503174deaf26f5ed7c7607cda0d78621f58d0bb
-MISC metadata.xml 344 BLAKE2B 7f7a9ed296fdf435cef6b24832bc3d83d59d795942197655c8c69c75162f0e66832a5c2982201029d7fc1008296f1523c6b6e4b6e34024876ef95a7cafe73a13 SHA512 9d31dde261ac9899cc9b5aa6f503b1d46db57b973ba9d26191f0d6d12424d63a1fce55dfe8d2bc198653c0ea8af1585f3a6b6969dd8b943fbc1d4a19592d819f
diff --git a/dev-vcs/hgsvn/hgsvn-0.2.3-r2.ebuild b/dev-vcs/hgsvn/hgsvn-0.2.3-r2.ebuild
deleted file mode 100644
index 91a1d656c061..000000000000
--- a/dev-vcs/hgsvn/hgsvn-0.2.3-r2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-DISTUTILS_SINGLE_IMPL=1
-
-inherit distutils-r1
-PYTHON_REQ_USE="xml"
-
-DESCRIPTION="A set of scripts to work locally on Subversion checkouts using Mercurial"
-HOMEPAGE="https://pypi.org/project/hgsvn/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~x86-linux ~x86-macos"
-IUSE=""
-
-DEPEND="
-	app-arch/unzip
-	dev-vcs/mercurial
-"
-RDEPEND="${DEPEND}
-	$(python_gen_cond_dep '
-		dev-vcs/subversion[${PYTHON_MULTI_USEDEP}]
-	')
-"
-
-pkg_setup() {
-	python-single-r1_pkg_setup
-}
-
-python_prepare_all() {
-	sed -e "/use_setuptools/d" -i setup.py || die "sed failed"
-	distutils-r1_python_prepare_all
-}
-
-python_install() {
-	distutils-r1_python_install
-	rm -rf "${D}/$(python_get_sitedir)/hgsvn/unittests" || die
-}
diff --git a/dev-vcs/hgsvn/metadata.xml b/dev-vcs/hgsvn/metadata.xml
deleted file mode 100644
index 4d85440d8473..000000000000
--- a/dev-vcs/hgsvn/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-	<!-- maintainer-needed -->
-	<longdescription>A set of scripts to work locally on Subversion checkouts using Mercurial</longdescription>
-	<upstream>
-		<remote-id type="pypi">hgsvn</remote-id>
-	</upstream>
-</pkgmetadata>
diff --git a/dev-vcs/hgview/Manifest b/dev-vcs/hgview/Manifest
deleted file mode 100644
index c005bb6122d8..000000000000
--- a/dev-vcs/hgview/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST hgview-1.9.0.tar.gz 181130 BLAKE2B 55b9a161d5a650e802e959c68b0b59d33679790a57067d96b58d93868de8f99fd4323a18493829b94f2e72d7f1973b1558250989787bdf682cc784896fb36e90 SHA512 604631776e096daf27241e8387d6fddfb9b3f2c54dbfccc95e770ebf2d5d27f64009c3698cf0d427f9a89e073db0d8d7623d57969ca6fcf036d5cb1dbd74eece
-EBUILD hgview-1.9.0-r1.ebuild 1155 BLAKE2B a5f5c405e136bce114fc6b1458db5def89beaff7628cab74ad4d9fad103bb623d96b595e9d2f64a84c05dedc57fd702f89f503bd98cd63ef16189835a532f002 SHA512 669caf87f8304eb4cbafa8ee67454b2d4c06dcd1d2eb456f20a615d9952b894c498c3ab1b15366e81fea32896d0c99c72a79a1b9cb41c0c1e17931f5565fc690
-MISC metadata.xml 241 BLAKE2B e383b9fa58bf95cedc00cccbc8061b34fd371cc83ffddfa6e94c07a1e980f23769a16f18d3d8103314afd3250aafaad83fa70ad436e8bde33dea03cf111f0e53 SHA512 b185630100162fea9373e93f1d254ad910d1c1e0f939d803222f08aaa1e8175e68720c346d00f1a0efe1cb4fb2cf4b7c01a86dfd7a7c5d84679bfb84cd3eba2e
diff --git a/dev-vcs/hgview/hgview-1.9.0-r1.ebuild b/dev-vcs/hgview/hgview-1.9.0-r1.ebuild
deleted file mode 100644
index 8dddd30bab7f..000000000000
--- a/dev-vcs/hgview/hgview-1.9.0-r1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python2_7 )
-DISTUTILS_IN_SOURCE_BUILD=1
-inherit distutils-r1
-
-DESCRIPTION="A Mercurial interactive history viewer"
-HOMEPAGE="https://www.logilab.org/project/hgview/ https://pypi.org/project/hgview/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc"
-
-RDEPEND="
-	dev-python/pyinotify[${PYTHON_USEDEP}]
-	dev-python/pygments[${PYTHON_USEDEP}]
-	>=dev-python/urwid-1.0.0[${PYTHON_USEDEP}]
-	dev-vcs/mercurial[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? (
-		app-text/asciidoc
-		app-text/xmlto
-	)"
-
-python_configure_all() {
-	mydistutilsargs=(
-		build $(use doc || echo --no-doc)
-		build --no-qt
-	)
-}
-
-src_prepare() {
-	# https://www.logilab.org/ticket/103668
-	sed -i \
-		-e 's:MANDIR=$(PREFIX)/man:MANDIR=$(PREFIX)/share/man:' \
-		-e 's:$(INSTALL) $$i:$(INSTALL) -m 644 $$i:' \
-		doc/Makefile || die
-
-	distutils-r1_src_prepare
-}
-
-src_install() {
-	distutils-r1_src_install
-
-	# Install Mercurial extension config file
-	insinto /etc/mercurial/hgrc.d
-	doins hgext/hgview.rc
-}
diff --git a/dev-vcs/hgview/metadata.xml b/dev-vcs/hgview/metadata.xml
deleted file mode 100644
index b94b93f5d3b7..000000000000
--- a/dev-vcs/hgview/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-  <!-- maintainer-needed -->
-  <upstream>
-    <remote-id type="pypi">hgview</remote-id>
-  </upstream>
-</pkgmetadata>
diff --git a/dev-vcs/mercurial-server/Manifest b/dev-vcs/mercurial-server/Manifest
deleted file mode 100644
index 168f34b8730e..000000000000
--- a/dev-vcs/mercurial-server/Manifest
+++ /dev/null
@@ -1,4 +0,0 @@
-DIST mercurial-server_1.2.tar.gz 21560 BLAKE2B 60d7dd9d0fdb55fc82d8cd268ab7ec7a53b1ba425c28520bff2f4920c1e404fbe0c0bb11e4af34b1952a8cdb2f44cecba1b5f29c6c5d85f49e992bd31cd88c1d SHA512 3dec14309fc050fa49ffd5253a491b2d65507ed8da04741ba5247d420701a9f836a1c3ef6924a706671e28bafbe0200af03c817184e303179002419887400ce0
-EBUILD mercurial-server-1.2-r1.ebuild 1785 BLAKE2B b0de1d1d1d479b94a9e277ac8f29ae2c113e727e2e3b06ca00561d83460e7b7e8d61b94bab58c187d2cfe5534210c6a29aba37f05580b48ec14873dda3d12e0a SHA512 151e85d1fddcfea7b3d23d3619a3ae48417a01e21becfeeb293742d46a96197185c8eebfa7aa4d60a47ecf472d814a846a044c0e19a47ee9a656b4998dfe4020
-EBUILD mercurial-server-9999.ebuild 1780 BLAKE2B 32a3bcbac38dbf215f747af3cef0797a3b2d6192cb91919030bc3c8a13b1844364be6bee1635d97693719ef0af836089b31454caed14c8eda9a208bedb674cf3 SHA512 a857790b3f3d1261146302bfeaa22a4e17b503ef59d7b94b85cf6b58dc7df8ccd069e66e6002032b6078de8d83537c71232f633b3fe43f182f14b594e0bc4177
-MISC metadata.xml 436 BLAKE2B c5a721ec5dea92c6e5e26fb29c8c6a064a1b946fc51ef4f4ede9648f287ceccc1f33c3b1e0b50c872c8f2f59f97b0486dc49bd6606b1dbe728e9f860ce39c53b SHA512 6902435e0811e8793cce55684007b8a3525be01576213a226a9d7328c636cc8ba303c632a29c939ead9cd163c2a181d2c113fad09635ee8893c4cb2501addd65
diff --git a/dev-vcs/mercurial-server/mercurial-server-1.2-r1.ebuild b/dev-vcs/mercurial-server/mercurial-server-1.2-r1.ebuild
deleted file mode 100644
index ab1be829c3fe..000000000000
--- a/dev-vcs/mercurial-server/mercurial-server-1.2-r1.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# force single impl to avoid python-exec wrapping
-DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python2_7 )
-
-inherit distutils-r1 user
-
-if [[ "${PV}" = "9999" ]]; then
-	inherit mercurial
-	EHG_REPO_URI="http://hg.opensource.lshift.net/mercurial-server"
-	KEYWORDS=""
-else
-	MY_P="${PN}_${PV}"
-	SRC_URI="http://dev.lshift.net/paul/mercurial-server/${MY_P}.tar.gz"
-	KEYWORDS="~amd64 ~x86"
-	S="${WORKDIR}/${MY_P}.orig"
-fi
-
-DESCRIPTION="Mercurial authentication and authorization tools"
-HOMEPAGE="http://www.lshift.net/mercurial-server.html"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="doc"
-
-RDEPEND="dev-vcs/mercurial"
-DEPEND="${RDEPEND}
-	doc? (
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt
-	)"
-
-pkg_setup() {
-	enewgroup hg
-	enewuser hg -1 /bin/bash "/var/lib/${PN}" hg
-	python-single-r1_pkg_setup
-}
-
-python_prepare_all() {
-	# remove useless makefile
-	rm Makefile || die
-
-	# fix installation paths
-	sed -i -e "s|'init'|'share/${PN}/init'|" setup.py \
-		|| die 'sed setup.py failed.'
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	# build documentation
-	if use doc; then
-		xsltproc --nonet -o manual.html \
-			/usr/share/sgml/docbook/xsl-stylesheets/html/docbook.xsl \
-			doc/manual.docbook || die "xsltproc failed"
-	fi
-}
-
-python_install() {
-	distutils-r1_python_install --install-scripts="/usr/share/${PN}"
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	# install configuration files
-	insinto "/etc/${PN}"
-	doins -r src/init/conf/.
-	keepdir /etc/mercurial-server/keys/{root,users}
-
-	# install documentation
-	use doc && dodoc manual.html
-
-	# install hg home directory
-	keepdir "/var/lib/${PN}"
-	fowners hg:hg "/var/lib/${PN}"
-	fperms 750 "/var/lib/${PN}"
-}
diff --git a/dev-vcs/mercurial-server/mercurial-server-9999.ebuild b/dev-vcs/mercurial-server/mercurial-server-9999.ebuild
deleted file mode 100644
index 701b33206779..000000000000
--- a/dev-vcs/mercurial-server/mercurial-server-9999.ebuild
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-# force single impl to avoid python-exec wrapping
-DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python2_7 )
-
-inherit distutils-r1 user
-
-if [[ "${PV}" = "9999" ]]; then
-	inherit mercurial
-	EHG_REPO_URI="http://hg.opensource.lshift.net/mercurial-server"
-	KEYWORDS=""
-else
-	MY_P="${PN}_${PV}"
-	SRC_URI="http://dev.lshift.net/paul/mercurial-server/${MY_P}.tar.gz"
-	KEYWORDS="~amd64 ~x86"
-	S="${WORKDIR}/${MY_P}"
-fi
-
-DESCRIPTION="Mercurial authentication and authorization tools"
-HOMEPAGE="http://www.lshift.net/mercurial-server.html"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="doc"
-
-RDEPEND="dev-vcs/mercurial"
-DEPEND="${RDEPEND}
-	doc? (
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt
-	)"
-
-pkg_setup() {
-	enewgroup hg
-	enewuser hg -1 /bin/bash "/var/lib/${PN}" hg
-	python-single-r1_pkg_setup
-}
-
-python_prepare_all() {
-	# remove useless makefile
-	rm Makefile || die
-
-	# fix installation paths
-	sed -i -e "s|'init'|'share/${PN}/init'|" setup.py \
-		|| die 'sed setup.py failed.'
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	# build documentation
-	if use doc; then
-		xsltproc --nonet -o manual.html \
-			/usr/share/sgml/docbook/xsl-stylesheets/html/docbook.xsl \
-			doc/manual.docbook || die "xsltproc failed"
-	fi
-}
-
-python_install() {
-	distutils-r1_python_install --install-scripts="/usr/share/${PN}"
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	# install configuration files
-	insinto "/etc/${PN}"
-	doins -r src/init/conf/.
-	keepdir /etc/mercurial-server/keys/{root,users}
-
-	# install documentation
-	use doc && dodoc manual.html
-
-	# install hg home directory
-	keepdir "/var/lib/${PN}"
-	fowners hg:hg "/var/lib/${PN}"
-	fperms 750 "/var/lib/${PN}"
-}
diff --git a/dev-vcs/mercurial-server/metadata.xml b/dev-vcs/mercurial-server/metadata.xml
deleted file mode 100644
index a59ea4d751d6..000000000000
--- a/dev-vcs/mercurial-server/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-	<!-- maintainer-needed -->
-	<longdescription lang="en">
-		mercurial-server gives your developers remote read/write access to
-		centralized Mercurial repositories using SSH public key authentication; it
-		provides convenient and fine-grained key management and access control.
-	</longdescription>
-</pkgmetadata>
diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest
index 4cb42bb5323c..01ca33c783f3 100644
--- a/dev-vcs/mercurial/Manifest
+++ b/dev-vcs/mercurial/Manifest
@@ -2,17 +2,9 @@ AUX 70mercurial-gentoo.el 76 BLAKE2B 2b9488757b2516dc494ce4f38c89b63669886eefaeb
 AUX cacerts.rc 51 BLAKE2B 8b42b2f4514d938b051feb7e59c69e6b06d1ceabe6c5a252a3cb4033555bcccda9375ae1fa9a5607f07296bd094c425077f5788e2c9fbca9b22914da41ddf132 SHA512 39c40c6cc95c54dcae13effb5c23f541f49fd89e0f040e214673afd906c6d5140eb18801d55330f4455507b467f0fae011998e60932e9a2accf37a0e7a047b90
 AUX mercurial-3.0.1-po_fixes.patch 1396 BLAKE2B 2de846558d2d2f8f4d4ccd7d8e0d65fd96edf31c858d05f0f5c29087a8122fefdd21546dea297709173d812e33774acadf8dada57d178c9ef9fafde560f4be4b SHA512 c696e0df1f6d149e8522123fe51585ded2955bbea782819d634eaf6edb0ddd189c68372692cb247bbd96d51c69801c2d8232e4b0b60093ff1f11b28010292cb7
 AUX mercurial-4.8.1-unbundle_zstd.patch 393 BLAKE2B 8556147baa6e493ee81aef1a68b2b6372ba094c6d5c73e97faa3f2da48179085ad475fe8d646916d3fb3294a166abec4a8b2a5b5e00cfd8fdaf55290a745ef2a SHA512 003844caff3dd4df15db8a6a084ee71d456026dc9222bf469f9489a9946a9205a57db274a26dabdc2d73fdff24cfd291f70b99141f2c9aad6e58d0fe1a1e7254
-DIST mercurial-4.9.1.tar.gz 7076867 BLAKE2B 8cedc66a8ddffc543a8849bbc98ebfc9ed61055a2ad16506b8c1c9a932d6825ef01a63b31f5bdbdb25e8829badab72857f101d12576fb269572c3d03cb4e7abd SHA512 2265ab501e24a2d229ef29404ca35d318faf620db163ec33225348d53139f7b6cb121e935ce444ec697ced69697f43df57dd7199ad20c1ca6f0275d9744ce391
-DIST mercurial-4.9.tar.gz 7075692 BLAKE2B ed11442e0cd5b27f47394ed1c15016930556d5cdc59ab18f1e0d5371e434eb752b68d3d9f6dd34ed9c63df62a646223e86c6c5178775d9b856eed5df65677900 SHA512 59a5467cebb51f17cce7bcada37f8d85906493ab2e3d443ceeae2c6598fb69d2d59f1e99c73bd08345c5f90501a7bae0d70e04c770ea7653ec30648e591c97fb
-DIST mercurial-5.0.2.tar.gz 7202797 BLAKE2B 7059efa2cf80c433ec25748c7c49ae0caa688363f5ef2983e0adf39a0a691ea99aaf4a090ebeda11b89e74263c548289cca3f82f40d77efbf925e12231b341cc SHA512 8b328e2e5a2896b690492d75c055bb13cd76df6efb087ef770f60ead86e30f7d952cb3ca82a696c0c5ce7039c319bd0fc9b448a52c079653622760317d5bb315
-DIST mercurial-5.1.2.tar.gz 7286238 BLAKE2B 0dcb2556e568e222da628bcfeceba56df8ab04f123f79add1953ce13bbf51e5cb0733fa72d5cff00250aaf0e3bfae5c52cc5cd72c1b6aa1fccb6820fce5a7018 SHA512 a8ce9d9220a5ddf452264801f06e81fe1e699ff700d085e3f82c6877910c6ef0e594203590f198b7b9e31c9a1ed627c8fa2a3a1513d0c5087cf775835a78c408
 DIST mercurial-5.2.2.tar.gz 7333065 BLAKE2B 9cec5a6ebe4693a1b96fe268211aa2eaa06643d5b8812c427757839d5389319f0e2ff3c1ed964a56bf8a3c46f7630321abf508c61691102856dfbdbd72fed662 SHA512 875e75587ab1f1c54edd2f7198dff21e6b287425f215a9d28ef98d5359420df90ca7ef0128ec7b772c4a31dc95b1082b4d6d28f1754968a08408516ba9ec91ee
-DIST mercurial-5.3.1.tar.gz 7511733 BLAKE2B 713074092d29ee7e35dbed73e38e120d802477b55fcab7c497cf78a1c4b00fc5aaf9ab323c64d58660c39454b4d6d0d130a620b7afc08141b9a2016052f3a3b9 SHA512 3bc49ea96cb4ac0e777f667a3243917af495a001534b6b91141fc93b5c47a8eddc84331e1cb0b981fac1bf451dcfc91b8c538134983733466248fdc20afd39c6
-EBUILD mercurial-4.9-r2.ebuild 3961 BLAKE2B 0fb5cfe7292583bc8acb0f7e60b1b44ec68727967407efc1cfae4f7d4155ac10edb75f1d22696e7d3e13fedaf8172d133fe40f04f879cfe2e3a23af10b8b17b9 SHA512 25340e237aa4a2b5bef4d8086b0ca5d09127695ebcab2c0ca1a8d3f0356cf5f39871548e81a262e97ffede6ab5bb807f90619ad4877fbc5e7be5b8f4a6b52b12
-EBUILD mercurial-4.9.1.ebuild 3969 BLAKE2B 246e6bef7d7c9e26c5d196c35aa80791d391ec920afc6152311257de9236f189b1c9a500f4c284193ea6398df17d44eda1429811c7270f7ab9a305e1f9c2b2ce SHA512 bbf4bbd40196c26ead520275926f11a2a31fb727003a7d20a895578cbc51c884f5f06b9ef8381a7f2739592192d0f272d3f7dc05a941a48ef7b09103e93cce0e
-EBUILD mercurial-5.0.2.ebuild 3965 BLAKE2B d2e9fee79075cb1030953c1542c0e7dcd4991c3cee3d165d2b4bc300eabc05865a23519e4efbf2e80571baccb4376228ceb2dacf66dc82a9ab7a9c7e6748786b SHA512 a097d92609ee4f4b42b12d48848f3468b2ca7825a49d7084d5c59c302f703995f3ae00ad71e39e8e063dd0973c47a46c4a936ed5662e886ac14257ffaf5e5006
-EBUILD mercurial-5.1.2.ebuild 4058 BLAKE2B 48f0950af98f15279f0353a75b06def66a5603d9761ff6c94171647df2c2535b60457d66ace87a1eaac54e35334da03b49fd7f3fd5746800ce9bb115e25d236a SHA512 43a0f0de929d50a58ebb2809390f83ab873e0324c207e6fd300136db592b59dbd414e6fc49cb64966e1557205308ed80f7a959716f25dbd09f6755ce3d8b76f5
-EBUILD mercurial-5.2.2-r1.ebuild 4261 BLAKE2B 388b01f443f91b3a0f0fd37553cf775ccbfdb06b23a093ffc5c3568593246db2e73e2cf320f8392ae367e004264a655592f2c2265ddb738577fb7b63b4e7b4ad SHA512 a0ff28086d53f992e662bbb13688748229e61178abfed68cd51b74fca5ed2d6618f05fc3757414faae57cdd5822eea867660e99d8e546610b4c46d076ef67c11
-EBUILD mercurial-5.3.1.ebuild 4273 BLAKE2B 4f4406b42a28133842cf93d85f5fbf11a17ad2b90128f51544b83db8ae32a0c140e9083d3e3a93812cd97b1b591fba02db48d6f667147d12ad2072008d343fa8 SHA512 06639342b94328556a84c7b51fac33bfa1771e50668d50b29f23a3610a26fa39894efe9b14d1e3a60f0aacb3903b623edc5606d1a9fed64844374b8999812e85
+DIST mercurial-5.3.2.tar.gz 7514256 BLAKE2B 250ecd5c0a64138cbcda599513efba7b040c0fed0f020c73ade2525e0ef8a9ad06c10c5df4e16eb9bbeb3ab0f2cbb622a65f6d4827b269654c662810ef0385fb SHA512 b0afcf82b51676d2e7592eb9b29f9611d59816399166400027b6c8b29c10c9ddc96b57f7913e78f938b1345bb7ac29ecd4ddc793165b7cf192c3c7a95712cc99
+EBUILD mercurial-5.2.2-r1.ebuild 4260 BLAKE2B dacafbc137616dee14931e46b4e59a72c04ab878ca2492110258720fc9a2dfd8eea444cd6d88607c29d7039b2c8cc59d4e0c10fd9682d14dfdf24a21db426666 SHA512 156c151fa6a92d731f336a145b512df75d599a818892ae3b071be084150251450b9e9a48a55ed57f4948a719a31cabd217e0bbe0fbfcacd1be668c6213f6d19a
+EBUILD mercurial-5.3.2.ebuild 4273 BLAKE2B 4f4406b42a28133842cf93d85f5fbf11a17ad2b90128f51544b83db8ae32a0c140e9083d3e3a93812cd97b1b591fba02db48d6f667147d12ad2072008d343fa8 SHA512 06639342b94328556a84c7b51fac33bfa1771e50668d50b29f23a3610a26fa39894efe9b14d1e3a60f0aacb3903b623edc5606d1a9fed64844374b8999812e85
 EBUILD mercurial-9999.ebuild 4219 BLAKE2B 567a43e6491cf5317dd96998a57a6d562d07583a9b45ff4f45d01f1f2e1b61243ac646356efb90d86da51dad6634d5ea9a574a348ed73f4a2acf484a2608083f SHA512 d4e0373b8374205a72141e1376b7b17a209cd0e83456e5a0f95d382fa8b20173274f65cac74151a7dd99afb56a50cddf1fe352007fa5e1d7e198b5a37529f3c1
-MISC metadata.xml 544 BLAKE2B a95ef3aa49d289113a878ea473a975ac0e836684ec6950f362ed2ef110f6ab461c746bd99177e6c315707f987338d137509b3e286d7637084ac3cdec4aaf774b SHA512 24d33ff3094877d2365fd0fb04d21ae242a6dc5dc64ed3f09c9cd6fe39f637fa6ef5eaffedcd91e63fcb9382831cf14d18e01ae2a222ac8caf41dae623418738
+MISC metadata.xml 483 BLAKE2B f81d3e855c41f0f5bef819cf4fbb537591f187917c76b5d153f9bf5f4cc14959c5aeef17ec9e5a0596d8e6bd2d8db0ad86dd4dea5ddfdd44a4c063acdc6a8a81 SHA512 3132d4cf6a2ba22ee8f93aef8de590bd576143dd80f56d515afb14cd5962899c0dfc4aee8552f041bac77b997055b2b407bad104591286be985de839f159fc83
diff --git a/dev-vcs/mercurial/mercurial-4.9-r2.ebuild b/dev-vcs/mercurial/mercurial-4.9-r2.ebuild
deleted file mode 100644
index 3a5eb72d0e0e..000000000000
--- a/dev-vcs/mercurial/mercurial-4.9-r2.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-
-inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
-
-DESCRIPTION="Scalable distributed SCM"
-HOMEPAGE="https://www.mercurial-scm.org/"
-SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+chg bugzilla emacs gpg test tk"
-
-RDEPEND="app-misc/ca-certificates
-	dev-python/zstandard[${PYTHON_USEDEP}]
-	bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
-	gpg? ( app-crypt/gnupg )
-	tk? ( dev-lang/tk )"
-
-DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
-	test? ( app-arch/unzip
-		dev-python/pygments[${PYTHON_USEDEP}] )"
-
-SITEFILE="70${PN}-gentoo.el"
-
-# Too many tests fail #608720
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.0.1-po_fixes.patch"
-	"${FILESDIR}/${PN}-4.8.1-unbundle_zstd.patch"
-)
-
-python_prepare_all() {
-	# fix up logic that won't work in Gentoo Prefix (also won't outside in
-	# certain cases), bug #362891
-	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
-
-	# Don't use bundled zstandard (#666972)
-	rm -r contrib/python-zstandard || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	filter-flags -ftracer -ftree-vectorize
-	# Note: make it impl-conditional if py3 is supported
-	append-flags -fno-strict-aliasing
-
-	"${PYTHON}" setup.py build_mo || die
-}
-
-python_compile_all() {
-	rm -r contrib/win32 || die
-	if use chg; then
-		emake -C contrib/chg
-	fi
-	if use emacs; then
-		cd contrib || die
-		elisp-compile mercurial.el || die "elisp-compile failed!"
-	fi
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	newbashcomp contrib/bash_completion hg
-
-	insinto /usr/share/zsh/site-functions
-	newins contrib/zsh_completion _hg
-
-	rm -f doc/*.?.txt
-	dodoc CONTRIBUTORS
-	cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
-
-	dobin hgeditor
-	dobin contrib/hgk
-	python_foreach_impl python_doscript contrib/hg-ssh
-
-	if use emacs; then
-		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
-		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-	fi
-
-	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion wix plan9 *.el )
-
-	if use chg; then
-		dobin contrib/chg/chg
-		doman contrib/chg/chg.1
-		RM_CONTRIB+=( chg )
-	fi
-
-	for f in ${RM_CONTRIB[@]}; do
-		rm -r contrib/${f} || die
-	done
-
-	dodoc -r contrib
-	docompress -x /usr/share/doc/${PF}/contrib
-	doman doc/*.?
-
-	insinto /etc/mercurial/hgrc.d
-	doins "${FILESDIR}/cacerts.rc"
-
-	# symlink to system zstd
-	local sitedir=$(python_get_sitedir)
-	dosym ../zstd.so "${sitedir#${EPREFIX}}"/${PN}/zstd.so
-}
-
-src_test() {
-	pushd tests &>/dev/null || die
-	rm -rf *svn*			# Subversion tests fail with 1.5
-	rm -f test-archive*		# Fails due to verbose tar output changes
-	rm -f test-convert-baz*		# GNU Arch baz
-	rm -f test-convert-cvs*		# CVS
-	rm -f test-convert-darcs*	# Darcs
-	rm -f test-convert-git*		# git
-	rm -f test-convert-mtn*		# monotone
-	rm -f test-convert-tla*		# GNU Arch tla
-	#rm -f test-doctest*		# doctest always fails with python 2.5.x
-	rm -f test-largefiles*		# tends to time out
-
-	popd &>/dev/null || die
-	distutils-r1_src_test
-}
-
-python_test() {
-	local TEST_DIR
-
-	rm -rf "${TMPDIR}"/test
-	distutils_install_for_testing
-	cd tests || die
-	"${PYTHON}" run-tests.py --verbose \
-		--tmpdir="${TMPDIR}"/test \
-		--with-hg="${TEST_DIR}"/scripts/hg \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-
-	elog "If you want to convert repositories from other tools using convert"
-	elog "extension please install correct tool:"
-	elog "  dev-vcs/cvs"
-	elog "  dev-vcs/darcs"
-	elog "  dev-vcs/git"
-	elog "  dev-vcs/monotone"
-	elog "  dev-vcs/subversion"
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}
diff --git a/dev-vcs/mercurial/mercurial-4.9.1.ebuild b/dev-vcs/mercurial/mercurial-4.9.1.ebuild
deleted file mode 100644
index 435caf12f6ea..000000000000
--- a/dev-vcs/mercurial/mercurial-4.9.1.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-
-inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
-
-DESCRIPTION="Scalable distributed SCM"
-HOMEPAGE="https://www.mercurial-scm.org/"
-SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+chg bugzilla emacs gpg test tk"
-
-RDEPEND="app-misc/ca-certificates
-	dev-python/zstandard[${PYTHON_USEDEP}]
-	bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
-	gpg? ( app-crypt/gnupg )
-	tk? ( dev-lang/tk )"
-
-DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
-	test? ( app-arch/unzip
-		dev-python/pygments[${PYTHON_USEDEP}] )"
-
-SITEFILE="70${PN}-gentoo.el"
-
-# Too many tests fail #608720
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.0.1-po_fixes.patch"
-	"${FILESDIR}/${PN}-4.8.1-unbundle_zstd.patch"
-)
-
-python_prepare_all() {
-	# fix up logic that won't work in Gentoo Prefix (also won't outside in
-	# certain cases), bug #362891
-	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
-
-	# Don't use bundled zstandard (#666972)
-	rm -r contrib/python-zstandard || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	filter-flags -ftracer -ftree-vectorize
-	# Note: make it impl-conditional if py3 is supported
-	append-flags -fno-strict-aliasing
-
-	"${PYTHON}" setup.py build_mo || die
-}
-
-python_compile_all() {
-	rm -r contrib/win32 || die
-	if use chg; then
-		emake -C contrib/chg
-	fi
-	if use emacs; then
-		cd contrib || die
-		elisp-compile mercurial.el || die "elisp-compile failed!"
-	fi
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	newbashcomp contrib/bash_completion hg
-
-	insinto /usr/share/zsh/site-functions
-	newins contrib/zsh_completion _hg
-
-	rm -f doc/*.?.txt
-	dodoc CONTRIBUTORS
-	cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
-
-	dobin hgeditor
-	dobin contrib/hgk
-	python_foreach_impl python_doscript contrib/hg-ssh
-
-	if use emacs; then
-		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
-		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-	fi
-
-	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion wix plan9 *.el )
-
-	if use chg; then
-		dobin contrib/chg/chg
-		doman contrib/chg/chg.1
-		RM_CONTRIB+=( chg )
-	fi
-
-	for f in ${RM_CONTRIB[@]}; do
-		rm -r contrib/${f} || die
-	done
-
-	dodoc -r contrib
-	docompress -x /usr/share/doc/${PF}/contrib
-	doman doc/*.?
-
-	insinto /etc/mercurial/hgrc.d
-	doins "${FILESDIR}/cacerts.rc"
-
-	# symlink to system zstd
-	local sitedir=$(python_get_sitedir)
-	dosym ../zstd.so "${sitedir#${EPREFIX}}"/${PN}/zstd.so
-}
-
-src_test() {
-	pushd tests &>/dev/null || die
-	rm -rf *svn*			# Subversion tests fail with 1.5
-	rm -f test-archive*		# Fails due to verbose tar output changes
-	rm -f test-convert-baz*		# GNU Arch baz
-	rm -f test-convert-cvs*		# CVS
-	rm -f test-convert-darcs*	# Darcs
-	rm -f test-convert-git*		# git
-	rm -f test-convert-mtn*		# monotone
-	rm -f test-convert-tla*		# GNU Arch tla
-	#rm -f test-doctest*		# doctest always fails with python 2.5.x
-	rm -f test-largefiles*		# tends to time out
-
-	popd &>/dev/null || die
-	distutils-r1_src_test
-}
-
-python_test() {
-	local TEST_DIR
-
-	rm -rf "${TMPDIR}"/test
-	distutils_install_for_testing
-	cd tests || die
-	"${PYTHON}" run-tests.py --verbose \
-		--tmpdir="${TMPDIR}"/test \
-		--with-hg="${TEST_DIR}"/scripts/hg \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-
-	elog "If you want to convert repositories from other tools using convert"
-	elog "extension please install correct tool:"
-	elog "  dev-vcs/cvs"
-	elog "  dev-vcs/darcs"
-	elog "  dev-vcs/git"
-	elog "  dev-vcs/monotone"
-	elog "  dev-vcs/subversion"
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}
diff --git a/dev-vcs/mercurial/mercurial-5.0.2.ebuild b/dev-vcs/mercurial/mercurial-5.0.2.ebuild
deleted file mode 100644
index 117dc6be168c..000000000000
--- a/dev-vcs/mercurial/mercurial-5.0.2.ebuild
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-
-inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
-
-DESCRIPTION="Scalable distributed SCM"
-HOMEPAGE="https://www.mercurial-scm.org/"
-SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+chg bugzilla emacs gpg test tk"
-
-RDEPEND="app-misc/ca-certificates
-	dev-python/zstandard[${PYTHON_USEDEP}]
-	bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
-	gpg? ( app-crypt/gnupg )
-	tk? ( dev-lang/tk )"
-
-DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
-	test? ( app-arch/unzip
-		dev-python/pygments[${PYTHON_USEDEP}] )"
-
-SITEFILE="70${PN}-gentoo.el"
-
-# Too many tests fail #608720
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.0.1-po_fixes.patch"
-	"${FILESDIR}/${PN}-4.8.1-unbundle_zstd.patch"
-)
-
-python_prepare_all() {
-	# fix up logic that won't work in Gentoo Prefix (also won't outside in
-	# certain cases), bug #362891
-	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
-
-	# Don't use bundled zstandard (#666972)
-	rm -r contrib/python-zstandard || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	filter-flags -ftracer -ftree-vectorize
-	# Note: make it impl-conditional if py3 is supported
-	append-flags -fno-strict-aliasing
-
-	"${PYTHON}" setup.py build_mo || die
-}
-
-python_compile_all() {
-	rm -r contrib/win32 || die
-	if use chg; then
-		emake -C contrib/chg
-	fi
-	if use emacs; then
-		cd contrib || die
-		elisp-compile mercurial.el || die "elisp-compile failed!"
-	fi
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	newbashcomp contrib/bash_completion hg
-
-	insinto /usr/share/zsh/site-functions
-	newins contrib/zsh_completion _hg
-
-	rm -f doc/*.?.txt
-	dodoc CONTRIBUTORS
-	cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
-
-	dobin hgeditor
-	dobin contrib/hgk
-	python_foreach_impl python_doscript contrib/hg-ssh
-
-	if use emacs; then
-		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
-		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-	fi
-
-	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el )
-
-	if use chg; then
-		dobin contrib/chg/chg
-		doman contrib/chg/chg.1
-		RM_CONTRIB+=( chg )
-	fi
-
-	for f in ${RM_CONTRIB[@]}; do
-		rm -r contrib/${f} || die
-	done
-
-	dodoc -r contrib
-	docompress -x /usr/share/doc/${PF}/contrib
-	doman doc/*.?
-
-	insinto /etc/mercurial/hgrc.d
-	doins "${FILESDIR}/cacerts.rc"
-
-	# symlink to system zstd
-	local sitedir=$(python_get_sitedir)
-	dosym ../zstd.so "${sitedir#${EPREFIX}}"/${PN}/zstd.so
-}
-
-src_test() {
-	pushd tests &>/dev/null || die
-	rm -rf *svn*			# Subversion tests fail with 1.5
-	rm -f test-archive*		# Fails due to verbose tar output changes
-	rm -f test-convert-baz*		# GNU Arch baz
-	rm -f test-convert-cvs*		# CVS
-	rm -f test-convert-darcs*	# Darcs
-	rm -f test-convert-git*		# git
-	rm -f test-convert-mtn*		# monotone
-	rm -f test-convert-tla*		# GNU Arch tla
-	#rm -f test-doctest*		# doctest always fails with python 2.5.x
-	rm -f test-largefiles*		# tends to time out
-
-	popd &>/dev/null || die
-	distutils-r1_src_test
-}
-
-python_test() {
-	local TEST_DIR
-
-	rm -rf "${TMPDIR}"/test
-	distutils_install_for_testing
-	cd tests || die
-	"${PYTHON}" run-tests.py --verbose \
-		--tmpdir="${TMPDIR}"/test \
-		--with-hg="${TEST_DIR}"/scripts/hg \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-
-	elog "If you want to convert repositories from other tools using convert"
-	elog "extension please install correct tool:"
-	elog "  dev-vcs/cvs"
-	elog "  dev-vcs/darcs"
-	elog "  dev-vcs/git"
-	elog "  dev-vcs/monotone"
-	elog "  dev-vcs/subversion"
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}
diff --git a/dev-vcs/mercurial/mercurial-5.1.2.ebuild b/dev-vcs/mercurial/mercurial-5.1.2.ebuild
deleted file mode 100644
index 88464e063967..000000000000
--- a/dev-vcs/mercurial/mercurial-5.1.2.ebuild
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-
-inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
-
-DESCRIPTION="Scalable distributed SCM"
-HOMEPAGE="https://www.mercurial-scm.org/"
-SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+chg bugzilla emacs gpg test tk"
-
-RDEPEND="app-misc/ca-certificates
-	dev-python/zstandard[${PYTHON_USEDEP}]
-	bugzilla? ( dev-python/mysql-python[${PYTHON_USEDEP}] )
-	gpg? ( app-crypt/gnupg )
-	tk? ( dev-lang/tk )"
-
-DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
-	test? ( app-arch/unzip
-		dev-python/pygments[${PYTHON_USEDEP}] )"
-
-SITEFILE="70${PN}-gentoo.el"
-
-# Too many tests fail #608720
-RESTRICT="test"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-3.0.1-po_fixes.patch"
-	"${FILESDIR}/${PN}-4.8.1-unbundle_zstd.patch"
-)
-
-python_prepare_all() {
-	# fix up logic that won't work in Gentoo Prefix (also won't outside in
-	# certain cases), bug #362891
-	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
-
-	# Don't use bundled zstandard (#666972)
-	rm -r contrib/python-zstandard || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-	filter-flags -ftracer -ftree-vectorize
-	# Note: make it impl-conditional if py3 is supported
-	append-flags -fno-strict-aliasing
-
-	"${PYTHON}" setup.py build_mo || die
-}
-
-python_compile_all() {
-	rm -r contrib/win32 || die
-	if use chg; then
-		emake -C contrib/chg
-	fi
-	if use emacs; then
-		cd contrib || die
-		elisp-compile mercurial.el || die "elisp-compile failed!"
-	fi
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	newbashcomp contrib/bash_completion hg
-
-	insinto /usr/share/zsh/site-functions
-	newins contrib/zsh_completion _hg
-
-	rm -f doc/*.?.txt
-	dodoc CONTRIBUTORS
-	cp hgweb*.cgi "${ED}"/usr/share/doc/${PF}/ || die
-
-	dobin hgeditor
-	dobin contrib/hgk
-	python_foreach_impl python_doscript contrib/hg-ssh
-
-	if use emacs; then
-		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
-		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-	fi
-
-	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el )
-
-	if use chg; then
-		dobin contrib/chg/chg
-		doman contrib/chg/chg.1
-		RM_CONTRIB+=( chg )
-	fi
-
-	for f in ${RM_CONTRIB[@]}; do
-		rm -r contrib/${f} || die
-	done
-
-	dodoc -r contrib
-	docompress -x /usr/share/doc/${PF}/contrib
-	doman doc/*.?
-
-	insinto /etc/mercurial/hgrc.d
-	doins "${FILESDIR}/cacerts.rc"
-
-	# symlink to system zstd
-	local sitedir=$(python_get_sitedir)
-	dosym ../zstd.so "${sitedir#${EPREFIX}}"/${PN}/zstd.so
-}
-
-src_test() {
-	pushd tests &>/dev/null || die
-	rm -rf *svn*			# Subversion tests fail with 1.5
-	rm -f test-archive*		# Fails due to verbose tar output changes
-	rm -f test-convert-baz*		# GNU Arch baz
-	rm -f test-convert-cvs*		# CVS
-	rm -f test-convert-darcs*	# Darcs
-	rm -f test-convert-git*		# git
-	rm -f test-convert-mtn*		# monotone
-	rm -f test-convert-tla*		# GNU Arch tla
-	#rm -f test-doctest*		# doctest always fails with python 2.5.x
-	rm -f test-largefiles*		# tends to time out
-
-	popd &>/dev/null || die
-	distutils-r1_src_test
-}
-
-python_test() {
-	local TEST_DIR
-
-	rm -rf "${TMPDIR}"/test
-	distutils_install_for_testing
-	cd tests || die
-	"${PYTHON}" run-tests.py --verbose \
-		--tmpdir="${TMPDIR}"/test \
-		--with-hg="${TEST_DIR}"/scripts/hg \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-
-	elog "If you want to convert repositories from other tools using convert"
-	elog "extension please install correct tool:"
-	elog "  dev-vcs/cvs"
-	elog "  dev-vcs/darcs"
-	elog "  dev-vcs/git"
-	elog "  dev-vcs/monotone"
-	elog "  dev-vcs/subversion"
-
-	elog "If you want to use bugzilla extension"
-	elog "please install dev-python/mysqlclient"
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}
diff --git a/dev-vcs/mercurial/mercurial-5.2.2-r1.ebuild b/dev-vcs/mercurial/mercurial-5.2.2-r1.ebuild
index 915d09bcf000..a4954449a98b 100644
--- a/dev-vcs/mercurial/mercurial-5.2.2-r1.ebuild
+++ b/dev-vcs/mercurial/mercurial-5.2.2-r1.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
 
 LICENSE="GPL-2+"
 SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
 IUSE="+chg emacs gpg test tk zsh-completion"
 
 BROKEN_PYTHON="
diff --git a/dev-vcs/mercurial/mercurial-5.3.1.ebuild b/dev-vcs/mercurial/mercurial-5.3.1.ebuild
deleted file mode 100644
index e0eb454596bc..000000000000
--- a/dev-vcs/mercurial/mercurial-5.3.1.ebuild
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 python3_{6..8} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
-
-DESCRIPTION="Scalable distributed SCM"
-HOMEPAGE="https://www.mercurial-scm.org/"
-SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="+chg emacs gpg test tk zsh-completion"
-
-BROKEN_PYTHON="
-	!~dev-python/python-3.5.0
-	!~dev-python/python-3.5.1
-	!~dev-python/python-3.5.2
-	!~dev-python/python-3.6.0
-	!~dev-python/python-3.6.1"
-
-BDEPEND="${BROKEN_PYTHON}"
-
-RDEPEND="${BROKEN_PYTHON}
-	app-misc/ca-certificates
-	dev-python/zstandard[${PYTHON_USEDEP}]
-	gpg? ( app-crypt/gnupg )
-	tk? ( dev-lang/tk )
-	zsh-completion? ( app-shells/zsh )"
-
-DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
-	test? ( app-arch/unzip
-		dev-python/pygments[${PYTHON_USEDEP}] )"
-
-SITEFILE="70${PN}-gentoo.el"
-
-# Too many tests fail #608720
-RESTRICT="test"
-
-python_prepare_all() {
-	# fix up logic that won't work in Gentoo Prefix (also won't outside in
-	# certain cases), bug #362891
-	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
-	# Use absolute import for zstd
-	sed -i -e 's/from \.* import zstd/import zstd/' \
-		mercurial/utils/compression.py \
-		mercurial/wireprotoframing.py || die
-
-	distutils-r1_python_prepare_all
-}
-
-python_compile() {
-	filter-flags -ftracer -ftree-vectorize
-	python_is_python3 || local -x CFLAGS="${CFLAGS} -fno-strict-aliasing"
-	distutils-r1_python_compile build_ext --no-zstd
-}
-
-python_compile_all() {
-	rm -r contrib/win32 || die
-	if use chg; then
-		emake -C contrib/chg
-	fi
-	if use emacs; then
-		cd contrib || die
-		elisp-compile mercurial.el || die "elisp-compile failed!"
-	fi
-}
-
-python_install() {
-	distutils-r1_python_install build_ext --no-zstd
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-
-	newbashcomp contrib/bash_completion hg
-
-	if use zsh-completion ; then
-		insinto /usr/share/zsh/site-functions
-		newins contrib/zsh_completion _hg
-	fi
-
-	dobin hgeditor
-	if use tk; then
-		dobin contrib/hgk
-	fi
-	python_foreach_impl python_doscript contrib/hg-ssh
-
-	if use emacs; then
-		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
-		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
-	fi
-
-	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el )
-
-	if use chg; then
-		dobin contrib/chg/chg
-		doman contrib/chg/chg.1
-		RM_CONTRIB+=( chg )
-	fi
-
-	for f in ${RM_CONTRIB[@]}; do
-		rm -rf contrib/${f} || die
-	done
-
-	dodoc -r contrib
-	docompress -x /usr/share/doc/${PF}/contrib
-	doman doc/*.?
-	dodoc CONTRIBUTORS hgweb.cgi
-
-	insinto /etc/mercurial/hgrc.d
-	doins "${FILESDIR}/cacerts.rc"
-}
-
-src_test() {
-	pushd tests &>/dev/null || die
-	rm -rf *svn*			# Subversion tests fail with 1.5
-	rm -f test-archive*		# Fails due to verbose tar output changes
-	rm -f test-convert-baz*		# GNU Arch baz
-	rm -f test-convert-cvs*		# CVS
-	rm -f test-convert-darcs*	# Darcs
-	rm -f test-convert-git*		# git
-	rm -f test-convert-mtn*		# monotone
-	rm -f test-convert-tla*		# GNU Arch tla
-	rm -f test-largefiles*		# tends to time out
-	if [[ ${EUID} -eq 0 ]]; then
-		einfo "Removing tests which require user privileges to succeed"
-		rm -f test-convert*
-		rm -f test-lock-badness*
-		rm -f test-permissions*
-		rm -f test-pull-permission*
-		rm -f test-journal-exists*
-		rm -f test-repair-strip*
-	fi
-
-	popd &>/dev/null || die
-	distutils-r1_src_test
-}
-
-python_test() {
-	local TEST_DIR
-
-	rm -rf "${TMPDIR}"/test
-	distutils_install_for_testing
-	cd tests || die
-	"${PYTHON}" run-tests.py --verbose \
-		--tmpdir="${TMPDIR}"/test \
-		--with-hg="${TEST_DIR}"/scripts/hg \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-
-	elog "If you want to convert repositories from other tools using convert"
-	elog "extension please install correct tool:"
-	elog "  dev-vcs/cvs"
-	elog "  dev-vcs/darcs"
-	elog "  dev-vcs/git"
-	elog "  dev-vcs/monotone"
-	elog "  dev-vcs/subversion"
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}
diff --git a/dev-vcs/mercurial/mercurial-5.3.2.ebuild b/dev-vcs/mercurial/mercurial-5.3.2.ebuild
new file mode 100644
index 000000000000..e0eb454596bc
--- /dev/null
+++ b/dev-vcs/mercurial/mercurial-5.3.2.ebuild
@@ -0,0 +1,171 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{6..8} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit bash-completion-r1 elisp-common eutils distutils-r1 flag-o-matic
+
+DESCRIPTION="Scalable distributed SCM"
+HOMEPAGE="https://www.mercurial-scm.org/"
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+chg emacs gpg test tk zsh-completion"
+
+BROKEN_PYTHON="
+	!~dev-python/python-3.5.0
+	!~dev-python/python-3.5.1
+	!~dev-python/python-3.5.2
+	!~dev-python/python-3.6.0
+	!~dev-python/python-3.6.1"
+
+BDEPEND="${BROKEN_PYTHON}"
+
+RDEPEND="${BROKEN_PYTHON}
+	app-misc/ca-certificates
+	dev-python/zstandard[${PYTHON_USEDEP}]
+	gpg? ( app-crypt/gnupg )
+	tk? ( dev-lang/tk )
+	zsh-completion? ( app-shells/zsh )"
+
+DEPEND="emacs? ( >=app-editors/emacs-23.1:* )
+	test? ( app-arch/unzip
+		dev-python/pygments[${PYTHON_USEDEP}] )"
+
+SITEFILE="70${PN}-gentoo.el"
+
+# Too many tests fail #608720
+RESTRICT="test"
+
+python_prepare_all() {
+	# fix up logic that won't work in Gentoo Prefix (also won't outside in
+	# certain cases), bug #362891
+	sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die
+	# Use absolute import for zstd
+	sed -i -e 's/from \.* import zstd/import zstd/' \
+		mercurial/utils/compression.py \
+		mercurial/wireprotoframing.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile() {
+	filter-flags -ftracer -ftree-vectorize
+	python_is_python3 || local -x CFLAGS="${CFLAGS} -fno-strict-aliasing"
+	distutils-r1_python_compile build_ext --no-zstd
+}
+
+python_compile_all() {
+	rm -r contrib/win32 || die
+	if use chg; then
+		emake -C contrib/chg
+	fi
+	if use emacs; then
+		cd contrib || die
+		elisp-compile mercurial.el || die "elisp-compile failed!"
+	fi
+}
+
+python_install() {
+	distutils-r1_python_install build_ext --no-zstd
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	newbashcomp contrib/bash_completion hg
+
+	if use zsh-completion ; then
+		insinto /usr/share/zsh/site-functions
+		newins contrib/zsh_completion _hg
+	fi
+
+	dobin hgeditor
+	if use tk; then
+		dobin contrib/hgk
+	fi
+	python_foreach_impl python_doscript contrib/hg-ssh
+
+	if use emacs; then
+		elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el )
+
+	if use chg; then
+		dobin contrib/chg/chg
+		doman contrib/chg/chg.1
+		RM_CONTRIB+=( chg )
+	fi
+
+	for f in ${RM_CONTRIB[@]}; do
+		rm -rf contrib/${f} || die
+	done
+
+	dodoc -r contrib
+	docompress -x /usr/share/doc/${PF}/contrib
+	doman doc/*.?
+	dodoc CONTRIBUTORS hgweb.cgi
+
+	insinto /etc/mercurial/hgrc.d
+	doins "${FILESDIR}/cacerts.rc"
+}
+
+src_test() {
+	pushd tests &>/dev/null || die
+	rm -rf *svn*			# Subversion tests fail with 1.5
+	rm -f test-archive*		# Fails due to verbose tar output changes
+	rm -f test-convert-baz*		# GNU Arch baz
+	rm -f test-convert-cvs*		# CVS
+	rm -f test-convert-darcs*	# Darcs
+	rm -f test-convert-git*		# git
+	rm -f test-convert-mtn*		# monotone
+	rm -f test-convert-tla*		# GNU Arch tla
+	rm -f test-largefiles*		# tends to time out
+	if [[ ${EUID} -eq 0 ]]; then
+		einfo "Removing tests which require user privileges to succeed"
+		rm -f test-convert*
+		rm -f test-lock-badness*
+		rm -f test-permissions*
+		rm -f test-pull-permission*
+		rm -f test-journal-exists*
+		rm -f test-repair-strip*
+	fi
+
+	popd &>/dev/null || die
+	distutils-r1_src_test
+}
+
+python_test() {
+	local TEST_DIR
+
+	rm -rf "${TMPDIR}"/test
+	distutils_install_for_testing
+	cd tests || die
+	"${PYTHON}" run-tests.py --verbose \
+		--tmpdir="${TMPDIR}"/test \
+		--with-hg="${TEST_DIR}"/scripts/hg \
+		|| die "Tests fail with ${EPYTHON}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+
+	elog "If you want to convert repositories from other tools using convert"
+	elog "extension please install correct tool:"
+	elog "  dev-vcs/cvs"
+	elog "  dev-vcs/darcs"
+	elog "  dev-vcs/git"
+	elog "  dev-vcs/monotone"
+	elog "  dev-vcs/subversion"
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-vcs/mercurial/metadata.xml b/dev-vcs/mercurial/metadata.xml
index d868ce0a9583..0409b47761c7 100644
--- a/dev-vcs/mercurial/metadata.xml
+++ b/dev-vcs/mercurial/metadata.xml
@@ -6,7 +6,6 @@
 	</maintainer>
 	<use>
 		<flag name="chg">Support Mercurial command server client</flag>
-		<flag name="bugzilla">Support bugzilla integration.</flag>
 		<flag name="gpg">Support signing with GnuPG.</flag>
 		<flag name="tk">Install dev-lang/tk for hgk script.</flag>
 	</use>
diff --git a/dev-vcs/subversion/Manifest b/dev-vcs/subversion/Manifest
index a32ccd30de16..2b06703d00ab 100644
--- a/dev-vcs/subversion/Manifest
+++ b/dev-vcs/subversion/Manifest
@@ -6,5 +6,5 @@ DIST subversion-1.10.0_rc1-patches-1.tar.xz 2984 BLAKE2B 7c9619b95ca6b433a58dc5b
 DIST subversion-1.12.2.tar.bz2 8506584 BLAKE2B 535e4c6c369537baa7f9fc9123d0314de1bb8d4b3c51e0216662047fd1084ceb6a1f349de54bf575f0eb8e1041fcd6525e6cf27dbd908e2148578cb9fb807bb3 SHA512 b1f859b460afa54598778d8633f648acb4fa46138f7d6f0c1451e3c6a1de71df859233cd9ac7f19f0f20d7237ed3988f0a38da7552ffa58391e19d957bc7c136
 DIST subversion-1.13.0.tar.bz2 8508122 BLAKE2B 761def1bb3a1fe5333534ebda0940b618c343f919688055cdef69552bc515ad6cd9db3ac67c8c73075487d4f45d93bb57fa467288756dfa163fc72c8e8c7b548 SHA512 36f390b412bf772bf894efc2aadc247f12ca30ac407e04f664c14411c3519e1bb242d1239f2f44cbcb86eafc7c413efc8eadbfe1d1e75118235a7b7adc6c85b2
 EBUILD subversion-1.12.2.ebuild 15517 BLAKE2B 6a8573f750eb273d22f67a7857652305284e8b8fc7a32fda5a00f9f826854635ef7c708cae0196a10c41804881ec5f3fa68f35415eaf3073efe4a6dae79fd965 SHA512 051325815cbea5de0ecc001c5c7d30156dce016082a92ec038f0298de24d8fde4b07b506d82567c3ae932b98466fed13da1cf790c98956f73c37a277ab1ca5fe
-EBUILD subversion-1.13.0.ebuild 15525 BLAKE2B e8092c514bf9ef5220aae3c983dd11cb79a302b931490c960926b167cb148d21f5cc57cd6de4afe56391904871e213ad54eb8203ca1ede4a03b8a1cbd50582cf SHA512 9c18a30d131e3963689be81e92081a01016e5683635ea106102c2bae3633ee58bffe4dbf11429be0966b9ea7feb2619e459330716440333470a70651c1ebd20b
+EBUILD subversion-1.13.0-r1.ebuild 15517 BLAKE2B 37fb4df30ad8bc2d1c7d1722967b444f94229144b781b7b5a496d712454bb14d1fa76e012a52725f179839829737b6b490757a71d002b23369a79f1175971053 SHA512 fe4f479654730ba2e407329f5c43376a96d1f8d1d091949ef52dccbec04982f7969c67991fae91df259b6829bc3c82aa57f3ee08833d0d4a04992387de504261
 MISC metadata.xml 575 BLAKE2B 10cda26a50a50e6ac6b16d578d1a3856f88ac12b56ac6ff1768c4a0e0240b2e6abea6b1f66a6ea7d3f817e75eb9e2d5e14999ad2ba330b55784ec5028781b994 SHA512 f2a6ff822a11d452c133aca4abeb1ffb214d946c7e706d1caa269564c4dc55374c17449a4912df54b12ce562d66058baf2e710f3e9e46ca3602e9d8483555584
diff --git a/dev-vcs/subversion/subversion-1.13.0-r1.ebuild b/dev-vcs/subversion/subversion-1.13.0-r1.ebuild
new file mode 100644
index 000000000000..3f5565dc2727
--- /dev/null
+++ b/dev-vcs/subversion/subversion-1.13.0-r1.ebuild
@@ -0,0 +1,532 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+USE_RUBY="ruby26 ruby25 ruby24"
+DISTUTILS_OPTIONAL=1
+WANT_AUTOMAKE="none"
+GENTOO_DEPEND_ON_PERL="no"
+
+inherit autotools bash-completion-r1 db-use depend.apache distutils-r1 flag-o-matic java-pkg-opt-2 libtool ltprune multilib perl-module ruby-single toolchain-funcs xdg-utils
+
+MY_P="${P/_/-}"
+DESCRIPTION="Advanced version control system"
+HOMEPAGE="https://subversion.apache.org/"
+SRC_URI="mirror://apache/${PN}/${MY_P}.tar.bz2
+	https://dev.gentoo.org/~polynomial-c/${PN}-1.10.0_rc1-patches-1.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Subversion GPL-2"
+SLOT="0"
+[[ "${PV}" = *_rc* ]] || \
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="apache2 berkdb ctypes-python debug doc +dso extras gnome-keyring +http java kwallet nls perl python ruby sasl test vim-syntax"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+	app-arch/bzip2
+	app-arch/lz4
+	>=dev-db/sqlite-3.7.12
+	>=dev-libs/apr-1.3:1
+	>=dev-libs/apr-util-1.3:1
+	dev-libs/expat
+	dev-libs/libutf8proc:=
+	sys-apps/file
+	sys-libs/zlib
+	berkdb? ( >=sys-libs/db-4.0.14:= )
+	ctypes-python? ( ${PYTHON_DEPS} )
+	gnome-keyring? (
+		dev-libs/glib:2
+		app-crypt/libsecret
+		sys-apps/dbus
+	)
+	http? ( >=net-libs/serf-1.3.4 )
+	kwallet? (
+		dev-qt/qtcore:5
+		dev-qt/qtdbus:5
+		dev-qt/qtgui:5
+		kde-frameworks/kcoreaddons:5
+		kde-frameworks/ki18n:5
+		kde-frameworks/kwallet:5
+		sys-apps/dbus
+	)
+	perl? ( dev-lang/perl:= )
+	python? ( ${PYTHON_DEPS} )
+	ruby? ( ${RUBY_DEPS} )
+	sasl? ( dev-libs/cyrus-sasl )"
+RDEPEND="${COMMON_DEPEND}
+	apache2? ( www-servers/apache[apache2_modules_dav] )
+	java? ( >=virtual/jre-1.8 )
+	nls? ( virtual/libintl )
+	perl? ( dev-perl/URI )"
+# Note: ctypesgen doesn't need PYTHON_USEDEP, it's used once
+DEPEND="${COMMON_DEPEND}
+	!!<sys-apps/sandbox-1.6
+	ctypes-python? ( dev-python/ctypesgen )
+	doc? ( app-doc/doxygen )
+	gnome-keyring? ( virtual/pkgconfig )
+	http? ( virtual/pkgconfig )
+	java? ( >=virtual/jdk-1.8 )
+	kwallet? (
+		kde-frameworks/kdelibs4support:5
+		virtual/pkgconfig
+	)
+	nls? ( sys-devel/gettext )
+	perl? ( dev-lang/swig )
+	python? ( dev-lang/swig )
+	ruby? ( dev-lang/swig )
+	test? ( ${PYTHON_DEPS} )"
+
+REQUIRED_USE="
+	ctypes-python? ( ${PYTHON_REQUIRED_USE} )
+	python? ( ${PYTHON_REQUIRED_USE} )
+	test? (
+		${PYTHON_REQUIRED_USE}
+		!dso
+	)"
+
+want_apache
+
+pkg_setup() {
+	if use berkdb ; then
+		local apu_bdb_version="$(${EPREFIX}/usr/bin/apu-1-config --includes \
+			| grep -Eoe '-I${EPREFIX}/usr/include/db[[:digit:]]\.[[:digit:]]' \
+			| sed 's:.*b::')"
+		einfo
+		if [[ -z "${SVN_BDB_VERSION}" ]] ; then
+			if [[ -n "${apu_bdb_version}" ]] ; then
+				SVN_BDB_VERSION="${apu_bdb_version}"
+				einfo "Matching db version to apr-util"
+			else
+				SVN_BDB_VERSION="$(db_ver_to_slot "$(db_findver sys-libs/db 2>/dev/null)")"
+				einfo "SVN_BDB_VERSION variable isn't set. You can set it to enforce using of specific version of Berkeley DB."
+			fi
+		fi
+		einfo "Using: Berkeley DB ${SVN_BDB_VERSION}"
+		einfo
+
+		if [[ -n "${apu_bdb_version}" && "${SVN_BDB_VERSION}" != "${apu_bdb_version}" ]]; then
+			eerror "APR-Util is linked against Berkeley DB ${apu_bdb_version}, but you are trying"
+			eerror "to build Subversion with support for Berkeley DB ${SVN_BDB_VERSION}."
+			eerror "Rebuild dev-libs/apr-util or set SVN_BDB_VERSION=\"${apu_bdb_version}\"."
+			eerror "Aborting to avoid possible run-time crashes."
+			die "Berkeley DB version mismatch"
+		fi
+	fi
+
+	depend.apache_pkg_setup
+
+	java-pkg-opt-2_pkg_setup
+
+	if ! use http ; then
+		ewarn "WebDAV support is disabled. You need WebDAV to"
+		ewarn "access repositories through the HTTP protocol."
+		ewarn "Consider enabling \"http\" USE flag"
+		echo -ne "\a"
+	fi
+
+	# https://issues.apache.org/jira/browse/SVN-4813#comment-16813739
+	append-cppflags -P
+
+	if use debug ; then
+		append-cppflags -DSVN_DEBUG -DAP_DEBUG
+	fi
+
+	# http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51C42014.3060700@wandisco.com%3E
+	[[ ${CHOST} == *-solaris2* ]] && append-cppflags -D__EXTENSIONS__
+
+	# Allow for custom repository locations.
+	SVN_REPOS_LOC="${SVN_REPOS_LOC:-${EPREFIX}/var/svn}"
+
+	if use ruby ; then
+		local rbslot
+		RB_VER=""
+		for rbslot in $(sed 's@\([[:digit:]]\+\)\([[:digit:]]\)@\1.\2@g' <<< ${USE_RUBY//ruby}) ; do
+			if has_version dev-lang/ruby:${rbslot} ;  then
+				RB_VER="${rbslot/.}"
+				break
+			fi
+		done
+		[[ -z "${RB_VER}" ]] && die "No useable ruby version found"
+	fi
+}
+
+src_prepare() {
+	eapply "${WORKDIR}/patches"
+	eapply_user
+
+	chmod +x build/transform_libtool_scripts.sh || die
+
+	sed -i \
+		-e "s/\(BUILD_RULES=.*\) bdb-test\(.*\)/\1\2/g" \
+		-e "s/\(BUILD_RULES=.*\) test\(.*\)/\1\2/g" configure.ac
+
+	# this bites us in particular on Solaris
+	sed -i -e '1c\#!/usr/bin/env sh' build/transform_libtool_scripts.sh || \
+		die "/bin/sh is not POSIX shell!"
+
+	eautoconf
+	elibtoolize
+
+	sed -e 's/\(libsvn_swig_py\)-\(1\.la\)/\1-$(EPYTHON)-\2/g' \
+		-i build-outputs.mk || die "sed failed"
+
+	if use python ; then
+		# XXX: make python_copy_sources accept path
+		S=${S}/subversion/bindings/swig/python python_copy_sources
+		rm -r "${S}"/subversion/bindings/swig/python || die
+	fi
+
+	xdg_environment_reset
+}
+
+src_configure() {
+	local myconf=(
+		--libdir="${EPREFIX}/usr/$(get_libdir)"
+		$(use_with apache2 apache-libexecdir)
+		$(use_with apache2 apxs "${EPREFIX}"/usr/bin/apxs)
+		$(use_with berkdb berkeley-db "db.h:${EPREFIX}/usr/include/db${SVN_BDB_VERSION}::db-${SVN_BDB_VERSION}")
+		$(use_with ctypes-python ctypesgen "${EPREFIX}/usr")
+		$(use_enable dso runtime-module-search)
+		$(use_with gnome-keyring)
+		$(use_enable java javahl)
+		$(use_with java jdk "${JAVA_HOME}")
+		$(use_with kwallet)
+		$(use_enable nls)
+		$(use_with sasl)
+		$(use_with http serf)
+		--with-apr="${EPREFIX}/usr/bin/apr-1-config"
+		--with-apr-util="${EPREFIX}/usr/bin/apu-1-config"
+		--disable-experimental-libtool
+		--without-jikes
+		--disable-mod-activation
+		--disable-static
+		--enable-svnxx
+	)
+
+	if use python || use perl || use ruby; then
+		myconf+=( --with-swig )
+	else
+		myconf+=( --without-swig )
+	fi
+
+	if use java ; then
+		myconf+=( --without-junit )
+	fi
+
+	case ${CHOST} in
+		*-aix*)
+			# avoid recording immediate path to sharedlibs into executables
+			append-ldflags -Wl,-bnoipath
+		;;
+		*-cygwin*)
+			# no LD_PRELOAD support, no undefined symbols
+			myconf+=( --disable-local-library-preloading LT_LDFLAGS=-no-undefined )
+			;;
+		*-interix*)
+			# loader crashes on the LD_PRELOADs...
+			myconf+=( --disable-local-library-preloading )
+		;;
+		*-solaris*)
+			# need -lintl to link
+			use nls && append-libs intl
+			# this breaks installation, on x64 echo replacement is 32-bits
+			myconf+=( --disable-local-library-preloading )
+		;;
+		*-mint*)
+			myconf+=( --enable-all-static --disable-local-library-preloading )
+		;;
+		*)
+			# inject LD_PRELOAD entries for easy in-tree development
+			myconf+=( --enable-local-library-preloading )
+		;;
+	esac
+
+	#version 1.7.7 again tries to link against the older installed version and fails, when trying to
+	#compile for x86 on amd64, so workaround this issue again
+	#check newer versions, if this is still/again needed
+	#myconf+=( --disable-disallowing-of-undefined-references )
+
+	# for build-time scripts
+	if use ctypes-python || use python || use test; then
+		python_setup
+	fi
+
+	if use python && [[ ${CHOST} == *-darwin* ]] ; then
+		export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)'
+		export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)'
+		export ac_cv_python_compile="$(tc-getCC)"
+	fi
+
+	# allow overriding Python include directory
+	ac_cv_path_RUBY=$(usex ruby "${EPREFIX}/usr/bin/ruby${RB_VER}" "none") \
+	ac_cv_path_RDOC=$(usex ruby "${EPREFIX}/usr/bin/rdoc${RB_VER}" "none") \
+	ac_cv_python_includes='-I$(PYTHON_INCLUDEDIR)' \
+	econf "${myconf[@]}"
+}
+
+src_compile() {
+	emake local-all
+
+	if use ctypes-python ; then
+		# pre-generate .py files
+		use ctypes-python && emake ctypes-python
+
+		pushd subversion/bindings/ctypes-python >/dev/null || die
+		distutils-r1_src_compile
+		popd >/dev/null || die
+	fi
+
+	if use python ; then
+		swig_py_compile() {
+			local p=subversion/bindings/swig/python
+			rm -f ${p} || die
+			ln -s "${BUILD_DIR}" ${p} || die
+
+			python_export PYTHON_INCLUDEDIR
+			emake swig-py \
+				swig_pydir="$(python_get_sitedir)/libsvn" \
+				swig_pydir_extra="$(python_get_sitedir)/svn"
+		}
+
+		# this will give us proper BUILD_DIR for symlinking
+		BUILD_DIR=python \
+		python_foreach_impl swig_py_compile
+	fi
+
+	if use perl ; then
+		emake swig-pl
+	fi
+
+	if use ruby ; then
+		emake swig-rb
+	fi
+
+	if use java ; then
+		emake -j1 JAVAC_FLAGS="$(java-pkg_javac-args) -encoding iso8859-1" javahl
+	fi
+
+	if use extras ; then
+		emake tools
+	fi
+
+	if use doc ; then
+		doxygen doc/doxygen.conf || die "Building of Subversion HTML documentation failed"
+
+		if use java; then
+			emake doc-javahl
+		fi
+	fi
+}
+
+src_test() {
+	if has_version ~${CATEGORY}/${P} ; then
+		default
+
+		if use ctypes-python ; then
+			python_test() {
+				"${PYTHON}" subversion/bindings/ctypes-python/test/run_all.py \
+					|| die "ctypes-python tests fail with ${EPYTHON}"
+			}
+
+			distutils-r1_src_test
+		fi
+
+		if use python ; then
+			swig_py_test() {
+				pushd "${BUILD_DIR}" >/dev/null || die
+				"${PYTHON}" tests/run_all.py || die "swig-py tests fail with ${EPYTHON}"
+				popd >/dev/null || die
+			}
+
+			BUILD_DIR=subversion/bindings/swig/python \
+			python_foreach_impl swig_py_test
+		fi
+	else
+		ewarn "The test suite shows errors when there is an older version of"
+		ewarn "${CATEGORY}/${PN} installed. Please install =${CATEGORY}/${P}*"
+		ewarn "before running the test suite."
+		ewarn "Test suite skipped."
+	fi
+}
+
+src_install() {
+	emake -j1 DESTDIR="${D}" local-install
+
+	if use ctypes-python ; then
+		pushd subversion/bindings/ctypes-python >/dev/null || die
+		distutils-r1_src_install
+		popd >/dev/null || die
+	fi
+
+	if use python ; then
+		swig_py_install() {
+			local p=subversion/bindings/swig/python
+			rm -f ${p} || die
+			ln -s "${BUILD_DIR}" ${p} || die
+
+			emake \
+				DESTDIR="${D}" \
+				swig_pydir="$(python_get_sitedir)/libsvn" \
+				swig_pydir_extra="$(python_get_sitedir)/svn" \
+				install-swig-py
+		}
+
+		BUILD_DIR=python \
+		python_foreach_impl swig_py_install
+	fi
+
+	if use perl ; then
+		emake DESTDIR="${D}" INSTALLDIRS="vendor" install-swig-pl
+		perl_delete_localpod
+		find "${ED}" \( -name .packlist -o -name "*.bs" \) -delete || die
+	fi
+
+	if use ruby ; then
+		emake DESTDIR="${D}" install-swig-rb
+	fi
+
+	if use java ; then
+		emake DESTDIR="${D}" install-javahl
+		java-pkg_regso "${ED%/}"/usr/$(get_libdir)/libsvnjavahl*$(get_libname)
+		java-pkg_dojar "${ED%/}"/usr/$(get_libdir)/svn-javahl/svn-javahl.jar
+		rm -fr "${ED%/}"/usr/$(get_libdir)/svn-javahl/*.jar
+	fi
+
+	# Install Apache module configuration.
+	if use apache2 ; then
+		keepdir "${APACHE_MODULES_CONFDIR}"
+		insinto "${APACHE_MODULES_CONFDIR}"
+		doins "${FILESDIR}/47_mod_dav_svn.conf"
+	fi
+
+	# Install Bash Completion, bug 43179.
+	newbashcomp tools/client-side/bash_completion svn
+	bashcomp_alias svn svn{admin,dumpfilter,look,sync,version}
+	rm -f tools/client-side/bash_completion
+
+	# Install hot backup script, bug 54304.
+	newbin tools/backup/hot-backup.py svn-hot-backup
+	rm -fr tools/backup
+
+	# Install svnserve init-script and xinet.d snippet, bug 43245.
+	newinitd "${FILESDIR}"/svnserve.initd3 svnserve
+	newconfd "${FILESDIR}"/svnserve.confd svnserve
+	insinto /etc/xinetd.d
+	newins "${FILESDIR}"/svnserve.xinetd svnserve
+
+	#adjust default user and group with disabled apache2 USE flag, bug 381385
+	if ! use apache2 ; then
+		sed -e "s\USER:-apache\USER:-svn\g" \
+			-e "s\GROUP:-apache\GROUP:-svnusers\g" \
+			-i "${ED%/}"/etc/init.d/svnserve || die
+		sed -e "0,/apache/s//svn/" \
+			-e "s:apache:svnusers:" \
+			-i "${ED%/}"/etc/xinetd.d/svnserve || die
+	fi
+
+	# Install documentation.
+	dodoc CHANGES COMMITTERS README
+	dodoc tools/xslt/svnindex.{css,xsl}
+	rm -fr tools/xslt
+
+	# Install extra files.
+	if use extras ; then
+		cat <<- EOF > 80subversion-extras
+			PATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin"
+			ROOTPATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin"
+		EOF
+		doenvd 80subversion-extras
+
+		emake DESTDIR="${D}" toolsdir="/usr/$(get_libdir)/subversion/bin" install-tools
+
+		find tools \( -name "*.bat" -o -name "*.in" -o -name ".libs" \) -print0 | xargs -0 rm -fr
+		rm -fr tools/client-side/svnmucc
+		rm -fr tools/server-side/{svn-populate-node-origins-index,svnauthz-validate}*
+		rm -fr tools/{buildbot,dev,diff,po}
+
+		insinto /usr/share/${PN}
+		find tools -name '*.py' -exec sed -i -e '1s:python:&2:' {} + || die
+		doins -r tools
+	fi
+
+	if use doc ; then
+		docinto html
+		dodoc -r doc/doxygen/html/*
+
+		if use java ; then
+			java-pkg_dojavadoc doc/javadoc
+		fi
+	fi
+
+	prune_libtool_files --all
+
+	cd "${ED%/}"/usr/share/locale
+	for i in * ; do
+		if [[ ${i} != *${LINGUAS}* ]] ; then
+			rm -r ${i} || die
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Compare versions of Berkeley DB, bug 122877.
+	if use berkdb && [[ -f "${EROOT}/usr/bin/svn" ]] ; then
+		OLD_BDB_VERSION="$(scanelf -nq "${EROOT}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")"
+		NEW_BDB_VERSION="$(scanelf -nq "${ED%/}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")"
+		if [[ "${OLD_BDB_VERSION}" != "${NEW_BDB_VERSION}" ]] ; then
+			CHANGED_BDB_VERSION="1"
+		fi
+	fi
+}
+
+pkg_postinst() {
+	if [[ -n "${CHANGED_BDB_VERSION}" ]] ; then
+		ewarn "You upgraded from an older version of Berkeley DB and may experience"
+		ewarn "problems with your repository. Run the following commands as root to fix it:"
+		ewarn "    db4_recover -h ${SVN_REPOS_LOC}/repos"
+		ewarn "    chown -Rf apache:apache ${SVN_REPOS_LOC}/repos"
+	fi
+
+	ewarn "If you run subversion as a daemon, you will need to restart it to avoid module mismatches."
+}
+
+pkg_postrm() {
+	:
+}
+
+pkg_config() {
+	# Remember: Don't use ${EROOT}${SVN_REPOS_LOC} since ${SVN_REPOS_LOC}
+	# already has EPREFIX in it
+	einfo "Initializing the database in ${SVN_REPOS_LOC}..."
+	if [[ -e "${SVN_REPOS_LOC}/repos" ]] ; then
+		echo "A Subversion repository already exists and I will not overwrite it."
+		echo "Delete \"${SVN_REPOS_LOC}/repos\" first if you're sure you want to have a clean version."
+	else
+		mkdir -p "${SVN_REPOS_LOC}/conf"
+
+		einfo "Populating repository directory..."
+		# Create initial repository.
+		"${EROOT}/usr/bin/svnadmin" create "${SVN_REPOS_LOC}/repos"
+
+		einfo "Setting repository permissions..."
+		SVNSERVE_USER="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_USER}")"
+		SVNSERVE_GROUP="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_GROUP}")"
+		if use apache2 ; then
+			[[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="apache"
+			[[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="apache"
+		else
+			[[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="svn"
+			[[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="svnusers"
+		fi
+		chmod -Rf go-rwx "${SVN_REPOS_LOC}/conf"
+		chmod -Rf o-rwx "${SVN_REPOS_LOC}/repos"
+		echo "Please create \"${SVNSERVE_GROUP}\" group if it does not exist yet."
+		echo "Afterwards please create \"${SVNSERVE_USER}\" user with homedir \"${SVN_REPOS_LOC}\""
+		echo "and as part of the \"${SVNSERVE_GROUP}\" group if it does not exist yet."
+		echo "Finally, execute \"chown -Rf ${SVNSERVE_USER}:${SVNSERVE_GROUP} ${SVN_REPOS_LOC}/repos\""
+		echo "to finish the configuration."
+	fi
+}
diff --git a/dev-vcs/subversion/subversion-1.13.0.ebuild b/dev-vcs/subversion/subversion-1.13.0.ebuild
deleted file mode 100644
index a46d68203b07..000000000000
--- a/dev-vcs/subversion/subversion-1.13.0.ebuild
+++ /dev/null
@@ -1,532 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-USE_RUBY="ruby26 ruby25 ruby24"
-DISTUTILS_OPTIONAL=1
-WANT_AUTOMAKE="none"
-GENTOO_DEPEND_ON_PERL="no"
-
-inherit autotools bash-completion-r1 db-use depend.apache distutils-r1 flag-o-matic java-pkg-opt-2 libtool ltprune multilib perl-module ruby-single toolchain-funcs xdg-utils
-
-MY_P="${P/_/-}"
-DESCRIPTION="Advanced version control system"
-HOMEPAGE="https://subversion.apache.org/"
-SRC_URI="mirror://apache/${PN}/${MY_P}.tar.bz2
-	https://dev.gentoo.org/~polynomial-c/${PN}-1.10.0_rc1-patches-1.tar.xz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="Subversion GPL-2"
-SLOT="0"
-[[ "${PV}" = *_rc* ]] || \
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="apache2 berkdb ctypes-python debug doc +dso extras gnome-keyring +http java kwallet nls perl python ruby sasl test vim-syntax"
-RESTRICT="!test? ( test )"
-
-COMMON_DEPEND="
-	app-arch/bzip2
-	app-arch/lz4
-	>=dev-db/sqlite-3.7.12
-	>=dev-libs/apr-1.3:1
-	>=dev-libs/apr-util-1.3:1
-	dev-libs/expat
-	dev-libs/libutf8proc:=
-	sys-apps/file
-	sys-libs/zlib
-	berkdb? ( >=sys-libs/db-4.0.14:= )
-	ctypes-python? ( ${PYTHON_DEPS} )
-	gnome-keyring? (
-		dev-libs/glib:2
-		gnome-base/libgnome-keyring
-		sys-apps/dbus
-	)
-	http? ( >=net-libs/serf-1.3.4 )
-	kwallet? (
-		dev-qt/qtcore:5
-		dev-qt/qtdbus:5
-		dev-qt/qtgui:5
-		kde-frameworks/kcoreaddons:5
-		kde-frameworks/ki18n:5
-		kde-frameworks/kwallet:5
-		sys-apps/dbus
-	)
-	perl? ( dev-lang/perl:= )
-	python? ( ${PYTHON_DEPS} )
-	ruby? ( ${RUBY_DEPS} )
-	sasl? ( dev-libs/cyrus-sasl )"
-RDEPEND="${COMMON_DEPEND}
-	apache2? ( www-servers/apache[apache2_modules_dav] )
-	java? ( >=virtual/jre-1.8 )
-	nls? ( virtual/libintl )
-	perl? ( dev-perl/URI )"
-# Note: ctypesgen doesn't need PYTHON_USEDEP, it's used once
-DEPEND="${COMMON_DEPEND}
-	!!<sys-apps/sandbox-1.6
-	ctypes-python? ( dev-python/ctypesgen )
-	doc? ( app-doc/doxygen )
-	gnome-keyring? ( virtual/pkgconfig )
-	http? ( virtual/pkgconfig )
-	java? ( >=virtual/jdk-1.8 )
-	kwallet? (
-		kde-frameworks/kdelibs4support:5
-		virtual/pkgconfig
-	)
-	nls? ( sys-devel/gettext )
-	perl? ( dev-lang/swig )
-	python? ( dev-lang/swig )
-	ruby? ( dev-lang/swig )
-	test? ( ${PYTHON_DEPS} )"
-
-REQUIRED_USE="
-	ctypes-python? ( ${PYTHON_REQUIRED_USE} )
-	python? ( ${PYTHON_REQUIRED_USE} )
-	test? (
-		${PYTHON_REQUIRED_USE}
-		!dso
-	)"
-
-want_apache
-
-pkg_setup() {
-	if use berkdb ; then
-		local apu_bdb_version="$(${EPREFIX}/usr/bin/apu-1-config --includes \
-			| grep -Eoe '-I${EPREFIX}/usr/include/db[[:digit:]]\.[[:digit:]]' \
-			| sed 's:.*b::')"
-		einfo
-		if [[ -z "${SVN_BDB_VERSION}" ]] ; then
-			if [[ -n "${apu_bdb_version}" ]] ; then
-				SVN_BDB_VERSION="${apu_bdb_version}"
-				einfo "Matching db version to apr-util"
-			else
-				SVN_BDB_VERSION="$(db_ver_to_slot "$(db_findver sys-libs/db 2>/dev/null)")"
-				einfo "SVN_BDB_VERSION variable isn't set. You can set it to enforce using of specific version of Berkeley DB."
-			fi
-		fi
-		einfo "Using: Berkeley DB ${SVN_BDB_VERSION}"
-		einfo
-
-		if [[ -n "${apu_bdb_version}" && "${SVN_BDB_VERSION}" != "${apu_bdb_version}" ]]; then
-			eerror "APR-Util is linked against Berkeley DB ${apu_bdb_version}, but you are trying"
-			eerror "to build Subversion with support for Berkeley DB ${SVN_BDB_VERSION}."
-			eerror "Rebuild dev-libs/apr-util or set SVN_BDB_VERSION=\"${apu_bdb_version}\"."
-			eerror "Aborting to avoid possible run-time crashes."
-			die "Berkeley DB version mismatch"
-		fi
-	fi
-
-	depend.apache_pkg_setup
-
-	java-pkg-opt-2_pkg_setup
-
-	if ! use http ; then
-		ewarn "WebDAV support is disabled. You need WebDAV to"
-		ewarn "access repositories through the HTTP protocol."
-		ewarn "Consider enabling \"http\" USE flag"
-		echo -ne "\a"
-	fi
-
-	# https://issues.apache.org/jira/browse/SVN-4813#comment-16813739
-	append-cppflags -P
-
-	if use debug ; then
-		append-cppflags -DSVN_DEBUG -DAP_DEBUG
-	fi
-
-	# http://mail-archives.apache.org/mod_mbox/subversion-dev/201306.mbox/%3C51C42014.3060700@wandisco.com%3E
-	[[ ${CHOST} == *-solaris2* ]] && append-cppflags -D__EXTENSIONS__
-
-	# Allow for custom repository locations.
-	SVN_REPOS_LOC="${SVN_REPOS_LOC:-${EPREFIX}/var/svn}"
-
-	if use ruby ; then
-		local rbslot
-		RB_VER=""
-		for rbslot in $(sed 's@\([[:digit:]]\+\)\([[:digit:]]\)@\1.\2@g' <<< ${USE_RUBY//ruby}) ; do
-			if has_version dev-lang/ruby:${rbslot} ;  then
-				RB_VER="${rbslot/.}"
-				break
-			fi
-		done
-		[[ -z "${RB_VER}" ]] && die "No useable ruby version found"
-	fi
-}
-
-src_prepare() {
-	eapply "${WORKDIR}/patches"
-	eapply_user
-
-	chmod +x build/transform_libtool_scripts.sh || die
-
-	sed -i \
-		-e "s/\(BUILD_RULES=.*\) bdb-test\(.*\)/\1\2/g" \
-		-e "s/\(BUILD_RULES=.*\) test\(.*\)/\1\2/g" configure.ac
-
-	# this bites us in particular on Solaris
-	sed -i -e '1c\#!/usr/bin/env sh' build/transform_libtool_scripts.sh || \
-		die "/bin/sh is not POSIX shell!"
-
-	eautoconf
-	elibtoolize
-
-	sed -e 's/\(libsvn_swig_py\)-\(1\.la\)/\1-$(EPYTHON)-\2/g' \
-		-i build-outputs.mk || die "sed failed"
-
-	if use python ; then
-		# XXX: make python_copy_sources accept path
-		S=${S}/subversion/bindings/swig/python python_copy_sources
-		rm -r "${S}"/subversion/bindings/swig/python || die
-	fi
-
-	xdg_environment_reset
-}
-
-src_configure() {
-	local myconf=(
-		--libdir="${EPREFIX}/usr/$(get_libdir)"
-		$(use_with apache2 apache-libexecdir)
-		$(use_with apache2 apxs "${EPREFIX}"/usr/bin/apxs)
-		$(use_with berkdb berkeley-db "db.h:${EPREFIX}/usr/include/db${SVN_BDB_VERSION}::db-${SVN_BDB_VERSION}")
-		$(use_with ctypes-python ctypesgen "${EPREFIX}/usr")
-		$(use_enable dso runtime-module-search)
-		$(use_with gnome-keyring)
-		$(use_enable java javahl)
-		$(use_with java jdk "${JAVA_HOME}")
-		$(use_with kwallet)
-		$(use_enable nls)
-		$(use_with sasl)
-		$(use_with http serf)
-		--with-apr="${EPREFIX}/usr/bin/apr-1-config"
-		--with-apr-util="${EPREFIX}/usr/bin/apu-1-config"
-		--disable-experimental-libtool
-		--without-jikes
-		--disable-mod-activation
-		--disable-static
-		--enable-svnxx
-	)
-
-	if use python || use perl || use ruby; then
-		myconf+=( --with-swig )
-	else
-		myconf+=( --without-swig )
-	fi
-
-	if use java ; then
-		myconf+=( --without-junit )
-	fi
-
-	case ${CHOST} in
-		*-aix*)
-			# avoid recording immediate path to sharedlibs into executables
-			append-ldflags -Wl,-bnoipath
-		;;
-		*-cygwin*)
-			# no LD_PRELOAD support, no undefined symbols
-			myconf+=( --disable-local-library-preloading LT_LDFLAGS=-no-undefined )
-			;;
-		*-interix*)
-			# loader crashes on the LD_PRELOADs...
-			myconf+=( --disable-local-library-preloading )
-		;;
-		*-solaris*)
-			# need -lintl to link
-			use nls && append-libs intl
-			# this breaks installation, on x64 echo replacement is 32-bits
-			myconf+=( --disable-local-library-preloading )
-		;;
-		*-mint*)
-			myconf+=( --enable-all-static --disable-local-library-preloading )
-		;;
-		*)
-			# inject LD_PRELOAD entries for easy in-tree development
-			myconf+=( --enable-local-library-preloading )
-		;;
-	esac
-
-	#version 1.7.7 again tries to link against the older installed version and fails, when trying to
-	#compile for x86 on amd64, so workaround this issue again
-	#check newer versions, if this is still/again needed
-	#myconf+=( --disable-disallowing-of-undefined-references )
-
-	# for build-time scripts
-	if use ctypes-python || use python || use test; then
-		python_setup
-	fi
-
-	if use python && [[ ${CHOST} == *-darwin* ]] ; then
-		export ac_cv_python_link="$(tc-getCC) "'$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)'
-		export ac_cv_python_libs='$(PYTHON_CFLAGS) -bundle -undefined dynamic_lookup $(PYTHON_LIBS)'
-		export ac_cv_python_compile="$(tc-getCC)"
-	fi
-
-	# allow overriding Python include directory
-	ac_cv_path_RUBY=$(usex ruby "${EPREFIX}/usr/bin/ruby${RB_VER}" "none") \
-	ac_cv_path_RDOC=$(usex ruby "${EPREFIX}/usr/bin/rdoc${RB_VER}" "none") \
-	ac_cv_python_includes='-I$(PYTHON_INCLUDEDIR)' \
-	econf "${myconf[@]}"
-}
-
-src_compile() {
-	emake local-all
-
-	if use ctypes-python ; then
-		# pre-generate .py files
-		use ctypes-python && emake ctypes-python
-
-		pushd subversion/bindings/ctypes-python >/dev/null || die
-		distutils-r1_src_compile
-		popd >/dev/null || die
-	fi
-
-	if use python ; then
-		swig_py_compile() {
-			local p=subversion/bindings/swig/python
-			rm -f ${p} || die
-			ln -s "${BUILD_DIR}" ${p} || die
-
-			python_export PYTHON_INCLUDEDIR
-			emake swig-py \
-				swig_pydir="$(python_get_sitedir)/libsvn" \
-				swig_pydir_extra="$(python_get_sitedir)/svn"
-		}
-
-		# this will give us proper BUILD_DIR for symlinking
-		BUILD_DIR=python \
-		python_foreach_impl swig_py_compile
-	fi
-
-	if use perl ; then
-		emake swig-pl
-	fi
-
-	if use ruby ; then
-		emake swig-rb
-	fi
-
-	if use java ; then
-		emake -j1 JAVAC_FLAGS="$(java-pkg_javac-args) -encoding iso8859-1" javahl
-	fi
-
-	if use extras ; then
-		emake tools
-	fi
-
-	if use doc ; then
-		doxygen doc/doxygen.conf || die "Building of Subversion HTML documentation failed"
-
-		if use java; then
-			emake doc-javahl
-		fi
-	fi
-}
-
-src_test() {
-	if has_version ~${CATEGORY}/${P} ; then
-		default
-
-		if use ctypes-python ; then
-			python_test() {
-				"${PYTHON}" subversion/bindings/ctypes-python/test/run_all.py \
-					|| die "ctypes-python tests fail with ${EPYTHON}"
-			}
-
-			distutils-r1_src_test
-		fi
-
-		if use python ; then
-			swig_py_test() {
-				pushd "${BUILD_DIR}" >/dev/null || die
-				"${PYTHON}" tests/run_all.py || die "swig-py tests fail with ${EPYTHON}"
-				popd >/dev/null || die
-			}
-
-			BUILD_DIR=subversion/bindings/swig/python \
-			python_foreach_impl swig_py_test
-		fi
-	else
-		ewarn "The test suite shows errors when there is an older version of"
-		ewarn "${CATEGORY}/${PN} installed. Please install =${CATEGORY}/${P}*"
-		ewarn "before running the test suite."
-		ewarn "Test suite skipped."
-	fi
-}
-
-src_install() {
-	emake -j1 DESTDIR="${D}" local-install
-
-	if use ctypes-python ; then
-		pushd subversion/bindings/ctypes-python >/dev/null || die
-		distutils-r1_src_install
-		popd >/dev/null || die
-	fi
-
-	if use python ; then
-		swig_py_install() {
-			local p=subversion/bindings/swig/python
-			rm -f ${p} || die
-			ln -s "${BUILD_DIR}" ${p} || die
-
-			emake \
-				DESTDIR="${D}" \
-				swig_pydir="$(python_get_sitedir)/libsvn" \
-				swig_pydir_extra="$(python_get_sitedir)/svn" \
-				install-swig-py
-		}
-
-		BUILD_DIR=python \
-		python_foreach_impl swig_py_install
-	fi
-
-	if use perl ; then
-		emake DESTDIR="${D}" INSTALLDIRS="vendor" install-swig-pl
-		perl_delete_localpod
-		find "${ED}" \( -name .packlist -o -name "*.bs" \) -delete || die
-	fi
-
-	if use ruby ; then
-		emake DESTDIR="${D}" install-swig-rb
-	fi
-
-	if use java ; then
-		emake DESTDIR="${D}" install-javahl
-		java-pkg_regso "${ED%/}"/usr/$(get_libdir)/libsvnjavahl*$(get_libname)
-		java-pkg_dojar "${ED%/}"/usr/$(get_libdir)/svn-javahl/svn-javahl.jar
-		rm -fr "${ED%/}"/usr/$(get_libdir)/svn-javahl/*.jar
-	fi
-
-	# Install Apache module configuration.
-	if use apache2 ; then
-		keepdir "${APACHE_MODULES_CONFDIR}"
-		insinto "${APACHE_MODULES_CONFDIR}"
-		doins "${FILESDIR}/47_mod_dav_svn.conf"
-	fi
-
-	# Install Bash Completion, bug 43179.
-	newbashcomp tools/client-side/bash_completion svn
-	bashcomp_alias svn svn{admin,dumpfilter,look,sync,version}
-	rm -f tools/client-side/bash_completion
-
-	# Install hot backup script, bug 54304.
-	newbin tools/backup/hot-backup.py svn-hot-backup
-	rm -fr tools/backup
-
-	# Install svnserve init-script and xinet.d snippet, bug 43245.
-	newinitd "${FILESDIR}"/svnserve.initd3 svnserve
-	newconfd "${FILESDIR}"/svnserve.confd svnserve
-	insinto /etc/xinetd.d
-	newins "${FILESDIR}"/svnserve.xinetd svnserve
-
-	#adjust default user and group with disabled apache2 USE flag, bug 381385
-	if ! use apache2 ; then
-		sed -e "s\USER:-apache\USER:-svn\g" \
-			-e "s\GROUP:-apache\GROUP:-svnusers\g" \
-			-i "${ED%/}"/etc/init.d/svnserve || die
-		sed -e "0,/apache/s//svn/" \
-			-e "s:apache:svnusers:" \
-			-i "${ED%/}"/etc/xinetd.d/svnserve || die
-	fi
-
-	# Install documentation.
-	dodoc CHANGES COMMITTERS README
-	dodoc tools/xslt/svnindex.{css,xsl}
-	rm -fr tools/xslt
-
-	# Install extra files.
-	if use extras ; then
-		cat <<- EOF > 80subversion-extras
-			PATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin"
-			ROOTPATH="${EPREFIX}/usr/$(get_libdir)/subversion/bin"
-		EOF
-		doenvd 80subversion-extras
-
-		emake DESTDIR="${D}" toolsdir="/usr/$(get_libdir)/subversion/bin" install-tools
-
-		find tools \( -name "*.bat" -o -name "*.in" -o -name ".libs" \) -print0 | xargs -0 rm -fr
-		rm -fr tools/client-side/svnmucc
-		rm -fr tools/server-side/{svn-populate-node-origins-index,svnauthz-validate}*
-		rm -fr tools/{buildbot,dev,diff,po}
-
-		insinto /usr/share/${PN}
-		find tools -name '*.py' -exec sed -i -e '1s:python:&2:' {} + || die
-		doins -r tools
-	fi
-
-	if use doc ; then
-		docinto html
-		dodoc -r doc/doxygen/html/*
-
-		if use java ; then
-			java-pkg_dojavadoc doc/javadoc
-		fi
-	fi
-
-	prune_libtool_files --all
-
-	cd "${ED%/}"/usr/share/locale
-	for i in * ; do
-		if [[ ${i} != *${LINGUAS}* ]] ; then
-			rm -r ${i} || die
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Compare versions of Berkeley DB, bug 122877.
-	if use berkdb && [[ -f "${EROOT}/usr/bin/svn" ]] ; then
-		OLD_BDB_VERSION="$(scanelf -nq "${EROOT}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")"
-		NEW_BDB_VERSION="$(scanelf -nq "${ED%/}/usr/$(get_libdir)/libsvn_subr-1$(get_libname 0)" | grep -Eo "libdb-[[:digit:]]+\.[[:digit:]]+" | sed -e "s/libdb-\(.*\)/\1/")"
-		if [[ "${OLD_BDB_VERSION}" != "${NEW_BDB_VERSION}" ]] ; then
-			CHANGED_BDB_VERSION="1"
-		fi
-	fi
-}
-
-pkg_postinst() {
-	if [[ -n "${CHANGED_BDB_VERSION}" ]] ; then
-		ewarn "You upgraded from an older version of Berkeley DB and may experience"
-		ewarn "problems with your repository. Run the following commands as root to fix it:"
-		ewarn "    db4_recover -h ${SVN_REPOS_LOC}/repos"
-		ewarn "    chown -Rf apache:apache ${SVN_REPOS_LOC}/repos"
-	fi
-
-	ewarn "If you run subversion as a daemon, you will need to restart it to avoid module mismatches."
-}
-
-pkg_postrm() {
-	:
-}
-
-pkg_config() {
-	# Remember: Don't use ${EROOT}${SVN_REPOS_LOC} since ${SVN_REPOS_LOC}
-	# already has EPREFIX in it
-	einfo "Initializing the database in ${SVN_REPOS_LOC}..."
-	if [[ -e "${SVN_REPOS_LOC}/repos" ]] ; then
-		echo "A Subversion repository already exists and I will not overwrite it."
-		echo "Delete \"${SVN_REPOS_LOC}/repos\" first if you're sure you want to have a clean version."
-	else
-		mkdir -p "${SVN_REPOS_LOC}/conf"
-
-		einfo "Populating repository directory..."
-		# Create initial repository.
-		"${EROOT}/usr/bin/svnadmin" create "${SVN_REPOS_LOC}/repos"
-
-		einfo "Setting repository permissions..."
-		SVNSERVE_USER="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_USER}")"
-		SVNSERVE_GROUP="$(. "${EROOT}/etc/conf.d/svnserve"; echo "${SVNSERVE_GROUP}")"
-		if use apache2 ; then
-			[[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="apache"
-			[[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="apache"
-		else
-			[[ -z "${SVNSERVE_USER}" ]] && SVNSERVE_USER="svn"
-			[[ -z "${SVNSERVE_GROUP}" ]] && SVNSERVE_GROUP="svnusers"
-		fi
-		chmod -Rf go-rwx "${SVN_REPOS_LOC}/conf"
-		chmod -Rf o-rwx "${SVN_REPOS_LOC}/repos"
-		echo "Please create \"${SVNSERVE_GROUP}\" group if it does not exist yet."
-		echo "Afterwards please create \"${SVNSERVE_USER}\" user with homedir \"${SVN_REPOS_LOC}\""
-		echo "and as part of the \"${SVNSERVE_GROUP}\" group if it does not exist yet."
-		echo "Finally, execute \"chown -Rf ${SVNSERVE_USER}:${SVNSERVE_GROUP} ${SVN_REPOS_LOC}/repos\""
-		echo "to finish the configuration."
-	fi
-}
diff --git a/dev-vcs/svn2git/Manifest b/dev-vcs/svn2git/Manifest
index 7b965cd93ab9..05ab8e9662b5 100644
--- a/dev-vcs/svn2git/Manifest
+++ b/dev-vcs/svn2git/Manifest
@@ -6,11 +6,13 @@ DIST svn2git-1.0.12.tar.gz 43591 BLAKE2B b771c85c664e5721a345fa3437262ca80bf97b1
 DIST svn2git-1.0.13.tar.gz 43738 BLAKE2B 97e9b90402d3c7eedf0fafd3b68429c99d93522dcfe190f88e64b744cb86e5fec0bdd0fabfef39018e290a425a53a2089df88250ff03e447f2963e2ad99fa0e0 SHA512 7cc9a9d70da285533f7f34672fb8f6571cb031d2dd4fc9df904b9e3acf64d97f42027a19bed82478c75a237febf3c8e12ba27a1abcd98403fe24247e5a26a96a
 DIST svn2git-1.0.16.tar.gz 44489 BLAKE2B 0be673592a6032b0f46f7ab80e50862e6979a6540d17eadb2c0e4c3f40737283fb17cc51340810bbfc17dba7ee258537d5618de95da3843851e20ae843a47626 SHA512 11289c98fcae98ec2137b778c064e73f47957c987a8d413946a8cde44d679565eae878e69e3a60b5c48c0753dd4935d001eb6ba28253cea995ee4fd40379b583
 DIST svn2git-1.0.17.tar.gz 46473 BLAKE2B ab862a310f8d21b33d49f5152df458fb1524abe2e353e6395d7b20d80ee3967338ca04ff5e282623937ca13b38e9018ba81d4c3e89f3c69e1002bff7ddd8621a SHA512 6d02ffa0923bcc80878c08e5a4f2f00476485e34d1c7361ddfa8bdfd521c0d36a22b46e7cd872e617ecd604f2d724166ea95008338bba41ee7e1200dc919baf4
+DIST svn2git-1.0.18.tar.gz 53514 BLAKE2B 1e40318e484df4eee9ab3586b73cc6a7d9599f8f04e31531e2591dc0bb6f84190d35fb6b9128dd512bab59648e838f479fd81894f97cfce7af4365e0932b26e4 SHA512 ff851a5c3a225c8b6efa9fbf90bd72439bc1303f8138384c2bac779d6cfe52c77125ec3b80b320205e08bbee9910c5203a95c112909c3336750938d2271c2517
 EBUILD svn2git-1.0.11-r1.ebuild 1164 BLAKE2B c838d41cf17d0241e5b1e229263d26e4015b1d76c768c3feffd41521a28752064eab6e2abb47a563777d691e0bf49e3e50458f4a9fa9d23e95f92257924eb11f SHA512 8e81668615ab102e02391130f22696c8c3bbc1ab7f13103691a35440556f62f400019e0922e9230c97e35f9f9875ee7de42f757427d2f7997d2b1ec1dc1b73f4
 EBUILD svn2git-1.0.12.ebuild 1037 BLAKE2B d9796902d0aa1bd12ac44097ca10fb0c3ece022b193dc60f292fae59b8df1a5fa4d4df0742471dc5ba898b584e6b13757c336e740b99c9746fb756e5e66edb71 SHA512 e02aedb85806701cfebc8f28369bf27433b798c44ac9bafb3730cf4b914fc877fc4134a27e69e7ebbcaf047bde6f9bf14b5854613f1da340342009e46a87dd9d
 EBUILD svn2git-1.0.13-r1.ebuild 1081 BLAKE2B 04d13c0be9aecd14e3b2ea52af46e00de2792a140319545bea39bfdbc9515eb411c67fd9383a8674bea5a22611f1cb29a99ad44f28300ec27addfdd859d0317e SHA512 0745ce05c437203dbe4913dac9e238b741ee69a57459ed82265971e464c0eebbff16f635865b0d23d0ca303bc90b980122b8e3966011d5b250b21d1cc02ed756
 EBUILD svn2git-1.0.13.ebuild 1037 BLAKE2B d9796902d0aa1bd12ac44097ca10fb0c3ece022b193dc60f292fae59b8df1a5fa4d4df0742471dc5ba898b584e6b13757c336e740b99c9746fb756e5e66edb71 SHA512 e02aedb85806701cfebc8f28369bf27433b798c44ac9bafb3730cf4b914fc877fc4134a27e69e7ebbcaf047bde6f9bf14b5854613f1da340342009e46a87dd9d
 EBUILD svn2git-1.0.16.ebuild 1034 BLAKE2B ddbb36477b2dbd88f52598c46dfe6c357a3ee03f17ba668897a11cdf1da6b2d11bbaa160526b7ece14437883ba7583a596f3f9c66f5fdf65c693d76427a7b8b7 SHA512 61d9606dc51ba6efd15b615d6573a357a73b84c01303c6b561b6f3f09aed6db4e9698231b86622913a97118b8a85c36df71b238ee5a2bb0390475c13c7c68d1e
 EBUILD svn2git-1.0.17.ebuild 1034 BLAKE2B bf4bc2dd9ccd89a21f5161275c5d4b6536c3824cb0f4f8218b0603ee24f01d2d0d87f63aac37bd47b6f673946d688aff9e6888aa6f51c333db683567cab49b03 SHA512 f0993c376ae1c3949cc00a51d09112eca009230d8a671dd37cc30b385a474f19d3ac135a3f3b22f1e789d5498f6ebbaafa19d169a3df32e295f67c31cdf2f230
+EBUILD svn2git-1.0.18.ebuild 1034 BLAKE2B bf4bc2dd9ccd89a21f5161275c5d4b6536c3824cb0f4f8218b0603ee24f01d2d0d87f63aac37bd47b6f673946d688aff9e6888aa6f51c333db683567cab49b03 SHA512 f0993c376ae1c3949cc00a51d09112eca009230d8a671dd37cc30b385a474f19d3ac135a3f3b22f1e789d5498f6ebbaafa19d169a3df32e295f67c31cdf2f230
 EBUILD svn2git-9999.ebuild 1021 BLAKE2B a503c85adb6f2b39ac0483dd3f7032b45a181b6b8306c390c76857138630864a28da68f18f9075183ad098217a7a8c888fe60ad4dd1df86918dd5790fdd9b667 SHA512 9fd102538666531b4f689f9eac4ad4ca0dcc7abf4d20692b1ab0abd0b47ff941060c03afc733e09f994618ca5478cc6d662b7324c74e9be0662b6e9c1619f9ab
 MISC metadata.xml 341 BLAKE2B a717046fb841b51b7e24fec4206379614a66d18aa60f8665e81f914beb100931418a37a2ed242ab7f48e9ed65affa0468f20192ab1d3661547d5db6d00dfbc23 SHA512 9026002122daf2c35d3c407ca605e353c8b6b39514572207bf3642ad98b8265965e2b56244ebfa1f864670426e98dbe21fec948e17cf97fdafce8bafb27bf590
diff --git a/dev-vcs/svn2git/svn2git-1.0.18.ebuild b/dev-vcs/svn2git/svn2git-1.0.18.ebuild
new file mode 100644
index 000000000000..7b8fb13d3724
--- /dev/null
+++ b/dev-vcs/svn2git/svn2git-1.0.18.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop qmake-utils
+[[ "${PV}" == "9999" ]] && inherit git-r3
+
+DESCRIPTION="Tool for one-time conversion from svn to git"
+HOMEPAGE="https://github.com/svn-all-fast-export/svn2git"
+if [[ "${PV}" == "9999" ]]; then
+	EGIT_REPO_URI="https://github.com/svn-all-fast-export/svn2git.git"
+else
+	SRC_URI="https://github.com/svn-all-fast-export/svn2git/archive/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE=""
+# KEYWORDS way up
+
+DEPEND="
+	dev-qt/qtcore:5
+	dev-vcs/subversion"
+RDEPEND="${DEPEND}
+	dev-vcs/git"
+
+DOCS=( README.md )
+
+src_configure() {
+	local qmake_args=(
+		APR_INCLUDE=/usr/include/apr-1
+		PREFIX=/usr
+		SVN_INCLUDE=/usr/include/subversion-1
+		VERSION=${PV}
+	)
+	eqmake5 "${qmake_args[@]}" fast-export2.pro
+}
+
+src_install() {
+	einstalldocs
+	insinto /usr/share/${PN}/samples
+	doins samples/*.rules
+	dobin svn-all-fast-export
+	dosym svn-all-fast-export /usr/bin/svn2git
+}
diff --git a/dev-vcs/tortoisehg/Manifest b/dev-vcs/tortoisehg/Manifest
index 4edb82baf407..512b7f83db15 100644
--- a/dev-vcs/tortoisehg/Manifest
+++ b/dev-vcs/tortoisehg/Manifest
@@ -1,8 +1,4 @@
-DIST tortoisehg-4.9.1.tar.gz 7960667 BLAKE2B f8a6ed65967c6389b65fd9388b3e898bf4ce09e7f95dd88467a10c061b9454eab76d0308905fd417575bf6d75dd7129a2f303bc774fd8e68824b33c18fd8054c SHA512 aef1b0d6047114794bfe78de2c0def83748e238917ce44fb56d562d53c26666dbb385867da70c4625893b148e2affa3766e40292348b78aff428df5a77d8f902
-DIST tortoisehg-4.9.tar.gz 7960163 BLAKE2B bc13032ba1e36ed3e6aca978cb3917b2e5fdcf1b7dab2e66a34a0aca2e084960954f9ec135a1c2120e09931b876db7d1f3d0f3a8f69f950ff939eea9d7814523 SHA512 cc7b0360c6b362b0b9695a484b59eea879e1d4e28ed68e98ce6975342a22ddafc97976c5b0cdea289bfd78932dacf76c0b236e36bec48acd48ee361f2c09ff13
-DIST tortoisehg-5.0.2.tar.gz 8002109 BLAKE2B 3ac66a0b0f943bccc1e9d38f6fb1a788de0e5b538fdf42d59da26de641913802116a73039a2c3516245c1b6abe325b0dd9ca5b2f1c2b60e2dcc6a600e5f1fb97 SHA512 d33916cf3215360cada06de62db46e70c555b1f4cd509f0b863e2baa633e2c5df99f09f3a103444c30aa0a6e15e2acd7134f045cb3846cccc7b727482d94e650
-EBUILD tortoisehg-4.9.1.ebuild 1969 BLAKE2B ff541757572e30cdc72fb69da7d62b7dd78d28db6e92e48ecd7b6b04176c71d521c4e42aff55834e9fa1d677b5994a5fe0be95647870975050cb7ed8ca7aa327 SHA512 d487200fbcbe84396376ad775fe3461c0096bb0734649e3230c86dd0b0b628ee5f2286f6415431628811e5e695387238d53dcde369d0bfd25a52b66ceb7ae26a
-EBUILD tortoisehg-4.9.ebuild 1967 BLAKE2B d8a4af0e86d7d09603e53c07d6b6afa637132bd0ca42bacf206215cbd3f0f89719a0adb718a21e0a26ac9a0c5727c101f88c7fb556e180053e4479d598377800 SHA512 aeaed90010a9b8ebc579a742e763b2e6740a4974796443db7111a0e2d4a3e447002b0a2d1dd9c5602f7f3d59bb6460e02e8a3175be7ef6dbc54e74437210151e
-EBUILD tortoisehg-5.0.2.ebuild 1968 BLAKE2B e0c39b086c76f073d6d968e5158d0e764974614f10af902fdacfc8ccd811e809029009ee58c4b2d332540e58aaec341c741b6e7db1c1ad9cdf9eba91512599eb SHA512 1a65dafa51246db60e167aa5a758937ac19925b66970c31efc56dfe816d0b7a7e5b563139887ab6e27691978d00f622fb56d640ebe7c50642f39852beebb7ebb
-EBUILD tortoisehg-9999.ebuild 1968 BLAKE2B ecd39018aac1e90b9b1811d77f6f61c13c6497095913d78386d5df43c7f06775eec96cdb3173740f8ad03fbe65c2a8053472b34b6de381bf667ee1df6fee02c7 SHA512 55c5e57b0f72a2487395b60252b7722b15fc9d79f663d262bf91ebc5d20590b67f3a3242c6e4dcb0e8af99a3d510b1759a0b71dfdc6a744756eb50467fc12f84
-MISC metadata.xml 167 BLAKE2B e4dadf27fd344484f2bccb5b904909c89aac568c32e5b3c44bdf139eacefd4b4fae74419f503d2b7da0dccc1b68ba05d777d11292c0f89270d1ac5c9c703e8ca SHA512 7c8decb24ee3a850e38186cf3c7f8933a28017426806870ad6ef9ceb2533be147a2681fc789b535a81cb528af8c29d90d3006e4f250aee23bd7dea4561294e33
+DIST tortoisehg-5.3.2.tar.gz 8910859 BLAKE2B 4cc2253f0adbd79fe84507043491198ddd9fa559c3e9296c831b8e0fccd6cb2806a31ffd6d417591f5fcb3afce78e696f7052d70b760a566bf72c6602ca31ea8 SHA512 b15894158a0d5e628015d07b4f8c77c96f3e1d7543fe2984693b99b2acfa411922b06683e62de437cb50dd5817155d4e59045d7fb47c9be8ee27b9bccf77da7e
+EBUILD tortoisehg-5.3.2.ebuild 1506 BLAKE2B 7ee7236d6237e664131219cc5aadc3cab5d2085fc8d113a5139b28053d870d8dec3c193e7d308d71e1fc65f814811cbd4ea6277befa60bd1a097c663918bb1e7 SHA512 05df1967214d5f238efec09cbdd5dc36f20ccfee018b179a7ef3eb2b44aedd24f1813f3b1b62a53cd8a7efa1af0be6386f62d6bb4ba67d4b67f3b323fd2eba6d
+EBUILD tortoisehg-9999.ebuild 1544 BLAKE2B 2f31a2367a6b87d29c7830b9841a3af8db0b0278d11d13ec5dbf814f9baebb25b0eb35d42f79f54d2b2a755e2f2d20d54b3deb52472e388069d081eb12fd1074 SHA512 ab1dc02cbfa9b3eda70c7e5582e70f5ec864ee8c89f37c65ced12a2b79ae71881fec7142877c642fa52f428da8691a0e3de91a4a89123a2c9bcad3956339dfa8
+MISC metadata.xml 689 BLAKE2B 79a83a2f3450d6a5546baf729e3b99b9fb9083d2b3baeaad7cba52937c8d6fe313ed84030be682cd783b9ee7bfcd0ba220e17d2a0e7cfc033396b17f284d5aa8 SHA512 7ff6f7e188b9acdef943a8e35a7940fe5d97df15567ff7a76f7babfde51e8d1e480c1287097a5e0b547b7f372f920f402c86c63310e128679c11f4bacd29f0ee
diff --git a/dev-vcs/tortoisehg/metadata.xml b/dev-vcs/tortoisehg/metadata.xml
index 7a38bb900964..1a94ad71ce80 100644
--- a/dev-vcs/tortoisehg/metadata.xml
+++ b/dev-vcs/tortoisehg/metadata.xml
@@ -1,5 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
 <pkgmetadata>
-	<!-- maintainer-needed -->
+	<maintainer type="person">
+		<email>denis7774@gmail.com</email>
+		<name>Reva Denis aka RarogCmex</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>proxy-maint@gentoo.org</email>
+		<name>Proxy Maintainers</name>
+	</maintainer>
+	<longdescription>TortoiseHg is a Windows shell extension and a series of 
+			applications for the Mercurial distributed revision control system. 
+			It also includes a Gnome/Nautilus extension and a CLI wrapper
+			application so the TortoiseHg tools 
+			can be used on non-Windows platforms.
+	</longdescription>
 </pkgmetadata>
diff --git a/dev-vcs/tortoisehg/tortoisehg-4.9.1.ebuild b/dev-vcs/tortoisehg/tortoisehg-4.9.1.ebuild
deleted file mode 100644
index ff68d5cb0046..000000000000
--- a/dev-vcs/tortoisehg/tortoisehg-4.9.1.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-inherit desktop distutils-r1
-
-if [[ ${PV} != *9999* ]]; then
-	KEYWORDS="~amd64 ~x86"
-	SRC_URI="https://www.bitbucket.org/${PN}/targz/downloads/${P}.tar.gz"
-	HG_DEPEND=">=dev-vcs/mercurial-4.8 <dev-vcs/mercurial-4.10"
-else
-	inherit mercurial
-	EHG_REPO_URI="https://bitbucket.org/tortoisehg/thg"
-	EHG_REVISION="stable"
-	HG_DEPEND="dev-vcs/mercurial"
-fi
-
-DESCRIPTION="Set of graphical tools for Mercurial"
-HOMEPAGE="https://tortoisehg.bitbucket.io/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="doc"
-
-RDEPEND="${HG_DEPEND}
-	dev-python/iniparse[${PYTHON_USEDEP}]
-	dev-python/pygments[${PYTHON_USEDEP}]
-	dev-python/PyQt5[network,svg,${PYTHON_USEDEP}]
-	>=dev-python/qscintilla-python-2.9.4:=[qt5(+),${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? ( >=dev-python/sphinx-1.0.3 )"
-
-# Workaround race condition in build_qt
-DISTUTILS_IN_SOURCE_BUILD=1
-
-python_prepare_all() {
-	if [[ ${L10N+set} ]]; then
-		cd i18n/tortoisehg || die
-		local x y keep
-		for x in *.po; do
-			keep=false
-			for y in ${L10N}; do
-				if [[ ${y} == ${x%.po}* ]]; then
-					keep=true
-					break
-				fi
-			done
-			${keep} || rm "${x}" || die
-		done
-		cd "${S}" || die
-	fi
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	use doc && emake -C doc html
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-	dodoc doc/ReadMe*.txt doc/TODO contrib/mergetools.rc
-	if use doc ; then
-		docinto html
-		dodoc -r doc/build/html/.
-	fi
-	newicon -s scalable icons/scalable/apps/thg.svg thg_logo.svg
-	domenu contrib/thg.desktop
-
-	# Remove file that collides with >=mercurial-4.0 (bug #599266).
-	rm "${ED}"/usr/$(get_libdir)/${EPYTHON}/site-packages/hgext3rd/__init__.py* \
-		|| die
-}
-
-pkg_postinst() {
-	elog "When startup of ${PN} fails with an API version mismatch error"
-	elog "between dev-python/sip and dev-python/PyQt5 please rebuild"
-	elog "dev-python/qscintilla-python."
-}
diff --git a/dev-vcs/tortoisehg/tortoisehg-4.9.ebuild b/dev-vcs/tortoisehg/tortoisehg-4.9.ebuild
deleted file mode 100644
index 6407cbc54664..000000000000
--- a/dev-vcs/tortoisehg/tortoisehg-4.9.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-inherit desktop distutils-r1
-
-if [[ ${PV} != *9999* ]]; then
-	KEYWORDS="amd64 x86"
-	SRC_URI="https://www.bitbucket.org/${PN}/targz/downloads/${P}.tar.gz"
-	HG_DEPEND=">=dev-vcs/mercurial-4.8 <dev-vcs/mercurial-4.10"
-else
-	inherit mercurial
-	EHG_REPO_URI="https://bitbucket.org/tortoisehg/thg"
-	EHG_REVISION="stable"
-	HG_DEPEND="dev-vcs/mercurial"
-fi
-
-DESCRIPTION="Set of graphical tools for Mercurial"
-HOMEPAGE="https://tortoisehg.bitbucket.io/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="doc"
-
-RDEPEND="${HG_DEPEND}
-	dev-python/iniparse[${PYTHON_USEDEP}]
-	dev-python/pygments[${PYTHON_USEDEP}]
-	dev-python/PyQt5[network,svg,${PYTHON_USEDEP}]
-	>=dev-python/qscintilla-python-2.9.4:=[qt5(+),${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? ( >=dev-python/sphinx-1.0.3 )"
-
-# Workaround race condition in build_qt
-DISTUTILS_IN_SOURCE_BUILD=1
-
-python_prepare_all() {
-	if [[ ${L10N+set} ]]; then
-		cd i18n/tortoisehg || die
-		local x y keep
-		for x in *.po; do
-			keep=false
-			for y in ${L10N}; do
-				if [[ ${y} == ${x%.po}* ]]; then
-					keep=true
-					break
-				fi
-			done
-			${keep} || rm "${x}" || die
-		done
-		cd "${S}" || die
-	fi
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	use doc && emake -C doc html
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-	dodoc doc/ReadMe*.txt doc/TODO contrib/mergetools.rc
-	if use doc ; then
-		docinto html
-		dodoc -r doc/build/html/.
-	fi
-	newicon -s scalable icons/scalable/apps/thg.svg thg_logo.svg
-	domenu contrib/thg.desktop
-
-	# Remove file that collides with >=mercurial-4.0 (bug #599266).
-	rm "${ED}"/usr/$(get_libdir)/${EPYTHON}/site-packages/hgext3rd/__init__.py* \
-		|| die
-}
-
-pkg_postinst() {
-	elog "When startup of ${PN} fails with an API version mismatch error"
-	elog "between dev-python/sip and dev-python/PyQt5 please rebuild"
-	elog "dev-python/qscintilla-python."
-}
diff --git a/dev-vcs/tortoisehg/tortoisehg-5.0.2.ebuild b/dev-vcs/tortoisehg/tortoisehg-5.0.2.ebuild
deleted file mode 100644
index 869a5571f9ff..000000000000
--- a/dev-vcs/tortoisehg/tortoisehg-5.0.2.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-inherit desktop distutils-r1
-
-if [[ ${PV} != *9999* ]]; then
-	KEYWORDS="~amd64 ~x86"
-	SRC_URI="https://www.bitbucket.org/${PN}/targz/downloads/${P}.tar.gz"
-	HG_DEPEND=">=dev-vcs/mercurial-5.0 <dev-vcs/mercurial-5.1"
-else
-	inherit mercurial
-	EHG_REPO_URI="https://bitbucket.org/tortoisehg/thg"
-	EHG_REVISION="stable"
-	HG_DEPEND="dev-vcs/mercurial"
-fi
-
-DESCRIPTION="Set of graphical tools for Mercurial"
-HOMEPAGE="https://tortoisehg.bitbucket.io/"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="doc"
-
-RDEPEND="${HG_DEPEND}
-	dev-python/iniparse[${PYTHON_USEDEP}]
-	dev-python/pygments[${PYTHON_USEDEP}]
-	dev-python/PyQt5[network,svg,${PYTHON_USEDEP}]
-	>=dev-python/qscintilla-python-2.9.4:=[qt5(+),${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? ( >=dev-python/sphinx-1.0.3 )"
-
-# Workaround race condition in build_qt
-DISTUTILS_IN_SOURCE_BUILD=1
-
-python_prepare_all() {
-	if [[ ${L10N+set} ]]; then
-		cd i18n/tortoisehg || die
-		local x y keep
-		for x in *.po; do
-			keep=false
-			for y in ${L10N}; do
-				if [[ ${y} == ${x%.po}* ]]; then
-					keep=true
-					break
-				fi
-			done
-			${keep} || rm "${x}" || die
-		done
-		cd "${S}" || die
-	fi
-	distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-	use doc && emake -C doc html
-}
-
-python_install_all() {
-	distutils-r1_python_install_all
-	dodoc doc/ReadMe*.txt doc/TODO contrib/mergetools.rc
-	if use doc ; then
-		docinto html
-		dodoc -r doc/build/html/.
-	fi
-	newicon -s scalable icons/scalable/apps/thg.svg thg_logo.svg
-	domenu contrib/thg.desktop
-
-	# Remove file that collides with >=mercurial-4.0 (bug #599266).
-	rm "${ED}"/usr/$(get_libdir)/${EPYTHON}/site-packages/hgext3rd/__init__.py* \
-		|| die
-}
-
-pkg_postinst() {
-	elog "When startup of ${PN} fails with an API version mismatch error"
-	elog "between dev-python/sip and dev-python/PyQt5 please rebuild"
-	elog "dev-python/qscintilla-python."
-}
diff --git a/dev-vcs/tortoisehg/tortoisehg-5.3.2.ebuild b/dev-vcs/tortoisehg/tortoisehg-5.3.2.ebuild
new file mode 100644
index 000000000000..757231a11582
--- /dev/null
+++ b/dev-vcs/tortoisehg/tortoisehg-5.3.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit desktop distutils-r1
+
+if [[ ${PV} != *9999* ]]; then
+	KEYWORDS="~amd64 ~arm64 ~x86"
+	SRC_URI="https://www.bitbucket.org/${PN}/targz/downloads/${P}.tar.gz"
+	HG_DEPEND=" >=dev-vcs/mercurial-5.3.1
+		<dev-vcs/mercurial-5.4"
+else
+	inherit mercurial
+	EHG_REPO_URI="https://bitbucket.org/tortoisehg/thg"
+	EHG_REVISION="stable"
+	HG_DEPEND="dev-vcs/mercurial"
+fi
+
+DESCRIPTION="Set of graphical tools for Mercurial"
+HOMEPAGE="https://tortoisehg.bitbucket.io/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="doc"
+
+distutils_enable_sphinx html
+
+RDEPEND="${HG_DEPEND}
+	dev-python/iniparse[${PYTHON_USEDEP}]
+	dev-python/pygments[${PYTHON_USEDEP}]
+	dev-python/PyQt5[network,svg,${PYTHON_USEDEP}]
+	>=dev-python/qscintilla-python-2.9.4:=[qt5(+),${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+python_prepare_all() {
+	# Remove file that collides with >=mercurial-4.0 (bug #599266).
+	rm "${S}"/hgext3rd/__init__.py || die "can't remove /hgext3rd/__init__.py"
+	distutils-r1_python_prepare_all
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+	dodoc doc/ReadMe*.txt doc/TODO contrib/mergetools.rc
+	newicon -s scalable icons/scalable/apps/thg.svg thg_logo.svg
+	domenu contrib/thg.desktop
+}
+
+pkg_postinst() {
+	elog "When startup of ${PN} fails with an API version mismatch error"
+	elog "between dev-python/sip and dev-python/PyQt5 please rebuild"
+	elog "dev-python/qscintilla-python."
+}
diff --git a/dev-vcs/tortoisehg/tortoisehg-9999.ebuild b/dev-vcs/tortoisehg/tortoisehg-9999.ebuild
index 18e015fc174f..6f0201707268 100644
--- a/dev-vcs/tortoisehg/tortoisehg-9999.ebuild
+++ b/dev-vcs/tortoisehg/tortoisehg-9999.ebuild
@@ -1,15 +1,16 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
-PYTHON_COMPAT=( python2_7 )
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8} )
 
-inherit distutils-r1 eutils
+inherit desktop distutils-r1
 
 if [[ ${PV} != *9999* ]]; then
-	KEYWORDS="~amd64 ~x86"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~sparc ~x86"
 	SRC_URI="https://www.bitbucket.org/${PN}/targz/downloads/${P}.tar.gz"
-	HG_DEPEND=">=dev-vcs/mercurial-4.4 <dev-vcs/mercurial-4.6"
+	HG_DEPEND=" >=dev-vcs/mercurial-5.3.1
+		<dev-vcs/mercurial-5.4"
 else
 	inherit mercurial
 	EHG_REPO_URI="https://bitbucket.org/tortoisehg/thg"
@@ -24,53 +25,26 @@ LICENSE="GPL-2"
 SLOT="0"
 IUSE="doc"
 
+distutils_enable_sphinx html
+
 RDEPEND="${HG_DEPEND}
 	dev-python/iniparse[${PYTHON_USEDEP}]
 	dev-python/pygments[${PYTHON_USEDEP}]
 	dev-python/PyQt5[network,svg,${PYTHON_USEDEP}]
 	>=dev-python/qscintilla-python-2.9.4:=[qt5(+),${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
-	doc? ( >=dev-python/sphinx-1.0.3 )"
-
-# Workaround race condition in build_qt
-DISTUTILS_IN_SOURCE_BUILD=1
+DEPEND="${RDEPEND}"
 
 python_prepare_all() {
-	if [[ ${L10N+set} ]]; then
-		cd i18n/tortoisehg || die
-		local x y keep
-		for x in *.po; do
-			keep=false
-			for y in ${L10N}; do
-				if [[ ${y} == ${x%.po}* ]]; then
-					keep=true
-					break
-				fi
-			done
-			${keep} || rm "${x}" || die
-		done
-		cd "${S}" || die
-	fi
+	# Remove file that collides with >=mercurial-4.0 (bug #599266).
+	rm "${S}"/hgext3rd/__init__.py || die "can't remove /hgext3rd/__init__.py"
 	distutils-r1_python_prepare_all
 }
 
-python_compile_all() {
-	use doc && emake -C doc html
-}
-
 python_install_all() {
 	distutils-r1_python_install_all
 	dodoc doc/ReadMe*.txt doc/TODO contrib/mergetools.rc
-	if use doc ; then
-		docinto html
-		dodoc -r doc/build/html/.
-	fi
 	newicon -s scalable icons/scalable/apps/thg.svg thg_logo.svg
 	domenu contrib/thg.desktop
-
-	# Remove file that collides with >=mercurial-4.0 (bug #599266).
-	rm "${ED%/}"/usr/$(get_libdir)/${EPYTHON}/site-packages/hgext3rd/__init__.py \
-		|| die
 }
 
 pkg_postinst() {
-- 
cgit v1.2.3