commit:     b4d8e300c04b768be7cd5c64116d6cc0453219b4
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sun May 11 19:35:38 2014 +0000
Commit:     Alexander Berntsen <bernalex <AT> gentoo <DOT> org>
CommitDate: Mon May 12 10:07:23 2014 +0000
URL:        
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=b4d8e300

Support the 'packages' profile file as a directory

This adds proof-of-concept support for bug #282296. Current behaviour
without this change is to print a traceback.

Reviewed-by: Alexander Berntsen <bernalex <AT> gentoo.org>

---
 pym/portage/_sets/profiles.py        | 2 +-
 pym/portage/package/ebuild/config.py | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/pym/portage/_sets/profiles.py b/pym/portage/_sets/profiles.py
index 39a2968..48c29de 100644
--- a/pym/portage/_sets/profiles.py
+++ b/pym/portage/_sets/profiles.py
@@ -33,7 +33,7 @@ class PackagesSystemSet(PackageSet):
                        writemsg_level("\nPackagesSystemSet: profile paths: 
%s\n" % \
                                (self._profile_paths,), level=logging.DEBUG, 
noiselevel=-1)
 
-               mylist = [grabfile_package(os.path.join(x, "packages"), 
verify_eapi=True) for x in self._profile_paths]
+               mylist = [grabfile_package(os.path.join(x, "packages"), 
recursive=True, verify_eapi=True) for x in self._profile_paths]
 
                if debug:
                        writemsg_level("\nPackagesSystemSet: raw packages: 
%s\n" % \

diff --git a/pym/portage/package/ebuild/config.py 
b/pym/portage/package/ebuild/config.py
index e104501..e294968 100644
--- a/pym/portage/package/ebuild/config.py
+++ b/pym/portage/package/ebuild/config.py
@@ -557,7 +557,7 @@ class config(object):
                        self.user_profile_dir = 
locations_manager.user_profile_dir
 
                        packages_list = [grabfile_package(os.path.join(x, 
"packages"),
-                               verify_eapi=True) for x in self.profiles]
+                               recursive=True, verify_eapi=True) for x in 
self.profiles]
                        self.packages = tuple(stack_lists(packages_list, 
incremental=1))
 
                        # revmaskdict

Reply via email to