From 97f866d3a76072745478f557390f203edc58d306 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 1 Aug 2008 21:56:26 +0000 Subject: Add debug support to PackagesSystemSet since robbat2 is reporting an empty set for some unknown reason. svn path=/main/trunk/; revision=11314 --- pym/portage/sets/profiles.py | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'pym') diff --git a/pym/portage/sets/profiles.py b/pym/portage/sets/profiles.py index 8efa0ec05..9c1dcbe86 100644 --- a/pym/portage/sets/profiles.py +++ b/pym/portage/sets/profiles.py @@ -2,18 +2,22 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ +import logging import os from portage.util import grabfile_package, stack_lists from portage.sets.base import PackageSet +from portage.sets import get_boolean +from portage.util import writemsg_level __all__ = ["PackagesSystemSet"] class PackagesSystemSet(PackageSet): _operations = ["merge"] - def __init__(self, profile_paths): + def __init__(self, profile_paths, debug=False): super(PackagesSystemSet, self).__init__() self._profile_paths = profile_paths + self._debug = debug if profile_paths: description = self._profile_paths[-1] if description == "/etc/portage/profile" and \ @@ -24,10 +28,26 @@ class PackagesSystemSet(PackageSet): self.description = "System packages for profile %s" % description def load(self): + debug = self._debug + if debug: + writemsg_level("\nPackagesSystemSet: profile paths: %s\n" % \ + (self._profile_paths,), level=logging.DEBUG, noiselevel=-1) + mylist = [grabfile_package(os.path.join(x, "packages")) for x in self._profile_paths] + + if debug: + writemsg_level("\nPackagesSystemSet: raw packages: %s\n" % \ + (mylist,), level=logging.DEBUG, noiselevel=-1) + mylist = stack_lists(mylist, incremental=1) + + if debug: + writemsg_level("\nPackagesSystemSet: stacked packages: %s\n" % \ + (mylist,), level=logging.DEBUG, noiselevel=-1) + self._setAtoms([x[1:] for x in mylist if x[0] == "*"]) def singleBuilder(self, options, settings, trees): - return PackagesSystemSet(settings.profiles) + debug = get_boolean(options, "debug", False) + return PackagesSystemSet(settings.profiles, debug=debug) singleBuilder = classmethod(singleBuilder) -- cgit v1.2.3-1-g7c22