[PATCH] DNFPayload: Add languageGroups().

Martin Kolman mkolman at redhat.com
Wed Mar 12 15:49:58 UTC 2014


On Wed, 2014-03-12 at 16:14 +0100, Ales Kozumplik wrote:
> From: Ales Kozumplik <ales at redhat.com>
> 
> ---
>  pyanaconda/packaging/dnfpayload.py | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py
> index 8a91af5..23c8623 100644
> --- a/pyanaconda/packaging/dnfpayload.py
> +++ b/pyanaconda/packaging/dnfpayload.py
> @@ -33,6 +33,7 @@ import operator
>  import pyanaconda.constants as constants
>  import pyanaconda.errors as errors
>  import pyanaconda.iutil
> +import pyanaconda.localization
>  import pyanaconda.packaging as packaging
>  import sys
>  import time
> @@ -515,6 +516,18 @@ class DNFPayload(packaging.PackagePayload):
>          except (dnf.exceptions.RepoError, KeyError):
>              return super(DNFPayload, self).isRepoEnabled(repo_id)
>  
> +    def languageGroups(self):
> +        locales = [self.data.lang.lang] + self.data.lang.addsupport
> +        match_fn = pyanaconda.localization.langcode_matches_locale
> +        gids = set()
> +        gl_tuples = ((g.id, g.lang_only) for g in self._base.comps.groups_iter())
> +        for (gid, lang) in gl_tuples:
> +            for locale in locales:
> +                if match_fn(lang, locale):
> +                    gids.add(gid)
> +        log.info('languageGroups: %s', gids)
> +        return list(gids)
> +
>      def preInstall(self, packages=None, groups=None):
>          super(DNFPayload, self).preInstall()
>          self._required_pkgs = packages
Looks good to me, ACK.



More information about the anaconda-patches mailing list