--- pyanaconda/install.py | 2 +- pyanaconda/kickstart.py | 4 ++-- pyanaconda/packaging/yumpayload.py | 20 +++++++++++++++----- 3 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/pyanaconda/install.py b/pyanaconda/install.py index 08b3966..cbaefce 100644 --- a/pyanaconda/install.py +++ b/pyanaconda/install.py @@ -128,7 +128,7 @@ def doInstall(storage, payload, ksdata, instClass): # system is bootable and configurable, and some other packages in order # to finish setting up the system. packages = storage.packages + ["authconfig", "firewalld"] - payload.preInstall(packages=packages, groups=payload.languageGroups(ksdata.lang.lang)) + payload.preInstall(packages=packages, groups=payload.languageGroups()) payload.install()
if flags.flags.livecdInstall: diff --git a/pyanaconda/kickstart.py b/pyanaconda/kickstart.py index 9060c58..bcfcea6 100644 --- a/pyanaconda/kickstart.py +++ b/pyanaconda/kickstart.py @@ -576,9 +576,9 @@ class IscsiName(commands.iscsiname.FC6_IscsiName): blivet.iscsi.iscsi().initiator = self.iscsiname return retval
-class Lang(commands.lang.FC3_Lang): +class Lang(commands.lang.F19_Lang): def __init__(self, *args, **kwargs): - commands.lang.FC3_Lang.__init__(self, *args, **kwargs) + commands.lang.F19_Lang.__init__(self, *args, **kwargs) if not self.lang and not flags.automatedInstall: self.lang = DEFAULT_LANG
diff --git a/pyanaconda/packaging/yumpayload.py b/pyanaconda/packaging/yumpayload.py index 4fc6177..02217ee 100644 --- a/pyanaconda/packaging/yumpayload.py +++ b/pyanaconda/packaging/yumpayload.py @@ -235,6 +235,13 @@ class YumPayload(PackagePayload):
self.txID = None
+ def _writeLangpacksConfig(self): + langs = [self.data.lang.lang] + self.data.lang.addsupport + log.debug("configuring langpacks for %s" % langs) + with open("/etc/yum/pluginconf.d/langpacks.conf", "a") as f: + f.write("# Added by Anaconda\n") + f.write("langpack_locales = %s\n" % ", ".join(langs)) + def _writeYumConfig(self): """ Write out anaconda's main yum configuration file. """ buf = """ @@ -345,6 +352,7 @@ reposdir=%s
releasever = self._yum.conf.yumvar['releasever'] self._writeYumConfig() + self._writeLangpacksConfig() self._resetYum(root=ROOT_PATH, keep_cache=True) log.debug("setting releasever to previous value of %s" % releasever) self._yum.preconf.releasever = releasever @@ -1094,16 +1102,18 @@ reposdir=%s
return groups
- def languageGroups(self, lang): + def languageGroups(self): + langlist = [self.data.lang.lang] + self.data.lang.addsupport groups = [] yum_groups = self._yumGroups
if yum_groups: with _yum_lock: - langs = expand_langs(lang) - groups = map(lambda x: [g.groupid for g in - yum_groups.get_groups() if g.langonly == x], - langs) + for lang in langlist: + langs = expand_langs(lang) + groups.extend(map(lambda x: [g.groupid for g in + yum_groups.get_groups() if g.langonly == x], + langs))
# the map gives us a list of results, this set call reduces # it down to a unique set, then list() makes it back into a list.