diff options
author | Necoro <> | 2008-01-24 23:49:51 +0000 |
---|---|---|
committer | Necoro <> | 2008-01-24 23:49:51 +0000 |
commit | 4d4d5a6fd0348ecc628251dbca5ac9e22acfb555 (patch) | |
tree | 4b9e0de2dc57b8f4794812349c04466c5877c946 /portato/backend/portage/package.py | |
parent | bf75aae3c9f6ac2130b65a0499e501ee697688b1 (diff) | |
download | portato-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.py | 22 |
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 |