diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-10-16 22:47:55 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-10-16 22:47:55 +0000 |
commit | 476f06d82b3a199f651b89b83779c723a6980c2b (patch) | |
tree | 42511eea224e65e7cb1e3f6fab58b2e36c412ffb /pym/_emerge/unmerge.py | |
parent | acbf44ae32b2e30a472accce4bd416db45355207 (diff) | |
download | portage-476f06d82b3a199f651b89b83779c723a6980c2b.tar.gz portage-476f06d82b3a199f651b89b83779c723a6980c2b.tar.bz2 portage-476f06d82b3a199f651b89b83779c723a6980c2b.zip |
Bug #266454 - Make @world an all-inclusive set once again, like it was prior
to portage-2.2_rc* releases. In addition to @system, @world now includes a
@selected set which represents user-selected "world" packages and sets that
saved in /var/lib/portage/world{,sets}.
svn path=/main/trunk/; revision=14614
Diffstat (limited to 'pym/_emerge/unmerge.py')
-rw-r--r-- | pym/_emerge/unmerge.py | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/pym/_emerge/unmerge.py b/pym/_emerge/unmerge.py index 4d2a546c5..967d72478 100644 --- a/pym/_emerge/unmerge.py +++ b/pym/_emerge/unmerge.py @@ -283,9 +283,9 @@ def unmerge(root_config, myopts, unmerge_action, from portage.sets.base import EditablePackageSet - # generate a list of package sets that are directly or indirectly listed in "world", + # generate a list of package sets that are directly or indirectly listed in "selected", # as there is no persistent list of "installed" sets - installed_sets = ["world"] + installed_sets = ["selected"] stop = False pos = 0 while not stop: @@ -333,7 +333,8 @@ def unmerge(root_config, myopts, unmerge_action, # skip sets that the user requested to unmerge, and skip world # unless we're unmerging a package set (as the package would be # removed from "world" later on) - if s in root_config.setconfig.active or (s == "world" and not root_config.setconfig.active): + if s in root_config.setconfig.active or \ + (s == "selected" and not root_config.setconfig.active): continue if s not in sets: @@ -510,22 +511,22 @@ def unmerge(root_config, myopts, unmerge_action, raise UninstallFailure(retval) sys.exit(retval) else: - if clean_world and hasattr(sets["world"], "cleanPackage")\ - and hasattr(sets["world"], "lock"): - sets["world"].lock() - if hasattr(sets["world"], "load"): - sets["world"].load() - sets["world"].cleanPackage(vartree.dbapi, y) - sets["world"].unlock() + if clean_world and hasattr(sets["selected"], "cleanPackage")\ + and hasattr(sets["selected"], "lock"): + sets["selected"].lock() + if hasattr(sets["selected"], "load"): + sets["selected"].load() + sets["selected"].cleanPackage(vartree.dbapi, y) + sets["selected"].unlock() emergelog(xterm_titles, " >>> unmerge success: "+y) - if clean_world and hasattr(sets["world"], "remove")\ - and hasattr(sets["world"], "lock"): - sets["world"].lock() + if clean_world and hasattr(sets["selected"], "remove")\ + and hasattr(sets["selected"], "lock"): + sets["selected"].lock() # load is called inside remove() for s in root_config.setconfig.active: - sets["world"].remove(SETPREFIX+s) - sets["world"].unlock() + sets["selected"].remove(SETPREFIX + s) + sets["selected"].unlock() return 1 |