mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Merge pull request #30016 from alprs/fix-gen_locale_normalize
Properly normalize locales in locale.gen_locale
This commit is contained in:
commit
e7fe24dc64
1 changed files with 12 additions and 13 deletions
|
@ -238,22 +238,19 @@ def gen_locale(locale, **kwargs):
|
|||
on_ubuntu = __grains__.get('os') == 'Ubuntu'
|
||||
on_gentoo = __grains__.get('os_family') == 'Gentoo'
|
||||
on_suse = __grains__.get('os_family') == 'Suse'
|
||||
|
||||
locale_info = salt.utils.locales.split_locale(locale)
|
||||
|
||||
# if the charmap has not been supplied, normalize by appening it
|
||||
if not locale_info['charmap']:
|
||||
locale_info['charmap'] = locale_info['codeset']
|
||||
locale = salt.utils.locales.join_locale(locale_info)
|
||||
|
||||
if on_debian or on_gentoo: # file-based search
|
||||
search = '/usr/share/i18n/SUPPORTED'
|
||||
|
||||
def search_locale():
|
||||
return __salt__['file.search'](search,
|
||||
'^{0}$'.format(locale),
|
||||
flags=re.MULTILINE)
|
||||
|
||||
valid = search_locale()
|
||||
if not valid and not locale_info['charmap']:
|
||||
# charmap was not supplied, so try copying the codeset
|
||||
locale_info['charmap'] = locale_info['codeset']
|
||||
locale = salt.utils.locales.join_locale(locale_info)
|
||||
valid = search_locale()
|
||||
valid = __salt__['file.search'](search,
|
||||
'^{0}$'.format(locale),
|
||||
flags=re.MULTILINE)
|
||||
else: # directory-based search
|
||||
if on_suse:
|
||||
search = '/usr/share/locale'
|
||||
|
@ -300,7 +297,9 @@ def gen_locale(locale, **kwargs):
|
|||
'-i', "{0}_{1}".format(locale_info['language'],
|
||||
locale_info['territory']),
|
||||
'-f', locale_info['codeset'],
|
||||
locale]
|
||||
'{0}_{1}.{2}'.format(locale_info['language'],
|
||||
locale_info['territory'],
|
||||
locale_info['codeset'])]
|
||||
cmd.append(kwargs.get('verbose', False) and '--verbose' or '--quiet')
|
||||
else:
|
||||
raise CommandExecutionError(
|
||||
|
|
Loading…
Add table
Reference in a new issue