summaryrefslogtreecommitdiff
path: root/portato/backend/portage
diff options
context:
space:
mode:
Diffstat (limited to 'portato/backend/portage')
-rw-r--r--portato/backend/portage/package.py4
-rw-r--r--portato/backend/portage/system_22.py8
2 files changed, 11 insertions, 1 deletions
diff --git a/portato/backend/portage/package.py b/portato/backend/portage/package.py
index 502ee2b..2b40e41 100644
--- a/portato/backend/portage/package.py
+++ b/portato/backend/portage/package.py
@@ -308,4 +308,6 @@ class PortagePackage (Package):
return portage.pkgcmp(v1[1:],v2[1:])
def matches (self, criterion):
- return system.cpv_matches(self.get_cpv(), criterion)
+ # cpv_matches needs explicit slot info
+ scpv = "%s:%s" % (self.get_cpv(), self.get_package_settings("SLOT"))
+ return system.cpv_matches(scpv, criterion)
diff --git a/portato/backend/portage/system_22.py b/portato/backend/portage/system_22.py
index d720a06..f69e15c 100644
--- a/portato/backend/portage/system_22.py
+++ b/portato/backend/portage/system_22.py
@@ -63,3 +63,11 @@ class PortageSystem_22 (PortageSystem):
def new_package (self, cpv):
return PortagePackage_22(cpv)
+
+ def get_config_path (self):
+ path = PortageSystem.get_config_path(self)
+
+ if path[0] != "/":
+ return os.path.join(self.settings.settings["ROOT"], path)
+ else:
+ return path