[Kimchi-devel] [PATCH V2 1/2] bug fix: add an icon distros list.

Aline Manera alinefm at linux.vnet.ibm.com
Mon Mar 10 14:51:28 UTC 2014


Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>

On 03/10/2014 11:39 AM, shaohef at linux.vnet.ibm.com wrote:
> From: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
>
> Now I create template with rhel iso, but when I create a VM from this
> template, the template info displays differently with other templates.
>
> That's because icon-rhel is missing for it is RED HAT trademark.
>
> But this make us uncomfortable.
> If the icon is missing we should display the default icon
>
> Now there are only 7 icons, include the default icon icon-vm.
>
> $ ls ui/images/*.png
> ui/images/icon-centos.png  ui/images/icon-gentoo.png
> ui/images/icon-debian.png  ui/images/icon-opensuse.png
> ui/images/icon-fedora.png  ui/images/icon-ubuntu.png
> ui/images/icon-vm.png
>
> Signed-off-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
> ---
>   src/kimchi/osinfo.py | 13 +++++++++++--
>   1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/src/kimchi/osinfo.py b/src/kimchi/osinfo.py
> index 106cc0e..905c63a 100644
> --- a/src/kimchi/osinfo.py
> +++ b/src/kimchi/osinfo.py
> @@ -18,12 +18,16 @@
>   # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
>
>   import copy
> +import glob
>   import os
>
>
>   from distutils.version import LooseVersion
>
>
> +from kimchi.config import paths
> +
> +
>   SUPPORTED_ARCHS = {'x86': ('i386', 'x86_64'), 'power': ('ppc', 'ppc64')}
>
>
> @@ -55,6 +59,8 @@ modern_version_bases = {'x86': {'debian': '6.0', 'ubuntu': '7.10',
>                                   'rhel': '6.0', 'fedora': '16', 'gentoo': '0'},
>                           'power': {'rhel': '7.0', 'fedora': '19'}}
>
> +icon_available_distros = [icon[5:-4] for icon in glob.glob1('%s/images/'
> +                          % paths.ui_dir, 'icon-*.png')]
>
>   isolinks = {
>       'debian': {
> @@ -100,15 +106,18 @@ def lookup(distro, version):
>       arch = _get_arch()
>
>       if distro in modern_version_bases[arch]:
> -        params['icon'] = 'images/icon-%s.png' % distro
>           if LooseVersion(version) >= LooseVersion(
>               modern_version_bases[arch][distro]):
>               params.update(template_specs[arch]['modern'])
>           else:
>               params.update(template_specs[arch]['old'])
>       else:
> -        params['icon'] = 'images/icon-vm.png'
>           params['os_distro'] = params['os_version'] = "unknown"
>           params.update(template_specs[arch]['old'])
>
> +    if distro in icon_available_distros:
> +        params['icon'] = 'images/icon-%s.png' % distro
> +    else:
> +        params['icon'] = 'images/icon-vm.png'
> +
>       return params




More information about the Kimchi-devel mailing list