Index: equery =================================================================== --- equery (revision 454) +++ equery (working copy) @@ -455,7 +455,8 @@ """Advanced report of a package's USE flags""" def __init__(self): self.default_opts = { - "allPackages" : False + "allPackages" : False, + "includeOverlayTree" : False } def parseArgs(self, args): @@ -476,6 +477,8 @@ break elif x in ["-a", "--all"]: opts["allPackages"] = True + elif x in ["-o", "--overlay-tree"]: + opts["includeOverlayTree"] = True elif x[0] == "-": print_warn("unknown local option %s, ignoring" % x) else: @@ -542,6 +545,25 @@ except IOError: print_warn(5, "Could not load USE flag descriptions from " + path(gentoolkit.settings["PORTDIR"] + "/profiles/use.local.desc")) + if opts["includeOverlayTree"]: + portdirs = gentoolkit.settings["PORTDIR_OVERLAY"].split() + for portdir in portdirs: + try: + fd = open(portdir + "/profiles/use.local.desc") + for line in fd.readlines(): + if line[0] == "#": + continue + fields = line.split(" - ", 1) + if len(fields) == 2: + catpkguse = re.search("(.*):(.*)", fields[0]) + if catpkguse: + if not uselocaldesc.has_key(catpkguse.group(1).strip()): + uselocaldesc[catpkguse.group(1).strip()] = {catpkguse.group(2).strip() : fields[1].strip()} + else: + uselocaldesc[catpkguse.group(1).strip()][catpkguse.group(2).strip()] = fields[1].strip() + except IOError: + print_warn("Could not load USE flag descriptions from " + portdir + "/profiles/use.local.desc") + if not Config["piping"] and Config["verbosityLevel"] >= 3: print_info(3, "[ Colour Code : " + pp.useflagon("set") + " " + pp.useflagoff("unset") + " ]") print_info(3, "[ Legend : Left column (U) - USE flags from make.conf ]") @@ -640,7 +662,8 @@ " " + pp.command("uses") + pp.localoption(" ") + pp.pkgquery("pkgspec") + \ "\n" + \ pp.localoption("") + " is: \n" + \ - " " + pp.localoption("-a, --all") + " - include all package versions\n" + " " + pp.localoption("-a, --all") + " - include all package versions\n" + \ + " " + pp.localoption("-o, --overlay-tree") + " - include overlay\n" class CmdDisplayDepGraph(Command):