VMware-Photon-OS/installer/linuxselector.py

47 lines
1.8 KiB
Python

#
# Copyright (C) 2017 vmware inc.
#
# Author: Xiaolin Li <xiaolinl@vmware.com>
from menu import Menu
from window import Window
from actionresult import ActionResult
class LinuxSelector(object):
def __init__(self, maxy, maxx, install_config):
self.install_config = install_config
self.maxx = maxx
self.maxy = maxy
self.win_width = 60
self.win_height = 13
self.win_starty = (self.maxy - self.win_height) // 2
self.win_startx = (self.maxx - self.win_width) // 2
self.menu_starty = self.win_starty + 6
self.menu_items = []
self.menu_items.append(("1. VMware hypervisor optimized", self.set_linux_esx_installation, True))
self.menu_items.append(("2. Generic", self.set_linux_esx_installation, False))
self.host_menu = Menu(self.menu_starty, self.maxx, self.menu_items,
default_selected=0, tab_enable=False)
self.window = Window(self.win_height, self.win_width, self.maxy, self.maxx,
'Select Linux kernel to install', True, tab_enabled=False,
position=1, can_go_next=True)
self.window.set_action_panel(self.host_menu)
def set_linux_esx_installation(self, is_linux_esx):
self.install_config['install_linux_esx'] = is_linux_esx
return ActionResult(True, None)
def display(self):
if 'ostree' in self.install_config:
return ActionResult(None, {"inactive_screen": True})
self.window.addstr(0, 0, 'The installer has detected that you are installing')
self.window.addstr(1, 0, 'Photon OS on a VMware hypervisor.')
self.window.addstr(2, 0, 'Which type of Linux kernel would you like to install?')
return self.window.do_action()