summaryrefslogtreecommitdiffstats
path: root/packages.py
diff options
context:
space:
mode:
authorJeremy Katz <katzj@redhat.com>2005-02-02 22:41:01 +0000
committerJeremy Katz <katzj@redhat.com>2005-02-02 22:41:01 +0000
commit4a9935451eda98c420925546b30e7068d6463ccc (patch)
treefa9d655a6805a3b4797d48b1d84c30b4013ab178 /packages.py
parentcd5a5031d4f3843972b85357293cd4c575b3aae3 (diff)
downloadanaconda-4a9935451eda98c420925546b30e7068d6463ccc.tar.gz
anaconda-4a9935451eda98c420925546b30e7068d6463ccc.tar.xz
anaconda-4a9935451eda98c420925546b30e7068d6463ccc.zip
2005-02-02 Jeremy Katz <katzj@redhat.com>
* packages.py (selectLanguageSupportGroups): Switch to selecting metapkgs of a "language-support" group so that language selection is just like other package selection
Diffstat (limited to 'packages.py')
-rw-r--r--packages.py37
1 files changed, 23 insertions, 14 deletions
diff --git a/packages.py b/packages.py
index 2b3fe9cde..fbf7500a3 100644
--- a/packages.py
+++ b/packages.py
@@ -156,7 +156,7 @@ def readPackages(intf, method, id):
w = intf.waitWindow(_("Reading"), _("Reading package information..."))
try:
hdrlist = method.readHeaders()
- except FileCopyException:
+ except FileCopyException, e:
w.pop()
method.unmountCD()
intf.messageWindow(_("Error"),
@@ -170,7 +170,7 @@ def readPackages(intf, method, id):
while grpset is None:
try:
grpset = method.readComps(hdrlist)
- except FileCopyException:
+ except FileCopyException, e:
method.unmountCD()
intf.messageWindow(_("Error"),
_("Unable to read comps file. This may be "
@@ -1567,22 +1567,33 @@ def betaNagScreen(intf, dir):
# FIXME: this is a kind of poor way to do this, but it will work for now
def selectLanguageSupportGroups(grpset, langSupport):
+ if not grpset.groups.has_key("language-support"):
+ return
+
+ langSupport.getDefault()
sup = langSupport.supported
if len(sup) == 0:
sup = langSupport.getAllSupported()
- for group in grpset.groups.values():
+ langs = []
+ for name in sup:
+ try:
+ lang = langSupport.langInfoByName[name][0]
+ langs.extend(language.expandLangs(lang))
+ except:
+ continue
+
+ grp = grpset.groups["language-support"]
+ for (pid, pdict) in grp.packages.items():
+ if pdict['meta'] != 1:
+ continue
+ if not grpset.groups.has_key(pid):
+ continue
+ group = grpset.groups[pid]
xmlgrp = grpset.compsxml.groups[group.basename]
- langs = []
- for name in sup:
- try:
- lang = langSupport.langInfoByName[name][0]
- langs.extend(language.expandLangs(lang))
- except:
- continue
-
+
if group.langonly is not None and group.langonly in langs:
- group.select()
+ grp.selectPackage(pid)
for package in xmlgrp.pkgConditionals.keys():
req = xmlgrp.pkgConditionals[package]
if not grpset.hdrlist.has_key(package):
@@ -1594,7 +1605,5 @@ def selectLanguageSupportGroups(grpset, langSupport):
grpset.hdrlist[req].addDeps([package], main = 0)
if grpset.hdrlist[req].isSelected():
grpset.hdrlist[package].select()
- sys.stdout.flush()
grpset.hdrlist[package].usecount += grpset.hdrlist[req].usecount - 1
group.selectDeps([package], uses = grpset.hdrlist[req].usecount)
-