summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-portage/layman
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-portage/layman')
-rw-r--r--app-portage/layman/Manifest4
-rw-r--r--app-portage/layman/files/layman-2.0.0.doctest.patch20
-rw-r--r--app-portage/layman/files/layman-2.0.0.svn_upgrade.patch58
-rw-r--r--app-portage/layman/files/layman-2.1.0-incorrect-import-make-conf-fix.patch29
-rw-r--r--app-portage/layman/files/layman-2.1.0-local_overlay.patch27
-rw-r--r--app-portage/layman/files/layman-2.2.0-adds-kwargs-debug.patch28
-rw-r--r--app-portage/layman/files/layman-2.2.0-change-for-upstream-ssl-fetch.patch38
-rw-r--r--app-portage/layman/files/layman-2.2.0-removes-doctest-remnants.patch208
-rw-r--r--app-portage/layman/layman-2.0.0-r1.ebuild69
-rw-r--r--app-portage/layman/layman-2.0.0-r3.ebuild70
-rw-r--r--app-portage/layman/layman-2.1.0-r3.ebuild72
-rw-r--r--app-portage/layman/layman-2.2.0-r7.ebuild89
-rw-r--r--app-portage/layman/layman-2.3.0.ebuild92
-rw-r--r--app-portage/layman/layman-9999.ebuild95
-rw-r--r--app-portage/layman/metadata.xml25
15 files changed, 924 insertions, 0 deletions
diff --git a/app-portage/layman/Manifest b/app-portage/layman/Manifest
new file mode 100644
index 000000000000..6e914628f30f
--- /dev/null
+++ b/app-portage/layman/Manifest
@@ -0,0 +1,4 @@
+DIST layman-2.0.0.tar.gz 81184 SHA256 5843035ae4cc069693c05cf9821dae3d89d3ea7e2115b8137ea5a4a6c2807f33 SHA512 30756464d71ab1e047036550b6500d7e57999d808ebe3efba1d1ae6c037f8ca777ba704a4981d75a90285133635027a7bc13f1890f34823de33ae991ed99e2da WHIRLPOOL ec362189c4757ee032dc93e079ea0f5b291d5652231a84f1175fb308ca5622882d5008f23fd6a3d5143ff0dc98c91632d19c2e6604dcaa9b6a550bc902d79c1a
+DIST layman-2.1.0.tar.gz 94150 SHA256 cb96306c84da1d49ff54a31f7511c62c859565361bd59164516cd2812c439987 SHA512 1fa21392157c811c7751b8e3a11b858308c48720e377871bdd5afc525ebb50a92772064aa1148a4c20e3019f77b676ff65552439a71361d498952e362398c67f WHIRLPOOL 77643bedb4167eb371357444328d439c8b433cfc22a8bf9e39693feb68b701ec158064db8d22da0e6eb5260f27d5604d8b252a67930b38d8bed5921822f71c29
+DIST layman-2.2.0.tar.gz 116210 SHA256 4a10cfd3eb354e993886369995ae9b1243418e0370c6aabd4d0ef6c5b387b7a2 SHA512 34cac041d7b64274debdbc42cab079fd3bb3aee511ea9e80db726df0f828207d79a5262788483ced5cbf49924e3aa4f19fe21439c98dceea973d8f83473c2e41 WHIRLPOOL 8c5d3cbbfef35c6294dfac899cb42f49e0761745573721e38b7d6c9ac48031f95bbb961c9d8dd9d309e4672cc1e5b050107ba025a9f28127e5d7d6d9a73a6e9a
+DIST layman-2.3.0.tar.gz 119223 SHA256 76559b8e202c012d124deac01b92bbe70b550afe711144a3b1e301c5d8bbd0f2 SHA512 d110fb1781017d87e995098ecb48c4223347323d67534b584a393dc4354b761a6d960fd31e6e6787b5f37fa7e63b357c49486042c7cb527f78dd5beb5373627d WHIRLPOOL 76c82f08b18830e925ffd4c97b490753de2e7d0b3c71a82a0a75fd776ed3af84d2ba2fe06dab25e5e4d2ea400b0f0b66eda65f1f4eded0521ec579a1a0c1b17f
diff --git a/app-portage/layman/files/layman-2.0.0.doctest.patch b/app-portage/layman/files/layman-2.0.0.doctest.patch
new file mode 100644
index 000000000000..6d3305ca3ef7
--- /dev/null
+++ b/app-portage/layman/files/layman-2.0.0.doctest.patch
@@ -0,0 +1,20 @@
+diff --git a/layman/db.py b/layman/db.py
+index e2d740c..55a846a 100644
+--- a/layman/db.py
++++ b/layman/db.py
+@@ -93,6 +93,7 @@ class DB(DbBase):
+ >>> from layman.config import OptionConfig
+ >>> myoptions = {'installed' :
+ ... here + '/tests/testfiles/global-overlays.xml',
++ ... 'local_list': here + '/tests/testfiles/overlays.xml',
+ ... 'make_conf' : write2,
+ ... 'nocheck' : 'yes',
+ ... 'storage' : tmpdir}
+@@ -173,6 +174,7 @@ class DB(DbBase):
+ >>> from layman.config import OptionConfig
+ >>> myoptions = {'installed' :
+ ... here + '/tests/testfiles/global-overlays.xml',
++ ... 'local_list': here + '/tests/testfiles/overlays.xml',
+ ... 'make_conf' : write2,
+ ... 'nocheck' : 'yes',
+ ... 'storage' : tmpdir}
diff --git a/app-portage/layman/files/layman-2.0.0.svn_upgrade.patch b/app-portage/layman/files/layman-2.0.0.svn_upgrade.patch
new file mode 100644
index 000000000000..431b9370593a
--- /dev/null
+++ b/app-portage/layman/files/layman-2.0.0.svn_upgrade.patch
@@ -0,0 +1,58 @@
+From 580097d4bc0cd3f07b4ce1b8da33e63f03ef0305 Mon Sep 17 00:00:00 2001
+From: Brian Dolbec <dolsen@gentoo.org>
+Date: Mon, 6 Jan 2014 22:01:12 -0800
+Subject: [PATCH] Update svn's check_upgrade() for newer svn versions.
+
+Thanks you, Arfrever, for your assistance.
+---
+ layman/overlays/svn.py | 32 ++++++++++++--------------------
+ 1 file changed, 12 insertions(+), 20 deletions(-)
+
+diff --git a/layman/overlays/svn.py b/layman/overlays/svn.py
+index 4804925..374a516 100644
+--- a/layman/overlays/svn.py
++++ b/layman/overlays/svn.py
+@@ -131,27 +131,19 @@ class SvnOverlay(OverlaySource):
+ return
+
+ def check_upgrade(self, target):
+- '''Code to check the installed svn version and
+- run "svn upgrade" if needed.'''
++ '''Code to run "svn upgrade" it only takes longer
++ than checking if it does need an upgrade if it is
++ actually needed.
++ '''
+ file_to_run = _resolve_command(self.command(), self.output.error)[1]
+- args = file_to_run + ' -q --version'
++ args = " ".join([file_to_run, " upgrade", target])
+- pipe = Popen(args, shell=True, stdout=PIPE)
++ pipe = Popen(args, shell=True, stdout=PIPE, stderr=PIPE)
+ if pipe:
+- self.output.debug("SVN: check_upgrade()... have a valid pipe", 4)
+- version = pipe.stdout.readline().strip('\n')
+- self.output.debug("SVN: check_upgrade()... svn version found: %s"
+- % version, 4)
++ self.output.debug("SVN: check_upgrade()... have a valid pipe, "
++ "running upgrade", 4)
++ upgrade_output = pipe.stdout.readline().strip('\n')
++ if upgrade_output:
++ self.output.debug(" output: %s" % upgrade_output, 4)
++ self.output.debug("SVN: check_upgrade()... svn upgrade done", 4)
+ pipe.terminate()
+- if version >= '1.7.0':
+- self.output.debug("SVN: check_upgrade()... svn upgrade maybe",
+- 4)
+- _path = path([target,'.svn/wc.db'])
+- if not os.path.exists(_path):
+- self.output.info("An svn upgrade needs to be run...",
+- 2)
+- args = ["upgrade"]
+- return self.run_command(self.command(), args,
+- cwd=target, cmd="svn upgrade")
+- return
+- else:
+- return
++ return
+--
+1.8.3.2
+
diff --git a/app-portage/layman/files/layman-2.1.0-incorrect-import-make-conf-fix.patch b/app-portage/layman/files/layman-2.1.0-incorrect-import-make-conf-fix.patch
new file mode 100644
index 000000000000..1396e320ed5a
--- /dev/null
+++ b/app-portage/layman/files/layman-2.1.0-incorrect-import-make-conf-fix.patch
@@ -0,0 +1,29 @@
+From 8f6005fcfb9d2012bba428863f89b6b9168c8226 Mon Sep 17 00:00:00 2001
+From: Devan Franchini <twitch153@gentoo.org>
+Date: Thu, 22 May 2014 22:57:08 -0400
+Subject: [PATCH] updater.py: Fixes incorrect import for make.conf class
+
+X-Gentoo-Bug: 521724
+X-Gentoo-Bug-URL: https://bugs.gentoo.org/521724
+---
+ layman/updater.py | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/layman/updater.py b/layman/updater.py
+index 26aeed2..b2187e3 100644
+--- a/layman/updater.py
++++ b/layman/updater.py
+@@ -155,8 +155,8 @@ class Main(object):
+ self.output.info(" Creating layman's make.conf file")
+ # create layman's %(storage)s/make.conf
+ # so portage won't error
+- from layman.makeconf import MakeConf
+- maker = MakeConf(self.config, None)
++ from layman.makeconf import ConfigHandler
++ maker = ConfigHandler(self.config, None)
+ maker.write()
+
+
+--
+1.8.5.5
+
diff --git a/app-portage/layman/files/layman-2.1.0-local_overlay.patch b/app-portage/layman/files/layman-2.1.0-local_overlay.patch
new file mode 100644
index 000000000000..fbe5cd0e8137
--- /dev/null
+++ b/app-portage/layman/files/layman-2.1.0-local_overlay.patch
@@ -0,0 +1,27 @@
+From d0e5d9120c27f678e9039bb2f65cfc0e457be6c7 Mon Sep 17 00:00:00 2001
+From: Douglas Freed <dwfreed@mtu.edu>
+Date: Sat, 26 Jul 2014 15:54:11 -0700
+Subject: [PATCH] Fix a bug when an overlay isn't in the remote list
+
+If the overlay isn't in the remote list, it obviously isn't a different
+type, nor has its URL changed, so just init those to False so we can
+sync the overlay without hitting UnboundLocalError.
+---
+ layman/api.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/layman/api.py b/layman/api.py
+index a86970f..930f449 100755
+--- a/layman/api.py
++++ b/layman/api.py
+@@ -426,6 +426,7 @@ class LaymanAPI(object):
+ message = 'Overlay "%s" could not be found in the remote lists.\n' \
+ 'Please check if it has been renamed and re-add if necessary.' % ovl
+ warnings.append((ovl, message))
++ (diff_type, update_url) = (False, False)
+ else:
+ self.output.debug("API.sync(); else: self._get_remote_db().select(ovl)", 5)
+
+--
+1.8.5.5
+
diff --git a/app-portage/layman/files/layman-2.2.0-adds-kwargs-debug.patch b/app-portage/layman/files/layman-2.2.0-adds-kwargs-debug.patch
new file mode 100644
index 000000000000..2020cb716449
--- /dev/null
+++ b/app-portage/layman/files/layman-2.2.0-adds-kwargs-debug.patch
@@ -0,0 +1,28 @@
+From: Devan Franchini <twitch153@gentoo.org>
+Date: Sun, 7 Dec 2014 23:12:36 -0500
+Subject: [PATCH] Adds kwargs-debug and modifies kwargs-info level to 5
+
+--- a/layman/overlays/archive.py
++++ b/layman/overlays/archive.py
+@@ -50,7 +50,8 @@ class ArchiveOverlay(OverlaySource):
+ connector_output = {
+ 'info': self.output.debug,
+ 'error': self.output.error,
+- 'kwargs-info': {'level': 2},
++ 'kwargs-info': {'level': 5},
++ 'kwargs-debug': {'level': 2},
+ 'kwargs-error': {'level': None},
+ }
+
+--- a/layman/remotedb.py
++++ b/layman/remotedb.py
+@@ -120,6 +120,6 @@ class RemoteDB(DbBase):
+ 'info': self.output.info,
+ 'debug': self.output.debug,
+ 'error': self.output.error,
+- 'kwargs-info': {'level': 2},
++ 'kwargs-info': {'level': 5},
+ 'kwargs-debug': {'level': 2},
+ 'kwargs-error':{'level': None},
+ }
+
diff --git a/app-portage/layman/files/layman-2.2.0-change-for-upstream-ssl-fetch.patch b/app-portage/layman/files/layman-2.2.0-change-for-upstream-ssl-fetch.patch
new file mode 100644
index 000000000000..d738b26f12c0
--- /dev/null
+++ b/app-portage/layman/files/layman-2.2.0-change-for-upstream-ssl-fetch.patch
@@ -0,0 +1,38 @@
+From 81f1545f1371931d560492e8b323096d4befc775 Mon Sep 17 00:00:00 2001
+From: Brian Dolbec <dolsen@gentoo.org>
+Date: Fri, 17 Oct 2014 19:40:38 -0700
+Subject: [PATCH] remotedb.py: Change for upstream ssl-fetch change
+
+---
+ layman/remotedb.py | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/layman/remotedb.py b/layman/remotedb.py
+index f0f7ea9..b866bd7 100644
+--- a/layman/remotedb.py
++++ b/layman/remotedb.py
+@@ -57,7 +57,7 @@ class RemoteDB(DbBase):
+ self.detached_urls = []
+ self.signed_urls = []
+ self.proxies = config.proxies
+-
++
+ self.urls = [i.strip()
+ for i in config['overlays'].split('\n') if len(i)]
+
+@@ -116,9 +116,11 @@ class RemoteDB(DbBase):
+ need_gpg = [False, True, True]
+ # setup the ssl-fetch output map
+ connector_output = {
+- 'info': self.output.debug,
++ 'info': self.output.info,
++ 'debug': self.output.debug,
+ 'error': self.output.error,
+ 'kwargs-info': {'level': 2},
++ 'kwargs-debug': {'level': 2},
+ 'kwargs-error':{'level': None},
+ }
+ fetcher = Connector(connector_output, self.proxies, USERAGENT)
+--
+2.0.5
+
diff --git a/app-portage/layman/files/layman-2.2.0-removes-doctest-remnants.patch b/app-portage/layman/files/layman-2.2.0-removes-doctest-remnants.patch
new file mode 100644
index 000000000000..4b077140019b
--- /dev/null
+++ b/app-portage/layman/files/layman-2.2.0-removes-doctest-remnants.patch
@@ -0,0 +1,208 @@
+From: Devan Franchini <twitch153@gentoo.org>
+Date: Fri, 18 Oct 2014 15:21:24 -0400
+Subject: [PATCH] Removes doctest remnants
+
+--- a/layman/api.py 2014-10-18 14:27:13.233842116 -0400
++++ b/layman/api.py 2014-10-18 14:29:51.184849673 -0400
+@@ -714,15 +714,3 @@
+ write = os.fdopen(fd_w, 'w')
+ read = os.fdopen(fd_r, 'r')
+ return (read, write, fd_r, fd_w)
+-
+-
+-if __name__ == '__main__':
+- import doctest, sys
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/argsparser.py 2014-10-18 14:27:13.233842116 -0400
++++ b/layman/argsparser.py 2014-10-18 14:30:35.256851781 -0400
+@@ -404,14 +404,3 @@
+ self.output.debug('ARGSPARSER: Returning keys', 9)
+
+ return keys
+-
+-
+-#===============================================================================
+-#
+-# Testing
+-#
+-#-------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest
+- doctest.testmod(sys.modules[__name__])
+--- a/layman/cli.py 2014-10-18 14:27:13.233842116 -0400
++++ b/layman/cli.py 2014-10-18 14:32:11.456856384 -0400
+@@ -397,15 +397,3 @@
+ # blank newline -- no " *"
+ self.output.notice('')
+ return info != {}
+-
+-
+-if __name__ == '__main__':
+- import doctest
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/config.py 2014-10-18 14:27:13.233842116 -0400
++++ b/layman/config.py 2014-10-18 14:31:02.528853086 -0400
+@@ -348,13 +348,3 @@
+ if new_defaults is not None:
+ self._defaults.update(new_defaults)
+ return
+-
+-#===============================================================================
+-#
+-# Testing
+-#
+-#-------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest
+- doctest.testmod(sys.modules[__name__])
+--- a/layman/db.py 2014-10-18 14:27:13.234842116 -0400
++++ b/layman/db.py 2014-10-18 14:32:32.160857374 -0400
+@@ -315,21 +315,3 @@
+ raise Exception('Syncing overlay "' + overlay_name +
+ '" returned status ' + str(result) + '!' +
+ '\ndb.sync()')
+-
+-
+-#===============================================================================
+-#
+-# Testing
+-#
+-#-------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest, sys
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/dbbase.py 2014-10-18 14:27:13.234842116 -0400
++++ b/layman/dbbase.py 2014-10-18 14:31:14.648853666 -0400
+@@ -252,21 +252,3 @@
+ """returns a list of the overlay names
+ """
+ return sorted(self.overlays)
+-
+-
+-#===============================================================================
+-#
+-# Testing
+-#
+-#-------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/overlays/archive.py 2014-10-18 14:27:13.253842116 -0400
++++ b/layman/overlays/archive.py 2014-10-18 14:31:54.640855579 -0400
+@@ -188,15 +188,3 @@
+ '''
+
+ return self.is_supported()
+-
+-
+-if __name__ == '__main__':
+- import doctest
+-
+- # Ignore warnings here. We are just testing.
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/overlays/modules/tar/tar.py 2014-10-18 14:27:13.245842116 -0400
++++ b/layman/overlays/modules/tar/tar.py 2014-10-18 15:10:13.303965557 -0400
+@@ -94,14 +94,3 @@
+ return require_supported(
+ [(self.command(), 'tar', 'app-arch/tar'), ],
+ self.output.warn)
+-
+-if __name__ == '__main__':
+- import doctest
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/overlays/overlay.py 2014-10-18 14:27:13.253842116 -0400
++++ b/layman/overlays/overlay.py 2014-10-18 14:31:38.624854813 -0400
+@@ -546,14 +546,3 @@
+ def source_types(self):
+ for i in self.sources:
+ yield i.type
+-
+-
+-#==============================================================================
+-#
+-# Testing
+-#
+-#------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest
+- doctest.testmod(sys.modules[__name__])
+--- a/layman/remotedb.py 2014-10-18 14:27:13.253842116 -0400
++++ b/layman/remotedb.py 2014-10-18 14:29:31.064848710 -0400
+@@ -384,14 +384,3 @@
+ self.signed_urls = [i.strip()
+ for i in self.config['gpg_signed_lists'].split('\n') if len(i)]
+ '''
+-
+-if __name__ == '__main__':
+- import doctest
+-
+- # Ignore warnings here. We are just testing
+- from warnings import filterwarnings, resetwarnings
+- filterwarnings('ignore')
+-
+- doctest.testmod(sys.modules[__name__])
+-
+- resetwarnings()
+--- a/layman/utils.py 2014-10-18 14:27:13.254842117 -0400
++++ b/layman/utils.py 2014-10-18 14:30:24.088851247 -0400
+@@ -347,14 +347,3 @@
+ for key in kwargs:
+ result[key] = kwargs[key]
+ return result
+-
+-
+-#===============================================================================
+-#
+-# Testing
+-#
+-#-------------------------------------------------------------------------------
+-
+-if __name__ == '__main__':
+- import doctest
+- doctest.testmod(sys.modules[__name__])
+
diff --git a/app-portage/layman/layman-2.0.0-r1.ebuild b/app-portage/layman/layman-2.0.0-r1.ebuild
new file mode 100644
index 000000000000..4bc9ab64d780
--- /dev/null
+++ b/app-portage/layman/layman-2.0.0-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="bazaar cvs darcs +git mercurial subversion test"
+
+DEPEND="test? ( dev-vcs/subversion )"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ "
+
+python_prepare_all() {
+ local PATCHES=( "${FILESDIR}"/layman-2.0.0.doctest.patch )
+ distutils-r1_python_prepare_all
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ for suite in layman/tests/{dtest,external}.py ; do
+ PYTHONPATH="." "${PYTHON}" ${suite} \
+ || die "test suite '${suite}' failed"
+ done
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/layman-2.0.0-r3.ebuild b/app-portage/layman/layman-2.0.0-r3.ebuild
new file mode 100644
index 000000000000..b57494a490b2
--- /dev/null
+++ b/app-portage/layman/layman-2.0.0-r3.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 pypy )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="bazaar cvs darcs +git mercurial subversion test"
+
+DEPEND="test? ( dev-vcs/subversion )"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ sys-apps/portage[${PYTHON_USEDEP}]
+ "
+
+python_prepare_all() {
+ local PATCHES=( "${FILESDIR}"/layman-2.0.0.*.patch )
+ distutils-r1_python_prepare_all
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ for suite in layman/tests/{dtest,external}.py ; do
+ PYTHONPATH="." "${PYTHON}" ${suite} \
+ || die "test suite '${suite}' failed"
+ done
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/layman-2.1.0-r3.ebuild b/app-portage/layman/layman-2.1.0-r3.ebuild
new file mode 100644
index 000000000000..965651144631
--- /dev/null
+++ b/app-portage/layman/layman-2.1.0-r3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~s390 ~sh ~x86 ~ppc-aix ~ppc ~ppc64 ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris ~sparc"
+IUSE="bazaar cvs darcs +git mercurial subversion test"
+
+DEPEND="test? ( dev-vcs/subversion )"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ sys-apps/portage[${PYTHON_USEDEP}]
+ >=dev-python/ssl-fetch-0.2[${PYTHON_USEDEP}]
+ "
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ epatch "${FILESDIR}"/${P}-local_overlay.patch
+ epatch "${FILESDIR}"/${P}-incorrect-import-make-conf-fix.patch
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ for suite in layman/tests/{dtest,external}.py ; do
+ PYTHONPATH="." "${PYTHON}" ${suite} \
+ || die "test suite '${suite}' failed"
+ done
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/layman-2.2.0-r7.ebuild b/app-portage/layman/layman-2.2.0-r7.ebuild
new file mode 100644
index 000000000000..421f6bae22a3
--- /dev/null
+++ b/app-portage/layman/layman-2.2.0-r7.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 linux-info prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="bazaar cvs darcs +git g-sorcery mercurial squashfs subversion test"
+
+DEPEND="test? ( dev-vcs/subversion )"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ g-sorcery? ( app-portage/g-sorcery )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ sys-apps/portage[${PYTHON_USEDEP}]
+ >=dev-python/ssl-fetch-0.2[${PYTHON_USEDEP}]
+ "
+
+layman_check_kernel_config() {
+ local CONFIG_CHECK
+ use squashfs && CONFIG_CHECK+=" ~BLK_DEV_LOOP ~SQUASHFS"
+ [[ -n ${CONFIG_CHECK} ]] && check_extra_config
+}
+
+pkg_pretend() {
+ layman_check_kernel_config
+}
+
+pkg_setup() {
+ layman_check_kernel_config
+}
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ epatch "${FILESDIR}"/${P}-removes-doctest-remnants.patch
+ epatch "${FILESDIR}"/${P}-change-for-upstream-ssl-fetch.patch
+ epatch "${FILESDIR}"/${P}-adds-kwargs-debug.patch
+ rm "${S}"/"${PN}"/tests/dtest.py
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ for suite in layman/tests/external.py ; do
+ PYTHONPATH="." "${PYTHON}" ${suite} \
+ || die "test suite '${suite}' failed"
+ done
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/layman-2.3.0.ebuild b/app-portage/layman/layman-2.3.0.ebuild
new file mode 100644
index 000000000000..567877a0475b
--- /dev/null
+++ b/app-portage/layman/layman-2.3.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 linux-info prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~s390 ~x86"
+IUSE="bazaar cvs darcs +git gpg g-sorcery mercurial squashfs subversion sync-plugin-portage test"
+
+DEPEND="test? ( dev-vcs/subversion )
+ >=dev-python/ssl-fetch-0.2[${PYTHON_USEDEP}]
+"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ g-sorcery? ( app-portage/g-sorcery )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ sync-plugin-portage? ( >=sys-apps/portage-2.2.16[${PYTHON_USEDEP}] )
+ !sync-plugin-portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
+ gpg? ( dev-python/pyGPG )
+ >=dev-python/ssl-fetch-0.2[${PYTHON_USEDEP}]
+ "
+
+layman_check_kernel_config() {
+ local CONFIG_CHECK
+ use squashfs && CONFIG_CHECK+=" ~BLK_DEV_LOOP ~SQUASHFS"
+ [[ -n ${CONFIG_CHECK} ]] && check_extra_config
+}
+
+pkg_pretend() {
+ layman_check_kernel_config
+}
+
+pkg_setup() {
+ layman_check_kernel_config
+}
+
+python_prepare_all() {
+ python_setup
+ esetup.py setup_plugins
+ distutils-r1_python_prepare_all
+ #rm "${S}"/"${PN}"/tests/dtest.py
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ for suite in layman/tests/external.py ; do
+ PYTHONPATH="." "${PYTHON}" ${suite} \
+ || die "test suite '${suite}' failed"
+ done
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/layman-9999.ebuild b/app-portage/layman/layman-9999.ebuild
new file mode 100644
index 000000000000..14439447be0f
--- /dev/null
+++ b/app-portage/layman/layman-9999.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy )
+PYTHON_REQ_USE="xml(+)"
+
+inherit eutils distutils-r1 git-2 linux-info prefix
+
+DESCRIPTION="Tool to manage Gentoo overlays"
+HOMEPAGE="http://layman.sourceforge.net"
+SRC_URI=""
+EGIT_REPO_URI="git://anongit.gentoo.org/proj/layman.git"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="bazaar cvs darcs +git gpg g-sorcery mercurial squashfs subversion sync-plugin-portage test"
+
+DEPEND="test? ( dev-vcs/subversion )
+ app-text/asciidoc"
+
+RDEPEND="
+ bazaar? ( dev-vcs/bzr )
+ cvs? ( dev-vcs/cvs )
+ darcs? ( dev-vcs/darcs )
+ git? ( dev-vcs/git )
+ mercurial? ( dev-vcs/mercurial )
+ g-sorcery? ( app-portage/g-sorcery )
+ subversion? (
+ || (
+ >=dev-vcs/subversion-1.5.4[http]
+ >=dev-vcs/subversion-1.5.4[webdav-neon]
+ >=dev-vcs/subversion-1.5.4[webdav-serf]
+ )
+ )
+ gpg? ( =dev-python/pyGPG-9999 )
+ sync-plugin-portage? ( >=sys-apps/portage-2.2.16[${PYTHON_USEDEP}] )
+ !sync-plugin-portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
+ >=dev-python/ssl-fetch-0.2[${PYTHON_USEDEP}]
+ "
+
+layman_check_kernel_config() {
+ local CONFIG_CHECK
+ use squashfs && CONFIG_CHECK+=" ~BLK_DEV_LOOP ~SQUASHFS"
+ [[ -n ${CONFIG_CHECK} ]] && check_extra_config
+}
+
+pkg_pretend() {
+ layman_check_kernel_config
+}
+
+pkg_setup() {
+ layman_check_kernel_config
+}
+
+python_prepare_all() {
+ python_setup
+ esetup.py setup_plugins
+ distutils-r1_python_prepare_all
+ eprefixify etc/layman.cfg layman/config.py
+}
+
+python_test() {
+ suite=layman/tests/external.py
+ PYTHONPATH="." "${PYTHON}" ${suite} || die "test suite '${suite}' failed"
+ unset suite
+}
+
+python_compile_all() {
+ # override MAKEOPTS to prevent build failure
+ emake -j1 -C doc
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /etc/layman
+ doins etc/layman.cfg
+
+ doman doc/layman.8
+ dohtml doc/layman.8.html
+
+ keepdir /var/lib/layman
+ keepdir /etc/layman/overlays
+}
+
+pkg_postinst() {
+ # now run layman's update utility
+ einfo "Running layman-updater..."
+ "${EROOT}"/usr/bin/layman-updater
+ einfo
+}
diff --git a/app-portage/layman/metadata.xml b/app-portage/layman/metadata.xml
new file mode 100644
index 000000000000..5f6237c6c7d9
--- /dev/null
+++ b/app-portage/layman/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>tools-portage</herd>
+ <maintainer>
+ <email>dolsen@gentoo.org</email>
+ <name>Brian Dolbec</name>
+ </maintainer>
+ <maintainer>
+ <email>twitch153@gentoo.org</email>
+ <name>Devan Franchini</name>
+ </maintainer>
+ <use>
+ <flag name="bazaar">Support <pkg>dev-vcs/bzr</pkg> based overlays</flag>
+ <flag name="cvs">Support <pkg>dev-vcs/cvs</pkg> based overlays</flag>
+ <flag name="darcs">Support <pkg>dev-vcs/darcs</pkg> based overlays</flag>
+ <flag name="g-sorcery">Support <pkg>app-portage/g-sorcery</pkg> based overlays</flag>
+ <flag name="git">Support <pkg>dev-vcs/git</pkg> based overlays</flag>
+ <flag name="gpg">Support <pkg>app-crypt/gnupg</pkg> signed overlays lists and manifests</flag>
+ <flag name="mercurial">Support <pkg>dev-vcs/mercurial</pkg> based overlays</flag>
+ <flag name="squashfs">Support mounting squashfs image overlays locally read-only</flag>
+ <flag name="subversion">Support <pkg>dev-vcs/subversion</pkg> based overlays</flag>
+ <flag name="sync-plugin-portage">Install the <pkg>sys-apps/portage</pkg> sync module</flag>
+ </use>
+</pkgmetadata>