diff --git a/SOURCES/0001-Added-MSVSphere-support.patch b/SOURCES/0001-Added-MSVSphere-support.patch
new file mode 100644
index 0000000..14b9449
--- /dev/null
+++ b/SOURCES/0001-Added-MSVSphere-support.patch
@@ -0,0 +1,1601 @@
+From 5f43eb2cbce328778292dae9a553ecc963bb30ce Mon Sep 17 00:00:00 2001
+From: tigro <arkadiy.sheyn@softline.com>
+Date: Thu, 24 Aug 2023 10:59:14 +0300
+Subject: [PATCH] Added MSVSphere support
+
+---
+ .../msvsphere-kickstart-desktop.xml           | 305 ++++++++++++++++++
+ .../msvsphere.ru/msvsphere-kickstart-jeos.xml | 237 ++++++++++++++
+ os/msvsphere.ru/msvsphere-8-unknown.xml       | 181 +++++++++++
+ os/msvsphere.ru/msvsphere-8.9.xml             | 176 ++++++++++
+ os/msvsphere.ru/msvsphere-9-unknown.xml       | 175 ++++++++++
+ os/msvsphere.ru/msvsphere-9.2.xml             | 176 ++++++++++
+ os/msvsphere.ru/msvsphere-9.3.xml             | 174 ++++++++++
+ os/msvsphere.ru/msvsphere-unknown.xml         | 102 ++++++
+ 8 files changed, 1526 insertions(+)
+ create mode 100644 install-script/msvsphere.ru/msvsphere-kickstart-desktop.xml
+ create mode 100644 install-script/msvsphere.ru/msvsphere-kickstart-jeos.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-8-unknown.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-8.9.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-9-unknown.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-9.2.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-9.3.xml
+ create mode 100644 os/msvsphere.ru/msvsphere-unknown.xml
+
+diff --git a/install-script/msvsphere.ru/msvsphere-kickstart-desktop.xml b/install-script/msvsphere.ru/msvsphere-kickstart-desktop.xml
+new file mode 100644
+index 0000000..f8fb95b
+--- /dev/null
++++ b/install-script/msvsphere.ru/msvsphere-kickstart-desktop.xml
+@@ -0,0 +1,305 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <install-script id="http://msvsphere.ru/msvsphere/kickstart/desktop">
++    <profile>desktop</profile>
++    <expected-filename>msvsphere.ks</expected-filename>
++    <config>
++      <param name="l10n-keyboard" policy="optional"/>
++      <param name="l10n-language" policy="optional"/>
++      <param name="l10n-timezone" policy="optional"/>
++      <param name="hostname" policy="optional"/>
++      <param name="user-login" policy="required"/>
++      <param name="user-password" policy="optional"/>
++      <param name="admin-password" policy="optional"/>
++      <param name="avatar-location" policy="optional"/>
++      <param name="avatar-disk" policy="optional"/>
++      <param name="target-disk" policy="optional"/>
++      <param name="script-disk" policy="optional"/>
++    </config>
++    <injection-method>cdrom</injection-method>
++    <injection-method>disk</injection-method>
++    <injection-method>floppy</injection-method>
++    <injection-method>initrd</injection-method>
++    <avatar-format>
++      <mime-type>image/png</mime-type>
++    </avatar-format>
++    <template>
++      <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
++        <xsl:output method="text"/>
++        <xsl:template name="hostname">
++          <xsl:choose>
++            <xsl:when test="config/hostname != ''">
++              <xsl:value-of select="config/hostname"/>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>localhost</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="target-disk">
++          <xsl:choose>
++            <xsl:when test="config/target-disk != ''">
++              <xsl:value-of select="config/target-disk"/>
++            </xsl:when>
++            <xsl:when test="os/version &gt; 5.5 or contains(os/version, '-unknown')">
++              <!-- virtio -->
++              <xsl:text>/dev/vda</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <!-- IDE -->
++              <xsl:text>/dev/sda</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="script-disk">
++          <xsl:variable name="script-disk">
++            <xsl:choose>
++              <xsl:when test="config/script-disk != ''">
++                <xsl:value-of select="config/script-disk"/>
++              </xsl:when>
++              <xsl:when test="os/version &gt; 5.5 or contains(os/version, '-unknown')">
++                <xsl:text>/dev/sda</xsl:text>
++              </xsl:when>
++              <xsl:otherwise>
++                <xsl:text>/dev/sdb</xsl:text>
++              </xsl:otherwise>
++            </xsl:choose>
++          </xsl:variable>
++          <xsl:value-of select="substring-after($script-disk, '/dev/')"/>
++        </xsl:template>
++        <!-- The default values of avatar-disk consider the avatar is stored
++             in the same disk as the installation scripts. -->
++        <xsl:template name="avatar-disk">
++          <xsl:choose>
++            <xsl:when test="config/avatar-disk != ''">
++              <xsl:value-of select="config/avatar-disk"/>
++            </xsl:when>
++            <xsl:when test="os/version &gt; 5.5 or contains(os/version, '-unknown')">
++              <xsl:text>/dev/sda</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>/dev/sdb</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template match="/command-line">
++          <xsl:choose>
++            <xsl:when test="os/version &gt; 7">
++              <xsl:text>inst.ks=</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>ks=</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++          <xsl:choose>
++            <xsl:when test="script/preferred-injection-method = 'initrd'">
++              <xsl:text>file:/</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>hd:</xsl:text>
++              <xsl:call-template name="script-disk"/>
++              <xsl:text>:/</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++          <xsl:value-of select="script/expected-filename"/>
++          <xsl:if test="script/installation-source = 'network'">
++            <xsl:choose>
++              <xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++                <xsl:text> method=</xsl:text>
++              </xsl:when>
++              <xsl:otherwise>
++                <xsl:text> inst.repo=</xsl:text>
++              </xsl:otherwise>
++            </xsl:choose>
++            <xsl:call-template name="installation-url"/>
++          </xsl:if>
++        </xsl:template>
++        <xsl:template name="version">
++          <xsl:choose>
++            <xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++              <xsl:text>6</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/version &lt; 8 or os/version = '7-unknown'">
++              <xsl:text>7</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>8</xsl:text>
++              <xsl:if test="contains(os/name, 'Stream')">
++                <xsl:text>-stream</xsl:text>
++              </xsl:if>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="arch">
++          <xsl:choose>
++            <xsl:when test="config/hardware-arch = 'x86_64'">
++              <xsl:text>x86_64</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>i386</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="installation-url">
++          <xsl:choose>
++            <xsl:when test="config/installation-url != ''">
++              <xsl:value-of select="config/installation-url"/>
++            </xsl:when>
++            <xsl:when test="tree/url != ''">
++              <xsl:value-of select="tree/url"/>
++            </xsl:when>
++            <xsl:when test="os/distro = 'centos'">
++              <xsl:text>http://mirror.centos.org/centos/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:choose>
++                <xsl:when test="os/version &lt; 8">
++                  <xsl:text>/os/</xsl:text>
++                  <xsl:call-template name="arch"/>
++                </xsl:when>
++                <xsl:otherwise>
++                  <xsl:text>/BaseOS/</xsl:text>
++                  <xsl:call-template name="arch"/>
++                  <xsl:text>/os/</xsl:text>
++                </xsl:otherwise>
++              </xsl:choose>
++            </xsl:when>
++            <xsl:when test="os/distro = 'almalinux'">
++              <xsl:text>http://repo.almalinux.org/almalinux/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'eurolinux'">
++              <xsl:text>https://fbi.cdn.euro-linux.com/dist/eurolinux/server/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/BaseOS/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'rocky'">
++              <xsl:text>https://download.rockylinux.org/pub/rocky/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'circle'">
++              <xsl:text>https://mirror.cclinux.org/pub/circle/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="appstream-url">
++          <xsl:variable name="url">
++            <xsl:call-template name="installation-url"/>
++          </xsl:variable>
++          <xsl:value-of select="substring-before($url, 'BaseOS')"/>
++          <xsl:text>AppStream</xsl:text>
++          <xsl:value-of select="substring-after($url, 'BaseOS')"/>
++        </xsl:template>
++        <xsl:template match="/install-script-config">
++# Install script for <xsl:value-of select="os/short-id"/> profile <xsl:value-of select="script/profile"/>
++<xsl:if test="script/installation-source = 'media'"><xsl:if test="os/version &lt; 8 or os/version = '6-unknown' or os/version = '7-unknown'">
++install
++  </xsl:if>
++cdrom
++</xsl:if>
++keyboard us
++lang <xsl:value-of select="config/l10n-language"/>
++network --onboot yes --bootproto dhcp --hostname=<xsl:call-template name="hostname"/>
++rootpw dummyPa55w0rd # Actual password set (or unset) in %post below
++firewall --disabled
++<xsl:if test="os/version &lt; 8 or os/version = '6-unknown' or os/version = '7-unknown'">
++authconfig --enableshadow --enablemd5
++</xsl:if>
++timezone --utc <xsl:value-of select="config/l10n-timezone"/>
++bootloader --location=mbr
++zerombr
++
++clearpart --all --drives=<xsl:call-template name="target-disk"/>
++
++firstboot --disable
++
++autopart
++reboot
++
++<xsl:if test="script/installation-source = 'network' or contains(media/variant, 'netinst')">
++url --url=<xsl:call-template name="installation-url"/>
++  <xsl:if test="os/version &gt; 7 or os/version = '8-unknown' or contains(os/name, 'Stream')">
++repo --name=AppStream --baseurl=<xsl:call-template name="appstream-url"/>
++  </xsl:if>
++</xsl:if>
++
++%packages
++@core
++<xsl:choose><xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++@basic-desktop
++@general-desktop
++@desktop-platform
++  </xsl:when><xsl:otherwise><xsl:if test="os/version &lt; 8 or os/version = '7-unknown'">
++@x11
++    </xsl:if>
++@gnome-desktop
++@multimedia
++  </xsl:otherwise></xsl:choose>
++@internet-browser
++@input-methods
++
++qemu-guest-agent
++
++%end
++
++%post --erroronfail
++
++useradd -G wheel <xsl:value-of select="config/user-login"/> # Add user
++if test -z '<xsl:value-of select="config/user-password"/>'; then
++    passwd -d <xsl:value-of select="config/user-login"/> # Make user account passwordless
++else
++    echo '<xsl:value-of select="config/user-password"/>' |passwd --stdin <xsl:value-of select="config/user-login"/>
++fi
++
++if test -z '<xsl:value-of select="config/admin-password"/>'; then
++    passwd -d root # Make root account passwordless
++else
++    echo '<xsl:value-of select="config/admin-password"/>' |passwd --stdin root
++fi
++
++# Set user avatar
++if test -n '<xsl:value-of select="config/avatar-location"/>'; then
++mkdir /mnt/unattended-media
++mount <xsl:call-template name="avatar-disk"/> /mnt/unattended-media
++cp /mnt/unattended-media<xsl:value-of select="config/avatar-location"/> /home/<xsl:value-of select="config/user-login"/>/.face
++umount /mnt/unattended-media
++fi
++
++# Enable autologin
++echo "[daemon]
++AutomaticLoginEnable=true
++AutomaticLogin=<xsl:value-of select="config/user-login"/>
++
++[security]
++
++[xdmcp]
++
++[greeter]
++
++[chooser]
++
++[debug]
++" &gt; /etc/gdm/custom.conf
++
++# Create an osinfo-install-successful file in /root
++touch /root/osinfo-install-successful
++
++%end
++        </xsl:template>
++      </xsl:stylesheet>
++    </template>
++  </install-script>
++</libosinfo>
+diff --git a/install-script/msvsphere.ru/msvsphere-kickstart-jeos.xml b/install-script/msvsphere.ru/msvsphere-kickstart-jeos.xml
+new file mode 100644
+index 0000000..fe47f1d
+--- /dev/null
++++ b/install-script/msvsphere.ru/msvsphere-kickstart-jeos.xml
+@@ -0,0 +1,237 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <install-script id="http://msvsphere.ru/msvsphere/kickstart/jeos">
++    <profile>jeos</profile>
++    <expected-filename>msvsphere.ks</expected-filename>
++    <config>
++      <param name="admin-password" policy="required"/>
++      <param name="user-login" policy="optional"/>
++      <param name="user-password" policy="optional"/>
++      <param name="hostname" policy="optional"/>
++      <param name="l10n-keyboard" policy="optional"/>
++      <param name="l10n-language" policy="optional"/>
++      <param name="l10n-timezone" policy="optional"/>
++      <param name="target-disk" policy="optional"/>
++      <param name="script-disk" policy="optional"/>
++    </config>
++    <injection-method>cdrom</injection-method>
++    <injection-method>disk</injection-method>
++    <injection-method>floppy</injection-method>
++    <injection-method>initrd</injection-method>
++    <template>
++      <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
++        <xsl:output method="text"/>
++        <xsl:template name="hostname">
++          <xsl:choose>
++            <xsl:when test="config/hostname != ''">
++              <xsl:value-of select="config/hostname"/>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>locahost</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="target-disk">
++          <xsl:choose>
++            <xsl:when test="config/target-disk != ''">
++              <xsl:value-of select="config/target-disk"/>
++            </xsl:when>
++            <xsl:when test="os/version &gt; 5.5 or contains(os/version, '-unknown')">
++              <!-- virtio -->
++              <xsl:text>/dev/vda</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <!-- IDE -->
++              <xsl:text>/dev/sda</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="script-disk">
++          <xsl:variable name="script-disk">
++            <xsl:choose>
++              <xsl:when test="config/script-disk != ''">
++                <xsl:value-of select="config/script-disk"/>
++              </xsl:when>
++              <xsl:when test="os/version &gt; 5.5 or contains(os/version, '-unknown')">
++                <xsl:text>/dev/sda</xsl:text>
++              </xsl:when>
++              <xsl:otherwise>
++                <xsl:text>/dev/sdb</xsl:text>
++              </xsl:otherwise>
++            </xsl:choose>
++          </xsl:variable>
++          <xsl:value-of select="substring-after($script-disk, '/dev/')"/>
++        </xsl:template>
++        <xsl:template match="/command-line">
++          <xsl:choose>
++            <xsl:when test="os/version &gt; 7">
++              <xsl:text>inst.ks=</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>ks=</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++          <xsl:choose>
++            <xsl:when test="script/preferred-injection-method = 'initrd'">
++              <xsl:text>file:/</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>hd:</xsl:text>
++              <xsl:call-template name="script-disk"/>
++              <xsl:text>:/</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++          <xsl:value-of select="script/expected-filename"/>
++          <xsl:if test="script/installation-source = 'network'">
++            <xsl:choose>
++              <xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++                <xsl:text> method=</xsl:text>
++              </xsl:when>
++              <xsl:otherwise>
++                <xsl:text> inst.repo=</xsl:text>
++              </xsl:otherwise>
++            </xsl:choose>
++            <xsl:call-template name="installation-url"/>
++          </xsl:if>
++        </xsl:template>
++        <xsl:template name="version">
++          <xsl:choose>
++            <xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++              <xsl:text>6</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/version &lt; 8 or os/version = '7-unknown'">
++              <xsl:text>7</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>8</xsl:text>
++              <xsl:if test="contains(os/name, 'Stream')">
++                <xsl:text>-stream</xsl:text>
++              </xsl:if>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="arch">
++          <xsl:choose>
++            <xsl:when test="config/hardware-arch = 'x86_64'">
++              <xsl:text>x86_64</xsl:text>
++            </xsl:when>
++            <xsl:otherwise>
++              <xsl:text>i386</xsl:text>
++            </xsl:otherwise>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template name="installation-url">
++          <xsl:choose>
++            <xsl:when test="config/installation-url != ''">
++              <xsl:value-of select="config/installation-url"/>
++            </xsl:when>
++            <xsl:when test="tree/url != ''">
++              <xsl:value-of select="tree/url"/>
++            </xsl:when>
++            <xsl:when test="os/distro = 'centos'">
++              <xsl:text>http://mirror.centos.org/centos/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:choose>
++                <xsl:when test="os/version &lt; 8">
++                  <xsl:text>/os/</xsl:text>
++                  <xsl:call-template name="arch"/>
++                </xsl:when>
++                <xsl:otherwise>
++                  <xsl:text>/BaseOS/</xsl:text>
++                  <xsl:call-template name="arch"/>
++                  <xsl:text>/os/</xsl:text>
++                </xsl:otherwise>
++              </xsl:choose>
++            </xsl:when>
++            <xsl:when test="os/distro = 'almalinux'">
++              <xsl:text>http://repo.almalinux.org/almalinux/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'eurolinux'">
++              <xsl:text>https://fbi.cdn.euro-linux.com/dist/eurolinux/server/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/BaseOS/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'rocky'">
++              <xsl:text>https://download.rockylinux.org/pub/rocky/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++            <xsl:when test="os/distro = 'circle'">
++              <xsl:text>https://mirror.cclinux.org/pub/circle/</xsl:text>
++              <xsl:call-template name="version"/>
++              <xsl:text>/BaseOS/</xsl:text>
++              <xsl:call-template name="arch"/>
++              <xsl:text>/os/</xsl:text>
++            </xsl:when>
++          </xsl:choose>
++        </xsl:template>
++        <xsl:template match="/install-script-config">
++# Install script for <xsl:value-of select="os/short-id"/> profile <xsl:value-of select="script/profile"/>
++<xsl:if test="script/installation-source = 'media'"><xsl:if test="os/version &lt; 8 or os/version = '6-unknown' or os/version = '7-unknown'">
++install
++  </xsl:if>
++cdrom
++</xsl:if>
++text
++<!-- FIXME: MSVSphere requires keyboard layout to be a console layout so to do this right, we'll need
++            mapping from language to console layout. -->
++keyboard us
++lang <xsl:value-of select="config/l10n-language"/>
++skipx
++network --onboot yes --bootproto dhcp --hostname=<xsl:call-template name="hostname"/>
++rootpw '<xsl:value-of select="config/admin-password"/>'
++firewall --disabled
++<xsl:if test="os/version &lt; 8 or os/version = '6-unknown' or os/version = '7-unknown'">
++authconfig --enableshadow --enablemd5
++</xsl:if>
++selinux --enforcing
++timezone --utc <xsl:value-of select="config/l10n-timezone"/>
++bootloader --location=mbr
++zerombr
++
++clearpart --all --drives=<xsl:call-template name="target-disk"/>
++
++autopart
++reboot
++
++<xsl:if test="script/installation-source = 'network' or contains(media/variant, 'netinst')">
++url --url=<xsl:call-template name="installation-url"/>
++</xsl:if>
++
++%packages
++<xsl:choose><xsl:when test="os/version &lt; 7 or os/version = '6-unknown'">
++@base
++  </xsl:when><xsl:otherwise><xsl:choose><xsl:when test="os/distro = 'centos' and os/version &lt; 8">
++@^minimal
++      </xsl:when><xsl:otherwise>
++@standard
++      </xsl:otherwise></xsl:choose></xsl:otherwise></xsl:choose>
++@core
++%end
++
++%post --erroronfail
++
++if test -n '<xsl:value-of select="config/user-login"/>' &amp;&amp; test -n '<xsl:value-of select="config/user-password"/>'; then
++  useradd -G wheel <xsl:value-of select="config/user-login"/> # Add user
++  echo '<xsl:value-of select="config/user-password"/>' |passwd --stdin <xsl:value-of select="config/user-login"/>
++fi
++
++# Create an osinfo-install-successful file in /root
++touch /root/osinfo-install-successful
++
++%end
++        </xsl:template>
++      </xsl:stylesheet>
++    </template>
++  </install-script>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-8-unknown.xml b/os/msvsphere.ru/msvsphere-8-unknown.xml
+new file mode 100644
+index 0000000..948e6dd
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-8-unknown.xml
+@@ -0,0 +1,181 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/8-unknown">
++    <short-id>msvsphere8-unknown</short-id>
++    <name>MSVSphere 8 Unknown</name>
++    <name xml:lang="cs">MSVSphere 8 nezn&#xE1;m&#xE1;</name>
++    <name xml:lang="ka">MSVSphere 8 Unknown</name>
++    <name xml:lang="ko">MSVSphere 8 Unknown</name>
++    <name xml:lang="uk">MSVSphere 8 &#x43D;&#x435;&#x432;&#x456;&#x434;&#x43E;&#x43C;&#x430;</name>
++    <name xml:lang="tr">MSVSphere 8 Bilinmeyen</name>
++    <name xml:lang="pt_BR">MSVSphere 8 desconhecido</name>
++    <name xml:lang="pl">MSVSphere 8 (nieznany)</name>
++    <name xml:lang="it">MSVSphere 8 (sconosciuto)</name>
++    <name xml:lang="id">MSVSphere 8 Tak Diketahui</name>
++    <name xml:lang="fr">MSVSphere 8 Inconnue</name>
++    <name xml:lang="de">MSVSphere 8 Unknown</name>
++    <version>8-unknown</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <codename>Ootpa</codename>
++    <upgrades id="http://msvsphere.ru/msvsphere/8.9"/>
++    <derives-from id="http://msvsphere.ru/msvsphere/8.9"/>
++    <media arch="x86_64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>.*MSVSphere-8-([1-9][0-9])(-[0-9]|[1-9][0-9])?.*x86_64.*</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-8-([1-9][0-9])(-[0-9]|[1-9][0-9])?.*aarch64$</volume-id>
++      </iso>
++      <kernel>images/pxeboot/vmlinuz</kernel>
++      <initrd>images/pxeboot/initrd.img</initrd>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <system-id>PPC</system-id>
++        <volume-id>MSVSphere[_-]8[_-]([1-9][0-9])([_-]([0-9]|[1-9][0-9]))?.*ppc64le$</volume-id>
++      </iso>
++      <kernel>ppc/ppc64/vmlinuz</kernel>
++      <initrd>ppc/ppc64/initrd.img</initrd>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-8-([1-9][0-9])(-[0-9]|[1-9][0-9])?.*s390x$</volume-id>
++      </iso>
++    </media>
++    <tree arch="aarch64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.([1-9][0-9])(-[0-9]|[1-9][0-9])?$</version>
++        <arch>aarch64</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="ppc64le">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.([1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>ppc64le</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="s390x">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.([1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>s390x</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="x86_64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.([1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>x86_64</arch>
++      </treeinfo>
++    </tree>
++    <resources arch="ppc64le">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>35184372088832</ram>
++      </maximum>
++    </resources>
++    <resources arch="x86_64">
++      <minimum>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++    <resources arch="s390x">
++      <minimum>
++        <ram>1073741824</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>340</n-cpus>
++        <ram>17592186044416</ram>
++      </maximum>
++      <network-install>
++        <ram>2147483648</ram>
++      </network-install>
++    </resources>
++    <resources arch="aarch64">
++      <minimum>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>256</n-cpus>
++        <ram>1649267441664</ram>
++      </maximum>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <installer>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/jeos"/>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/desktop"/>
++    </installer>
++  </os>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-8.9.xml b/os/msvsphere.ru/msvsphere-8.9.xml
+new file mode 100644
+index 0000000..23e73d3
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-8.9.xml
+@@ -0,0 +1,176 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/8.9">
++    <short-id>msvsphere8.9</short-id>
++    <name>MSVSphere 8.9</name>
++    <name xml:lang="ka">MSVSphere 8.9</name>
++    <name xml:lang="ko">Red Hat &#xAE30;&#xC5C5;&#xC6A9; &#xB9AC;&#xB205;&#xC2A4; 8 .9</name>
++    <name xml:lang="uk">MSVSphere 8.9</name>
++    <name xml:lang="pl">MSVSphere 8.9</name>
++    <name xml:lang="it">MSVSphere 8.9</name>
++    <version>8.9</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <codename>Ootpa</codename>
++    <upgrades id="http://msvsphere.ru/msvsphere/8.8"/>
++    <derives-from id="http://msvsphere.ru/msvsphere/8.8"/>
++    <release-status>prerelease</release-status>
++    <media arch="x86_64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-8-9-(([0-9]|[1-9][0-9])-)?BaseOS-x86_64</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <system-id>PPC</system-id>
++        <volume-id>MSVSphere[_-]8[_-]9[_-](([0-9]|[1-9][0-9])[_-])?BaseOS[_-]ppc64le</volume-id>
++      </iso>
++      <kernel>ppc/ppc64/vmlinuz</kernel>
++      <initrd>ppc/ppc64/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-8-9-(([0-9]|[1-9][0-9])-)?BaseOS-aarch64</volume-id>
++      </iso>
++      <kernel>images/pxeboot/vmlinuz</kernel>
++      <initrd>images/pxeboot/initrd.img</initrd>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-8-9-(([0-9]|[1-9][0-9])-)?BaseOS-s390x</volume-id>
++      </iso>
++    </media>
++    <tree arch="aarch64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.9(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>aarch64</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="ppc64le">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.9(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>ppc64le</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="s390x">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.9(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>s390x</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="x86_64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^8.9(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>x86_64</arch>
++      </treeinfo>
++    </tree>
++    <resources arch="ppc64le">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>35184372088832</ram>
++      </maximum>
++    </resources>
++    <resources arch="x86_64">
++      <minimum>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++    <resources arch="s390x">
++      <minimum>
++        <ram>1073741824</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>340</n-cpus>
++        <ram>17592186044416</ram>
++      </maximum>
++      <network-install>
++        <ram>2147483648</ram>
++      </network-install>
++    </resources>
++    <resources arch="aarch64">
++      <minimum>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>256</n-cpus>
++        <ram>1649267441664</ram>
++      </maximum>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <installer>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/jeos"/>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/desktop"/>
++    </installer>
++  </os>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-9-unknown.xml b/os/msvsphere.ru/msvsphere-9-unknown.xml
+new file mode 100644
+index 0000000..ac77883
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-9-unknown.xml
+@@ -0,0 +1,175 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/9-unknown">
++    <short-id>msvsphere9-unknown</short-id>
++    <name>MSVSphere 9 Unknown</name>
++    <name xml:lang="ka">MSVSphere 9 Unknown</name>
++    <name xml:lang="ko">MSVSphere 9 Unknown</name>
++    <name xml:lang="uk">MSVSphere 9 Unknown</name>
++    <name xml:lang="tr">MSVSphere 9 Bilinmeyen</name>
++    <name xml:lang="pt_BR">MSVSphere 9 desconhecido</name>
++    <name xml:lang="pl">MSVSphere 9 (nieznany)</name>
++    <name xml:lang="it">MSVSphere 9 (sconosciuto)</name>
++    <name xml:lang="id">MSVSphere 9 Tak Diketahui</name>
++    <name xml:lang="de">MSVSphere 9 Unknown</name>
++    <version>9-unknown</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <codename>Plow</codename>
++    <upgrades id="http://msvsphere.ru/msvsphere/9.3"/>
++    <derives-from id="http://msvsphere.ru/msvsphere/9.3"/>
++    <media arch="x86_64">
++      <iso>
++        <volume-id>.*MSVSphere-9-([4-9]|[1-9][0-9])(-[0-9]|[1-9][0-9])?.*x86_64.*</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <volume-id>MSVSphere-9-([4-9]|[1-9][0-9])(-[0-9]|[1-9][0-9])?.*aarch64$</volume-id>
++      </iso>
++      <kernel>images/pxeboot/vmlinuz</kernel>
++      <initrd>images/pxeboot/initrd.img</initrd>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <volume-id>MSVSphere[_-]9[_-]([4-9]|[1-9][0-9])([_-]([0-9]|[1-9][0-9]))?.*ppc64le$</volume-id>
++      </iso>
++      <kernel>ppc/ppc64/vmlinuz</kernel>
++      <initrd>ppc/ppc64/initrd.img</initrd>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <volume-id>MSVSphere-9-([4-9]|[1-9][0-9])(-[0-9]|[1-9][0-9])?.*s390x$</volume-id>
++      </iso>
++    </media>
++    <tree arch="aarch64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.([4-9]|[1-9][0-9])(-[0-9]|[1-9][0-9])?$</version>
++        <arch>aarch64</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="ppc64le">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.([4-9]|[1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>ppc64le</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="s390x">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.([4-9]|[1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>s390x</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="x86_64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.([4-9]|[1-9][0-9])(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>x86_64</arch>
++      </treeinfo>
++    </tree>
++    <resources arch="ppc64le">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>35184372088832</ram>
++      </maximum>
++    </resources>
++    <resources arch="x86_64">
++      <minimum>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++    <resources arch="s390x">
++      <minimum>
++        <ram>1073741824</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>340</n-cpus>
++        <ram>17592186044416</ram>
++      </maximum>
++      <network-install>
++        <ram>2147483648</ram>
++      </network-install>
++    </resources>
++    <resources arch="aarch64">
++      <minimum>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>256</n-cpus>
++        <ram>1649267441664</ram>
++      </maximum>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <installer>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/jeos"/>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/desktop"/>
++    </installer>
++  </os>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-9.2.xml b/os/msvsphere.ru/msvsphere-9.2.xml
+new file mode 100644
+index 0000000..9daa6fc
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-9.2.xml
+@@ -0,0 +1,176 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/9.2">
++    <short-id>msvsphere9.2</short-id>
++    <name>MSVSphere 9.2</name>
++    <name xml:lang="ka">MSVSphere 9.2</name>
++    <name xml:lang="ko">MSVSphere 9.2</name>
++    <name xml:lang="uk">MSVSphere 9.2</name>
++    <name xml:lang="tr">MSVSphere 9.2</name>
++    <name xml:lang="pl">MSVSphere 9.2</name>
++    <name xml:lang="it">MSVSphere 9.2</name>
++    <name xml:lang="de">MSVSphere 9.2</name>
++    <version>9.2</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <codename>Plow</codename>
++    <upgrades id="http://msvsphere.ru/msvsphere/9.1"/>
++    <derives-from id="http://msvsphere.ru/msvsphere/9.1"/>
++    <release-date>2023-05-10</release-date>
++    <!-- MSVSphere 9.2 entries have to cope both with 9.2 and 9.2.x regexes for
++         medias' volume-id and trees' version -->
++    <media arch="x86_64">
++      <iso>
++        <volume-id>MSVSphere-9-2-(([0-9]|[1-9][0-9])-)?BaseOS-x86_64</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <volume-id>MSVSphere[_-]9[_-]2[_-](([0-9]|[1-9][0-9])[_-])?BaseOS[_-]ppc64le</volume-id>
++      </iso>
++      <kernel>ppc/ppc64/vmlinuz</kernel>
++      <initrd>ppc/ppc64/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <volume-id>MSVSphere-9-2-(([0-9]|[1-9][0-9])-)?BaseOS-aarch64</volume-id>
++      </iso>
++      <kernel>images/pxeboot/vmlinuz</kernel>
++      <initrd>images/pxeboot/initrd.img</initrd>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <volume-id>MSVSphere-9-2-(([0-9]|[1-9][0-9])-)?BaseOS-s390x</volume-id>
++      </iso>
++    </media>
++    <tree arch="aarch64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.2(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>aarch64</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="ppc64le">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.2(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>ppc64le</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="s390x">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.2(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>s390x</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="x86_64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.2(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>x86_64</arch>
++      </treeinfo>
++    </tree>
++    <resources arch="ppc64le">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>35184372088832</ram>
++      </maximum>
++    </resources>
++    <resources arch="x86_64">
++      <minimum>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++    <resources arch="s390x">
++      <minimum>
++        <ram>1073741824</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>340</n-cpus>
++        <ram>17592186044416</ram>
++      </maximum>
++      <network-install>
++        <ram>2147483648</ram>
++      </network-install>
++    </resources>
++    <resources arch="aarch64">
++      <minimum>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>256</n-cpus>
++        <ram>1649267441664</ram>
++      </maximum>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <installer>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/jeos"/>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/desktop"/>
++    </installer>
++  </os>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-9.3.xml b/os/msvsphere.ru/msvsphere-9.3.xml
+new file mode 100644
+index 0000000..1f0c298
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-9.3.xml
+@@ -0,0 +1,174 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/9.3">
++    <short-id>msvsphere9.3</short-id>
++    <name>MSVSphere 9.3</name>
++    <name xml:lang="ka">MSVSphere 9.3</name>
++    <name xml:lang="ko">MSVSphere 9.3</name>
++    <name xml:lang="uk">MSVSphere 9.3</name>
++    <name xml:lang="pl">MSVSphere 9.3</name>
++    <name xml:lang="it">MSVSphere 9.3</name>
++    <version>9.3</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <codename>Plow</codename>
++    <upgrades id="http://msvsphere.ru/msvsphere/9.1"/>
++    <derives-from id="http://msvsphere.ru/msvsphere/9.1"/>
++    <release-status>prerelease</release-status>
++    <!-- MSVSphere 9.3 entries have to cope both with 9.3 and 9.3.x regexes for
++         medias' volume-id and trees' version -->
++    <media arch="x86_64">
++      <iso>
++        <volume-id>MSVSphere-9-3-(([0-9]|[1-9][0-9])-)?BaseOS-x86_64</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <volume-id>MSVSphere[_-]9[_-]3[_-](([0-9]|[1-9][0-9])[_-])?BaseOS[_-]ppc64le</volume-id>
++      </iso>
++      <kernel>ppc/ppc64/vmlinuz</kernel>
++      <initrd>ppc/ppc64/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <volume-id>MSVSphere-9-3-(([0-9]|[1-9][0-9])-)?BaseOS-aarch64</volume-id>
++      </iso>
++      <kernel>images/pxeboot/vmlinuz</kernel>
++      <initrd>images/pxeboot/initrd.img</initrd>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <volume-id>MSVSphere-9-3-(([0-9]|[1-9][0-9])-)?BaseOS-s390x</volume-id>
++      </iso>
++    </media>
++    <tree arch="aarch64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.3(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>aarch64</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="ppc64le">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.3(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>ppc64le</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="s390x">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.3(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>s390x</arch>
++      </treeinfo>
++    </tree>
++    <tree arch="x86_64">
++      <treeinfo>
++        <family>MSVSphere</family>
++        <version>^9.3(.([0-9]|[1-9][0-9]))?$</version>
++        <arch>x86_64</arch>
++      </treeinfo>
++    </tree>
++    <resources arch="ppc64le">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>35184372088832</ram>
++      </maximum>
++    </resources>
++    <resources arch="x86_64">
++      <minimum>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>768</n-cpus>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++    <resources arch="s390x">
++      <minimum>
++        <ram>1073741824</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>340</n-cpus>
++        <ram>17592186044416</ram>
++      </maximum>
++      <network-install>
++        <ram>2147483648</ram>
++      </network-install>
++    </resources>
++    <resources arch="aarch64">
++      <minimum>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <n-cpus>256</n-cpus>
++        <ram>1649267441664</ram>
++      </maximum>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <installer>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/jeos"/>
++      <script id="http://msvsphere.ru/msvsphere/kickstart/desktop"/>
++    </installer>
++  </os>
++</libosinfo>
+diff --git a/os/msvsphere.ru/msvsphere-unknown.xml b/os/msvsphere.ru/msvsphere-unknown.xml
+new file mode 100644
+index 0000000..b5102f9
+--- /dev/null
++++ b/os/msvsphere.ru/msvsphere-unknown.xml
+@@ -0,0 +1,102 @@
++<?xml version="1.0"?>
++<libosinfo version="0.0.1">
++  <!-- Licensed under the GNU General Public License version 2 or later.
++     See http://www.gnu.org/licenses/ for a copy of the license text -->
++  <os id="http://msvsphere.ru/msvsphere/unknown">
++    <short-id>msvsphere-unknown</short-id>
++    <name>MSVSphere Unknown</name>
++    <name xml:lang="ka">MSVSphere Unknown</name>
++    <name xml:lang="ko">MSVSphere Unknown</name>
++    <name xml:lang="uk">MSVSphere Unknown</name>
++    <name xml:lang="tr">MSVSphere Bilinmeyen</name>
++    <name xml:lang="pt_BR">MSVSphere desconhecido</name>
++    <name xml:lang="pl">MSVSphere (nieznany)</name>
++    <name xml:lang="it">MSVSphere (sconosciuto)</name>
++    <name xml:lang="id">MSVSphere Tak Diketahui</name>
++    <name xml:lang="fr">MSVSphere Inconnue</name>
++    <name xml:lang="de">MSVSphere Unknown</name>
++    <version>unknown</version>
++    <vendor>Red Hat, Inc</vendor>
++    <vendor xml:lang="ka">Red Hat, Inc</vendor>
++    <vendor xml:lang="ko">Red Hat, Inc</vendor>
++    <vendor xml:lang="fi">Red Hat, Inc</vendor>
++    <vendor xml:lang="uk">Red Hat, Inc</vendor>
++    <vendor xml:lang="tr">Red Hat, Inc</vendor>
++    <vendor xml:lang="pt_BR">Red Hat, Inc</vendor>
++    <vendor xml:lang="pl">Red Hat, Inc</vendor>
++    <vendor xml:lang="ja">Red Hat, Inc</vendor>
++    <vendor xml:lang="it">Red Hat, Inc</vendor>
++    <vendor xml:lang="id">Red Hat, Inc</vendor>
++    <vendor xml:lang="fr">Red Hat, Inc</vendor>
++    <vendor xml:lang="es">Red Hat, Inc</vendor>
++    <vendor xml:lang="de">Red Hat, Inc</vendor>
++    <vendor xml:lang="ca">Red Hat, Inc</vendor>
++    <family>linux</family>
++    <distro>msvsphere</distro>
++    <upgrades id="http://msvsphere.ru/msvsphere/9-unknown"/>
++    <media arch="x86_64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-[1-9][0-9]-([0-9]|[1-9][0-9]).*x86_64$</volume-id>
++      </iso>
++      <kernel>isolinux/vmlinuz</kernel>
++      <initrd>isolinux/initrd.img</initrd>
++    </media>
++    <media arch="aarch64">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-[1-9][0-9]-([0-9]|[1-9][0-9]).*aarch64$</volume-id>
++      </iso>
++    </media>
++    <media arch="ppc64">
++      <iso>
++        <system-id>PPC</system-id>
++        <volume-id>MSVSphere-[1-9][0-9]-([0-9]|[1-9][0-9]).*ppc64$</volume-id>
++      </iso>
++    </media>
++    <media arch="ppc64le">
++      <iso>
++        <system-id>PPC</system-id>
++        <volume-id>MSVSphere[_-][1-9][0-9][_-]([0-9]|[1-9][0-9]).*ppc64le$</volume-id>
++      </iso>
++    </media>
++    <media arch="s390x">
++      <iso>
++        <system-id>LINUX</system-id>
++        <volume-id>MSVSphere-[1-9][0-9]-([0-9]|[1-9][0-9]).*s390x$</volume-id>
++      </iso>
++    </media>
++    <resources arch="ppc64">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>4000000000</cpu>
++        <ram>2147483648</ram>
++        <storage>21474836480</storage>
++      </recommended>
++    </resources>
++    <resources arch="all">
++      <minimum>
++        <n-cpus>1</n-cpus>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>10737418240</storage>
++      </minimum>
++      <recommended>
++        <cpu>1000000000</cpu>
++        <ram>1610612736</ram>
++        <storage>21474836480</storage>
++      </recommended>
++      <maximum>
++        <ram>26388279066624</ram>
++      </maximum>
++      <network-install>
++        <ram>3221225472</ram>
++      </network-install>
++    </resources>
++  </os>
++</libosinfo>
+-- 
+2.41.0
+
diff --git a/SPECS/osinfo-db.spec b/SPECS/osinfo-db.spec
index eeb3d10..e72a630 100644
--- a/SPECS/osinfo-db.spec
+++ b/SPECS/osinfo-db.spec
@@ -6,12 +6,13 @@
 Summary: osinfo database files
 Name: osinfo-db
 Version: 20221130
-Release: 1%{?dist}
+Release: 1%{?dist}.inferit
 License: LGPLv2+
 Source0: https://fedorahosted.org/releases/l/i/libosinfo/%{name}-%{version}.tar.xz
 Source1: https://fedorahosted.org/releases/l/i/libosinfo/%{name}-%{version}.tar.xz.asc
 URL: http://libosinfo.org/
 Patch0001: 0001-Add-prereleases-rhel-8.8-and-rhel-9.2.patch
+Patch0002: 0001-Added-MSVSphere-support.patch
 BuildRequires: intltool
 BuildRequires: git-core
 BuildRequires: osinfo-db-tools
@@ -49,6 +50,9 @@ find %{buildroot}/%{_datadir}/osinfo/os/microsoft.com/ -name "win-*.d" -type d -
 %{_datadir}/osinfo/schema
 
 %changelog
+* Thu Aug 24 2023 Arkady L. Shane <ashejn@msvsphere.ru> - 20221130-1.inferit
+- Added MSVSphere support
+
 * Wed Mar 15 2023 MSVSphere Packaging Team <packager@msvsphere.ru> - 20220727-3
 - Rebuilt for MSVSphere 9.1.