From d6847146871ec59dbc34a3d1b7f6177061c8d461 Mon Sep 17 00:00:00 2001 From: Jason Stubbs Date: Wed, 21 Dec 2005 16:00:43 +0000 Subject: Separate masked and unavailable ebuilds and report that masked ebuilds can be handled with package.keywords or package.unmask when they are detected. svn path=/main/trunk/; revision=2427 --- bin/emaint | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/bin/emaint b/bin/emaint index b5508652d..617cf2a1a 100755 --- a/bin/emaint +++ b/bin/emaint @@ -16,6 +16,7 @@ class WorldHandler(object): def __init__(self): self.invalid = [] self.not_installed = [] + self.masked = [] self.unavailable = [] self.okay = [] self.found = os.access(portage_const.WORLD_FILE, os.R_OK) @@ -25,8 +26,10 @@ class WorldHandler(object): self.invalid.append(atom) elif not portage.db["/"]["vartree"].dbapi.match(atom): self.not_installed.append(atom) - elif not portage.db["/"]["porttree"].dbapi.match(atom): + elif not portage.db["/"]["porttree"].dbapi.xmatch("match-all", atom): self.unavailable.append(atom) + elif not portage.db["/"]["porttree"].dbapi.match("match-visible", atom): + self.masked.append(atom) else: self.okay.append(atom) @@ -35,7 +38,10 @@ class WorldHandler(object): if self.found: errors += map(lambda x: "'%s' is not a valid atom" % x, self.invalid) errors += map(lambda x: "'%s' is not installed" % x, self.not_installed) + errors += map(lambda x: "'%s' is masked (manually fix by adding to package.keywords)" % x, self.masked) errors += map(lambda x: "'%s' has no ebuilds available" % x, self.unavailable) + if self.masked: + errors += "Masked ebuilds can be manually unmasked with package.keywords or package.unmask" else: errors.append(portage_const.WORLD_FILE + " could not be opened for reading") return errors -- cgit v1.2.3-1-g7c22