summaryrefslogtreecommitdiff
path: root/portato/backend/portage/package.py
diff options
context:
space:
mode:
authorNecoro <>2008-01-24 23:49:51 +0000
committerNecoro <>2008-01-24 23:49:51 +0000
commit4d4d5a6fd0348ecc628251dbca5ac9e22acfb555 (patch)
tree4b9e0de2dc57b8f4794812349c04466c5877c946 /portato/backend/portage/package.py
parentbf75aae3c9f6ac2130b65a0499e501ee697688b1 (diff)
downloadportato-4d4d5a6fd0348ecc628251dbca5ac9e22acfb555.tar.gz
portato-4d4d5a6fd0348ecc628251dbca5ac9e22acfb555.tar.bz2
portato-4d4d5a6fd0348ecc628251dbca5ac9e22acfb555.zip
r716@Devoty: necoro | 2008-01-25 00:35:00 +0100
Improved useflag handling r717@Devoty: necoro | 2008-01-25 00:47:45 +0100 improved update_world
Diffstat (limited to 'portato/backend/portage/package.py')
-rw-r--r--portato/backend/portage/package.py22
1 files changed, 11 insertions, 11 deletions
diff --git a/portato/backend/portage/package.py b/portato/backend/portage/package.py
index 42badbe..4760acb 100644
--- a/portato/backend/portage/package.py
+++ b/portato/backend/portage/package.py
@@ -146,21 +146,21 @@ class PortagePackage (Package):
else:
return reason
- def get_iuse_flags (self, installed = False, keep = False):
+ def get_iuse_flags (self, installed = False, removeForced = True):
if installed or not self.is_in_system():
tree = self._settings.vartree
else:
tree = self._settings.porttree
- flags = self.get_package_settings("IUSE", tree = tree).split()
+ iuse = flags.filter_defaults(self.get_package_settings("IUSE", tree = tree).split())
- if not keep: # remove "+"/"-"
- for ctr, f in enumerate(flags):
- if f.startswith(("+","-")):
- flags[ctr] = f[1:]
-
- return list(set(flags).difference(self.forced_flags))
+ iuse = set(iuse)
+ if removeForced:
+ return list(iuse.difference(self.forced_flags))
+ else:
+ return list(iuse)
+
def get_matched_dep_packages (self, depvar):
# change the useflags, because we have internally changed some, but not made them visible for portage
actual = self.get_actual_use_flags()
@@ -281,10 +281,10 @@ class PortagePackage (Package):
return r[0]
- def get_use_flags(self):
+ def get_installed_use_flags(self):
if self.is_installed():
- return self.get_package_settings("USE", tree = self._settings.vartree)
- else: return ""
+ return self.get_package_settings("USE", tree = self._settings.vartree).split()
+ else: return []
def compare_version(self,other):
v1 = self._scpv