From c4ce2dc3afb422937a85a4a2e888b1a3a282672b Mon Sep 17 00:00:00 2001 From: Sergey Cherevko Date: Tue, 24 Oct 2023 12:41:45 +0300 Subject: [PATCH 11/11] Add MSVSphere identification support --- data/liveinst/gnome/fedora-welcome.desktop | 4 +- data/liveinst/gnome/fedora-welcome.js | 2 +- po/ru.po | 190 +++++++++++++++--- pyanaconda/product.py | 36 +++- .../ui/gui/spokes/installation_progress.py | 8 +- pyanaconda/ui/gui/spokes/lib/accordion.py | 2 +- .../ui/gui/spokes/lib/storage_dialogs.py | 4 +- pyanaconda/ui/gui/spokes/welcome.py | 21 +- pyanaconda/vnc.py | 42 +++- 9 files changed, 260 insertions(+), 49 deletions(-) diff --git a/data/liveinst/gnome/fedora-welcome.desktop b/data/liveinst/gnome/fedora-welcome.desktop index 90f5678..abbbff3 100644 --- a/data/liveinst/gnome/fedora-welcome.desktop +++ b/data/liveinst/gnome/fedora-welcome.desktop @@ -1,6 +1,6 @@ [Desktop Entry] -Name=Welcome to MSVSphere -Name[ru]=Добро пожаловать в МСВСфера +Name=Welcome to MSVSphere ARM +Name[ru]=Добро пожаловать в МСВСфера АРМ Exec=/usr/share/anaconda/gnome/fedora-welcome Terminal=false Type=Application diff --git a/data/liveinst/gnome/fedora-welcome.js b/data/liveinst/gnome/fedora-welcome.js index 4c0a66a..120d718 100755 --- a/data/liveinst/gnome/fedora-welcome.js +++ b/data/liveinst/gnome/fedora-welcome.js @@ -62,7 +62,7 @@ const WelcomeWindow = new Lang.Class({ default_width: 600, default_height: 550, skip_taskbar_hint: true, - title: _("Welcome to MSVSphere"), + title: _("Welcome to MSVSphere ARM"), window_position: Gtk.WindowPosition.CENTER }); this.window.connect('key-press-event', Lang.bind(this, function(w, event) { diff --git a/po/ru.po b/po/ru.po index 8340e9e..7eed72b 100644 --- a/po/ru.po +++ b/po/ru.po @@ -461,13 +461,13 @@ msgstr "" #: pyanaconda/core/constants.py:157 msgid "" -"This hardware (or a combination thereof) is not supported by Red Hat. For " -"more information on supported hardware, please refer to http://www.redhat." -"com/hardware." +"This hardware (or a combination thereof) is not supported by MSVSphere. " +"For more information on supported hardware, please refer to " +"https://msvsphere-os.ru." msgstr "" -"Это аппаратное обеспечение (или их комбинация) не поддерживается Red Hat. " -"Для получения дополнительной информации о поддерживаемом оборудовании см. " -"http://www.redhat.com/hardware." +"Это аппаратное обеспечение (или их комбинация) не поддерживается " +"МСВСфера ОС. Для получения дополнительной информации о поддерживаемом " +"оборудовании см. https://msvsphere-os.ru." #: pyanaconda/core/constants.py:163 msgid "" @@ -932,6 +932,36 @@ msgstr "Заполните отмеченные секции, прежде че msgid "What language would you like to use during the installation process?" msgstr "Какой язык вы хотите использовать в процессе установки?" +#: pyanaconda/ui/gui/spokes/welcome.py:278 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s Server" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s Сервер" + +#: pyanaconda/ui/gui/spokes/welcome.py:280 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s ARM" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s АРМ" + +#: pyanaconda/ui/gui/spokes/welcome.py:282 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s Cinnamon" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s Cinnamon" + +#: pyanaconda/ui/gui/spokes/welcome.py:284 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s KDE" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s KDE" + +#: pyanaconda/ui/gui/spokes/welcome.py:286 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s XFCE" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s XFCE" + +#: pyanaconda/ui/gui/spokes/welcome.py:288 +#, python-format +msgid "WELCOME TO MSVSphere %(version)s OS" +msgstr "ДОБРО ПОЖАЛОВАТЬ В МСВСфера %(version)s ОС" + #: pyanaconda/ui/gui/spokes/welcome.py:209 #, python-format msgid "WELCOME TO %(name)s %(version)s." @@ -1834,7 +1864,7 @@ msgid "" "you'll be able to view their details here." msgstr "" "Здесь будет показана информация о созданных точках монтирования для " -"установки %(name)s %(version)s." +"установки МСВСфера %(version)s OC." #: pyanaconda/ui/gui/spokes/custom_storage.py:615 #: pyanaconda/ui/gui/spokes/advstorage/nvdimm.glade:178 @@ -1931,7 +1961,7 @@ msgid "" "of available space, including %(software)s for software and " "%(swap)s for swap space." msgstr "" -"Для установки %(product)s требуется %(total)s, в том числе " +"Для установки МСВСфера ОС требуется %(total)s, в том числе " "%(software)s для программ и %(swap)s для подкачки." #: pyanaconda/ui/gui/spokes/lib/storage_dialogs.py:81 @@ -1942,7 +1972,7 @@ msgid "" "%(software)s for software and %(swap)s for swap space." msgstr "" "Для программного обеспечения " -"%(product)s требуется %(total)s пространства, в том числе " +"МСВСфера ОС требуется %(total)s пространства, в том числе " "%(software)s для программ и %(swap)s для подкачки." #: pyanaconda/ui/gui/spokes/lib/storage_dialogs.py:132 @@ -1953,11 +1983,11 @@ msgstr "%s На выбранных дисках доступно:" #: pyanaconda/ui/gui/spokes/lib/storage_dialogs.py:142 #, python-format msgid "" -"You don't have enough space available to install %s. You can shrink " +"You don't have enough space available to install %(name)s. You can shrink " "or remove existing partitions via our guided reclaim space tool, or you can " "adjust your partitions on your own in the custom partitioning interface." msgstr "" -"Недостаточно места для установки %s. Можно уменьшить или удалить " +"Недостаточно места для установки МСВСфера ОС. Можно уменьшить или удалить " "существующие разделы с помощью помощника или самостоятельно выбрать размеры " "разделов в окне настройки разделов." @@ -1967,7 +1997,7 @@ msgid "" " You don't have enough space available to install %(product)s, even " "if you used all of the free space available on the selected disks." msgstr "" -" Недостаточно места для установки %(product)s, даже если " +" Недостаточно места для установки МСВСфера ОС, даже если " "использовать все свободное место на выбранных дисках." #: pyanaconda/ui/gui/spokes/lib/storage_dialogs.py:178 @@ -1978,10 +2008,10 @@ msgid "" "could add more disks for additional space, modify your software selection to " "install a smaller version of %(productName)s, or quit the installer." msgstr "" -"Недостаточно места для установки %(productName)s, даже если " +"Недостаточно места для установки МСВСфера ОС, даже если " "использовать всё свободное место на выбранных дисках. Можно добавить ещё " "диски, чтобы получить дополнительное место, изменить выбор программного " -"обеспечения, чтобы установить меньший вариант %(productName)s, или " +"обеспечения, чтобы установить меньший вариант МСВСфера ОС, или " "покинуть программу установки." #: pyanaconda/ui/gui/spokes/lib/network_secret_agent.py:180 @@ -2041,7 +2071,7 @@ msgid "" "You haven't created any mount points for your %(product)s %(version)s " "installation yet. You can:" msgstr "" -"Вы еще не создали точки монтирования для установки %(product)s %(version)s. " +"Вы еще не создали точки монтирования для установки МСВСфера %(version)s OC. " "Вы можете:" #: pyanaconda/ui/gui/spokes/lib/accordion.py:479 @@ -2073,6 +2103,10 @@ msgstr "" "_Автоматически созданные точки монтирования могут быть зашифрованы по " "умолчанию:" +#: pyanaconda/ui/gui/spokes/lib/accordion.py:547 +msgid "Encrypt my data." +msgstr "Зашифровать данные." + #: pyanaconda/ui/gui/spokes/lib/subscription.py:66 msgid "Other ({})" msgstr "Другой ({})" @@ -2370,8 +2404,8 @@ msgid "" "%s is now successfully installed and ready for you to use!\n" "Go ahead and reboot your system to start using it!" msgstr "" -"%s успешно установлена и готова к использованию!\n" -"Давайте, перезагружайте систему и начинайте использовать ее!" +"МСВСфера ОС установлена и готова к работе.\n" +"Необходимо перезагрузить систему чтобы приступить к использованию." #: pyanaconda/ui/gui/spokes/installation_progress.py:163 #, python-format @@ -2379,8 +2413,8 @@ msgid "" "%s is now successfully installed and ready for you to use!\n" "Go ahead and quit the application to start using it!" msgstr "" -"%s успешно установлено и готово к использованию!\n" -"Выйдите из приложения и начните использовать его!" +"МСВСфера ОС установлена и готова к работе.\n" +"Необходимо выйти из приложения чтобы приступить к использованию." #: pyanaconda/ui/gui/__init__.py:365 widgets/src/BaseWindow.c:151 msgid "Help!" @@ -3183,7 +3217,37 @@ msgstr "Форматирование устройств DASD" msgid "Probing storage" msgstr "Проверка устройств хранения" -#: pyanaconda/product.py:69 +#: pyanaconda/product.py:83 +#, python-format +msgid "MSVSphere %(productVersion)s Server INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s Сервер" + +#: pyanaconda/product.py:85 +#, python-format +msgid "MSVSphere %(productVersion)s ARM INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s АРМ" + +#: pyanaconda/product.py:87 +#, python-format +msgid "MSVSphere %(productVersion)s Cinnamon INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s Cinnamon" + +#: pyanaconda/product.py:89 +#, python-format +msgid "MSVSphere %(productVersion)s KDE INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s KDE" + +#: pyanaconda/product.py:91 +#, python-format +msgid "MSVSphere %(productVersion)s XFCE INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s XFCE" + +#: pyanaconda/product.py:93 +#, python-format +msgid "MSVSphere %(productVersion)s OS INSTALLATION" +msgstr "УСТАНОВКА МСВСфера %(productVersion)s ОС" + +#: pyanaconda/product.py:95 #, python-format msgid "%(productName)s %(productVersion)s INSTALLATION" msgstr "УСТАНОВКА %(productName)s %(productVersion)s" @@ -3422,7 +3486,7 @@ msgid "" "recommended for a normal %(productName)s install." msgstr "" "Размер раздела %(mount)s меньше %(size)s, что меньше рекомендованного " -"размера для обычной установки %(productName)s." +"размера для обычной установки МСВСфера ОС." #: pyanaconda/modules/storage/checker/utils.py:131 #, python-format @@ -3839,7 +3903,7 @@ msgstr "Не удалось сменить устройство." #: pyanaconda/modules/storage/partitioning/interactive/utils.py:213 #, python-brace-format msgid "New {name} {version} Installation" -msgstr "Новая установка {name} {version}" +msgstr "Новая установка МСВСфера {version} ОС" #: pyanaconda/modules/storage/partitioning/interactive/utils.py:275 msgid "Cannot set label on file system." @@ -4452,12 +4516,72 @@ msgstr "Для установки необходимо выбрать хотя msgid "Invalid time source." msgstr "Неверный источник времени." -#: pyanaconda/vnc.py:79 +#: pyanaconda/vnc.py:81 +#, python-format +msgid "MSVSphere %(productVersion)s Server installation" +msgstr "Установка МСВСфера %(productVersion)s Сервер" + +#: pyanaconda/vnc.py:83 +#, python-format +msgid "MSVSphere %(productVersion)s ARM installation" +msgstr "Установка МСВСфера %(productVersion)s АРМ" + +#: pyanaconda/vnc.py:85 +#, python-format +msgid "MSVSphere %(productVersion)s Cinnamon installation" +msgstr "Установка МСВСфера %(productVersion)s Cinnamon" + +#: pyanaconda/vnc.py:87 +#, python-format +msgid "MSVSphere %(productVersion)s KDE installation" +msgstr "Установка МСВСфера %(productVersion)s KDE" + +#: pyanaconda/vnc.py:89 +#, python-format +msgid "MSVSphere %(productVersion)s XFCE installation" +msgstr "Установка МСВСфера %(productVersion)s XFCE" + +#: pyanaconda/vnc.py:91 +#, python-format +msgid "MSVSphere %(productVersion)s OS installation" +msgstr "Установка МСВСфера %(productVersion)s ОС" + +#: pyanaconda/vnc.py:93 #, python-format msgid "%(productName)s %(productVersion)s installation" msgstr "Установка %(productName)s %(productVersion)s" -#: pyanaconda/vnc.py:148 +#: pyanaconda/vnc.py:159 +#, python-format +msgid "MSVSphere %(productVersion)s Server installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s Сервер на %(name)s" + +#: pyanaconda/vnc.py:162 +#, python-format +msgid "MSVSphere %(productVersion)s ARM installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s АРМ на %(name)s" + +#: pyanaconda/vnc.py:162 +#, python-format +msgid "MSVSphere %(productVersion)s Cinnamon installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s Cinnamon на %(name)s" + +#: pyanaconda/vnc.py:162 +#, python-format +msgid "MSVSphere %(productVersion)s KDE installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s KDE на %(name)s" + +#: pyanaconda/vnc.py:162 +#, python-format +msgid "MSVSphere %(productVersion)s XFCE installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s XFCE на %(name)s" + +#: pyanaconda/vnc.py:165 +#, python-format +msgid "MSVSphere %(productVersion)s OS installation on host %(name)s" +msgstr "Установка МСВСфера %(productVersion)s ОС на %(name)s" + +#: pyanaconda/vnc.py:168 #, python-format msgid "%(productName)s %(productVersion)s installation on host %(name)s" msgstr "Установка %(productName)s %(productVersion)s на %(name)s" @@ -7619,22 +7743,22 @@ msgstr "Настройка Liveinst" #: data/liveinst/gnome/fedora-welcome.desktop:3 #: data/liveinst/gnome/fedora-welcome.js:65 -msgid "Welcome to Fedora" -msgstr "Добро пожаловать в Fedora" +msgid "Welcome to MSVSphere ARM" +msgstr "Добро пожаловать в МСВСфера АРМ" #: data/liveinst/gnome/fedora-welcome.js:94 -msgid "Try Fedora" -msgstr "Попробуйте Fedora" +msgid "Try MSVSphere" +msgstr "Попробовать в режиме Live" #: data/liveinst/gnome/fedora-welcome.js:110 msgid "" -"You are currently running Fedora from live media.\n" -"You can install Fedora now, or choose \"Install to Hard Drive\" in the " +"You are currently running MSVSphere from live media.\n" +"You can install MSVSphere now, or choose \"Install to Hard Drive\" in the " "Activities Overview at any later time." msgstr "" -"Fedora запущена с установочного диска.\n" -"Вы можете установить Fedora сейчас или в любое время выбрать «Установить на " -"жесткий диск» в меню «Обзор»." +"МСВСфера АРМ запущена с установочного диска.\n" +"Вы можете установить операционную систему сейчас или в любое время выбрать " +"«Установить на жесткий диск» в меню «Обзор»." #: data/liveinst/gnome/fedora-welcome.js:130 msgid "" diff --git a/pyanaconda/product.py b/pyanaconda/product.py index 9dbfe1f..140dbee 100644 --- a/pyanaconda/product.py +++ b/pyanaconda/product.py @@ -19,6 +19,7 @@ import configparser import os +import re from pyanaconda.core.i18n import _ @@ -64,9 +65,42 @@ def trim_product_version_for_ui(version): productVersion = trim_product_version_for_ui(productVersion) +if productName.startswith("MSVSphere"): + productBase = "MSVSphere" + if productName == "MSVSphere Server" or \ + (productName == "MSVSphere" and productVariant == "Minimal"): + productFlavor = "Server" + elif productName == "MSVSphere" and productVariant == "BaseOS": + productFlavor = "OS" + elif productName == "MSVSphere": + os_release = open("/etc/os-release", "r") + for line in os_release: + match = re.match("VERSION=.*\((.*?)\)", line) + if match: + productFlavor = match.group(1) + else: + productFlavor = "OS" +else: + productBase = productName + productFlavor = None + def distributionText(): - return _("%(productName)s %(productVersion)s INSTALLATION") % { + if productBase == "MSVSphere" and productFlavor == "Server": + distro_text = _("MSVSphere %(productVersion)s Server INSTALLATION") + elif productBase == "MSVSphere" and productFlavor == "ARM": + distro_text = _("MSVSphere %(productVersion)s ARM INSTALLATION") + elif productBase == "MSVSphere" and productFlavor == "Cinnamon": + distro_text = _("MSVSphere %(productVersion)s Cinnamon INSTALLATION") + elif productBase == "MSVSphere" and productFlavor == "KDE": + distro_text = _("MSVSphere %(productVersion)s KDE INSTALLATION") + elif productBase == "MSVSphere" and productFlavor == "XFCE": + distro_text = _("MSVSphere %(productVersion)s XFCE INSTALLATION") + elif productBase == "MSVSphere" and productFlavor == "OS": + distro_text = _("MSVSphere %(productVersion)s OS INSTALLATION") + else: + distro_text = _("%(productName)s %(productVersion)s INSTALLATION") + return distro_text % { "productName": productName.upper(), "productVersion": productVersion.upper() } diff --git a/pyanaconda/ui/gui/spokes/installation_progress.py b/pyanaconda/ui/gui/spokes/installation_progress.py index c2dfbaf..de1fe76 100644 --- a/pyanaconda/ui/gui/spokes/installation_progress.py +++ b/pyanaconda/ui/gui/spokes/installation_progress.py @@ -155,14 +155,14 @@ class ProgressSpoke(StandaloneSpoke): # Set the reboot label. if conf.target.is_hardware: continue_text = _( - "%s is now successfully installed and ready for you to use!\n" + "%(name)s is now successfully installed and ready for you to use!\n" "Go ahead and reboot your system to start using it!" - ) % productName + ) % {"name": productName} else: continue_text = _( - "%s is now successfully installed and ready for you to use!\n" + "%(name)s is now successfully installed and ready for you to use!\n" "Go ahead and quit the application to start using it!" - ) % productName + ) % {"name": productName} label = self.builder.get_object("rebootLabel") label.set_text(continue_text) diff --git a/pyanaconda/ui/gui/spokes/lib/accordion.py b/pyanaconda/ui/gui/spokes/lib/accordion.py index 32801df..5e2e2b1 100644 --- a/pyanaconda/ui/gui/spokes/lib/accordion.py +++ b/pyanaconda/ui/gui/spokes/lib/accordion.py @@ -544,7 +544,7 @@ class CreateNewPage(BasePage): ) self._createBox.attach(label, 0, 6, 2, 1) - checkbox = Gtk.CheckButton(label="Encrypt my data.") + checkbox = Gtk.CheckButton(label=_("Encrypt my data.")) checkbox.connect("toggled", encrypted_changed_cb) checkbox.set_active(default_encryption) checkbox.set_margin_start(18) diff --git a/pyanaconda/ui/gui/spokes/lib/storage_dialogs.py b/pyanaconda/ui/gui/spokes/lib/storage_dialogs.py index 2f8338b..e330641 100644 --- a/pyanaconda/ui/gui/spokes/lib/storage_dialogs.py +++ b/pyanaconda/ui/gui/spokes/lib/storage_dialogs.py @@ -140,10 +140,10 @@ class NeedSpaceDialog(InstallOptionsDialogBase): self._set_free_space_labels(disk_free, fs_free) label_text = _("You don't have enough space available to install " - "%s. You can shrink or remove existing partitions " + "%(name)s. You can shrink or remove existing partitions " "via our guided reclaim space tool, or you can adjust your " "partitions on your own in the custom partitioning " - "interface.") % escape_markup(productName) + "interface.") % {"name": escape_markup(productName)} self.builder.get_object("need_space_options_label").set_markup(label_text) self._add_modify_watcher(label) diff --git a/pyanaconda/ui/gui/spokes/welcome.py b/pyanaconda/ui/gui/spokes/welcome.py index de71615..7937f2c 100644 --- a/pyanaconda/ui/gui/spokes/welcome.py +++ b/pyanaconda/ui/gui/spokes/welcome.py @@ -35,7 +35,10 @@ from pyanaconda.ui.gui.spokes.lib.lang_locale_handler import LangLocaleHandler from pyanaconda.ui.gui.spokes.lib.unsupported_hardware import UnsupportedHardwareDialog from pyanaconda import localization -from pyanaconda.product import distributionText, isFinal, productName, productVersion +from pyanaconda.product import ( + distributionText, isFinal, productName, productVersion, productBase, + productFlavor +) from pyanaconda import flags from pyanaconda.core.i18n import _ from pyanaconda.core.util import ipmi_abort @@ -206,7 +209,21 @@ class WelcomeLanguageSpoke(StandaloneSpoke, LangLocaleHandler): # The welcome label is special - it has text that needs to be substituted. welcomeLabel = self.builder.get_object("welcomeLabel") - welcomeLabel.set_text(_("WELCOME TO %(name)s %(version)s.") % + if productBase == "MSVSphere" and productFlavor == "Server": + welcome_text = _("WELCOME TO MSVSphere %(version)s Server") + elif productBase == "MSVSphere" and productFlavor == "ARM": + welcome_text = _("WELCOME TO MSVSphere %(version)s ARM") + elif productBase == "MSVSphere" and productFlavor == "Cinnamon": + welcome_text = _("WELCOME TO MSVSphere %(version)s Cinnamon") + elif productBase == "MSVSphere" and productFlavor == "KDE": + welcome_text = _("WELCOME TO MSVSphere %(version)s KDE") + elif productBase == "MSVSphere" and productFlavor == "XFCE": + welcome_text = _("WELCOME TO MSVSphere %(version)s XFCE") + elif productBase == "MSVSphere" and productFlavor == "OS": + welcome_text = _("WELCOME TO MSVSphere %(version)s OS") + else: + welcome_text = _("WELCOME TO %(name)s %(version)s") + welcomeLabel.set_text(welcome_text % {"name" : productName.upper(), "version" : productVersion}) # pylint: disable=no-member # Retranslate the language (filtering) entry's placeholder text diff --git a/pyanaconda/vnc.py b/pyanaconda/vnc.py index 5fadcde..c349de8 100644 --- a/pyanaconda/vnc.py +++ b/pyanaconda/vnc.py @@ -76,7 +76,22 @@ class VncServer(object): self.anaconda = None self.log = get_stdout_logger() - self.desktop = _("%(productName)s %(productVersion)s installation")\ + is_sphere = product.productBase == "MSVSphere" + if is_sphere and product.productFlavor == "Server": + desktop_text = _("MSVSphere %(productVersion)s Server installation") + elif is_sphere and product.productFlavor == "ARM": + desktop_text = _("MSVSphere %(productVersion)s ARM installation") + elif is_sphere and product.productFlavor == "Cinnamon": + desktop_text = _("MSVSphere %(productVersion)s Cinnamon installation") + elif is_sphere and product.productFlavor == "KDE": + desktop_text = _("MSVSphere %(productVersion)s KDE installation") + elif is_sphere and product.productFlavor == "XFCE": + desktop_text = _("MSVSphere %(productVersion)s XFCE installation") + elif is_sphere and product.productFlavor == "OS": + desktop_text = _("MSVSphere %(productVersion)s OS installation") + else: + desktop_text = _("%(productName)s %(productVersion)s installation") + self.desktop = desktop_text \ % {'productName': product.productName, 'productVersion': product.productVersion} @@ -145,8 +160,29 @@ class VncServer(object): # figure out product info if host: - self.desktop = _("%(productName)s %(productVersion)s installation " - "on host %(name)s") \ + is_sphere = product.productBase == "MSVSphere" + if is_sphere and product.productFlavor == "Server": + desktop_text = _("MSVSphere %(productVersion)s Server " + "installation on host %(name)s") + elif is_sphere and product.productFlavor == "ARM": + desktop_text = _("MSVSphere %(productVersion)s ARM " + "installation on host %(name)s") + elif is_sphere and product.productFlavor == "Cinnamon": + desktop_text = _("MSVSphere %(productVersion)s Cinnamon " + "installation on host %(name)s") + elif is_sphere and product.productFlavor == "KDE": + desktop_text = _("MSVSphere %(productVersion)s KDE " + "installation on host %(name)s") + elif is_sphere and product.productFlavor == "XFCE": + desktop_text = _("MSVSphere %(productVersion)s XFCE " + "installation on host %(name)s") + elif is_sphere and product.productFlavor == "OS": + desktop_text = _("MSVSphere %(productVersion)s OS " + "installation on host %(name)s") + else: + desktop_text = _("%(productName)s %(productVersion)s " + "installation on host %(name)s") + self.desktop = desktop_text \ % {'productName': product.productName, 'productVersion': product.productVersion, 'name': host} -- 2.41.0