MSVSphere changes

i10-beta changed/i10-beta/lorax-templates-msvsphere-10.0-52.el10
Sergey Cherevko 1 month ago
parent e04012b229
commit 7baa1f1a77
Signed by: scherevko
GPG Key ID: D87CBBC16D2E4A72

@ -0,0 +1,24 @@
From b2cdcabb10b086ccaa265e5ff68a53caaf43dcd1 Mon Sep 17 00:00:00 2001
From: Sergey Cherevko <s.cherevko@msvsphere-os.ru>
Date: Fri, 20 Dec 2024 11:24:03 +0300
Subject: [PATCH 1/8] Remove RHEL specific packages
---
80-rhel/runtime-install.tmpl | 1 -
1 file changed, 1 deletion(-)
diff --git a/80-rhel/runtime-install.tmpl b/80-rhel/runtime-install.tmpl
index 8f2f3b8..864cc57 100644
--- a/80-rhel/runtime-install.tmpl
+++ b/80-rhel/runtime-install.tmpl
@@ -8,7 +8,6 @@ GRUB2VER="1:2.06-67"
## anaconda package
installpkg anaconda anaconda-widgets kdump-anaconda-addon anaconda-install-img-deps
-installpkg redhat-release-eula
## FIXME Pull in device-mapper-multipath
## This *should* be pulled in by libblockdev-plugins-all and libblockdev-mpath but it is not
--
2.43.5

@ -0,0 +1,312 @@
From 1bf4b4e54f1614dd651d7853847c65fcc5a64cd2 Mon Sep 17 00:00:00 2001
From: Eugene Zamriy <evgeniy.zamriy@softline.com>
Date: Wed, 26 Jul 2023 23:51:00 +0300
Subject: [PATCH 2/8] Translate installation image bootloader to Russian
---
80-rhel/aarch64.tmpl | 12 +++++++++-
80-rhel/config_files/aarch64/grub2-efi.cfg | 15 ++++++++----
80-rhel/config_files/x86/grub2-efi.cfg | 13 ++++++----
80-rhel/config_files/x86/isolinux.cfg | 28 ++++++++++++----------
80-rhel/efi.tmpl | 9 ++++++-
80-rhel/x86.tmpl | 25 +++++++++++++++++--
6 files changed, 77 insertions(+), 25 deletions(-)
diff --git a/80-rhel/aarch64.tmpl b/80-rhel/aarch64.tmpl
index 14099d6..353436a 100644
--- a/80-rhel/aarch64.tmpl
+++ b/80-rhel/aarch64.tmpl
@@ -21,6 +21,16 @@ if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3:
isoargs = "-iso-level 3"
else:
isoargs = ""
+
+# define an MSVSphere-specific image flavor constant
+if product.variant in ("Minimal", "Server"):
+ FLAVOR=" Сервер"
+elif product.variant == "Certified":
+ FLAVOR=" Сертифицированная"
+elif product.variant == "BaseOS":
+ FLAVOR=" ОС"
+else:
+ FLAVOR=""
%>
mkdir images
@@ -53,7 +63,7 @@ mkdir ${KERNELDIR}
%>
treeinfo images-${basearch} ${img|basename} ${img}
%endfor
- <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel"/>
+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel, FLAVOR=FLAVOR"/>
%endif
# Create optional product.img and updates.img
diff --git a/80-rhel/config_files/aarch64/grub2-efi.cfg b/80-rhel/config_files/aarch64/grub2-efi.cfg
index 1ce5d33..5dd2002 100644
--- a/80-rhel/config_files/aarch64/grub2-efi.cfg
+++ b/80-rhel/config_files/aarch64/grub2-efi.cfg
@@ -15,7 +15,12 @@ function load_video {
}
load_video
+insmod gfxterm
+set gfxmode=auto
set gfxpayload=keep
+set lang=ru_RU
+terminal_output gfxterm
+loadfont unicode
insmod gzio
insmod part_gpt
insmod ext2
@@ -26,20 +31,20 @@ set timeout=60
search --no-floppy --set=root -l '@ISOLABEL@'
### BEGIN /etc/grub.d/10_linux ###
-menuentry 'Install @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+menuentry 'Установить @PRODUCT@ @VERSION@@FLAVOR@' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ ro
initrd @INITRDPATH@
}
-menuentry 'Test this media & install @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+menuentry 'Проверить носитель и установить @PRODUCT@ @VERSION@@FLAVOR@' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ rd.live.check
initrd @INITRDPATH@
}
-submenu 'Troubleshooting -->' {
- menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class red --class gnu-linux --class gnu --class os {
+submenu 'Устранение неполадок -->' {
+ menuentry 'Установить @PRODUCT@ @VERSION@@FLAVOR@ (базовый графический режим)' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ nomodeset
initrd @INITRDPATH@
}
- menuentry 'Rescue a @PRODUCT@ system' --class red --class gnu-linux --class gnu --class os {
+ menuentry 'Восстановление установленной системы' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ inst.rescue
initrd @INITRDPATH@
}
diff --git a/80-rhel/config_files/x86/grub2-efi.cfg b/80-rhel/config_files/x86/grub2-efi.cfg
index 8c9adad..0d5bd2d 100644
--- a/80-rhel/config_files/x86/grub2-efi.cfg
+++ b/80-rhel/config_files/x86/grub2-efi.cfg
@@ -9,7 +9,12 @@ function load_video {
}
load_video
+insmod gfxterm
+set gfxmode=auto
set gfxpayload=keep
+set lang=ru_RU
+terminal_output gfxterm
+loadfont unicode
insmod gzio
insmod part_gpt
insmod ext2
@@ -20,20 +25,20 @@ set timeout=60
search --no-floppy --set=root -l '@ISOLABEL@'
### BEGIN /etc/grub.d/10_linux ###
-menuentry 'Install @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os {
+menuentry 'Установить @PRODUCT@ @VERSION@@FLAVOR@' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ quiet
initrdefi @INITRDPATH@
}
-menuentry 'Test this media & install @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os {
+menuentry 'Проверить носитель и установить @PRODUCT@ @VERSION@@FLAVOR@' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ rd.live.check quiet
initrdefi @INITRDPATH@
}
-submenu 'Troubleshooting -->' {
+submenu 'Устранение неполадок -->' {
menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ nomodeset quiet
initrdefi @INITRDPATH@
}
- menuentry 'Rescue a @PRODUCT@ system' --class fedora --class gnu-linux --class gnu --class os {
+ menuentry 'Восстановление установленной системы' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ inst.rescue quiet
initrdefi @INITRDPATH@
}
diff --git a/80-rhel/config_files/x86/isolinux.cfg b/80-rhel/config_files/x86/isolinux.cfg
index 216d36f..3cfdbc2 100644
--- a/80-rhel/config_files/x86/isolinux.cfg
+++ b/80-rhel/config_files/x86/isolinux.cfg
@@ -1,6 +1,8 @@
default vesamenu.c32
timeout 600
+font cp866-8x16.psf
+
display boot.msg
# Clear the screen when exiting the menu, instead of leaving the menu displayed.
@@ -8,7 +10,7 @@ display boot.msg
# the menu itself for as long as the screen remains in graphics mode.
menu clear
menu background splash.png
-menu title @PRODUCT@ @VERSION@
+menu title @PRODUCT@ @VERSION@@FLAVOR@
menu vshift 8
menu rows 18
menu margin 8
@@ -53,18 +55,18 @@ menu color cmdline 0 #ffffffff #00000000 none
# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message.
-menu tabmsg Press Tab for full configuration options on menu items.
+menu tabmsg Нажмите [Tab] для просмотра конфигурации выбранного пункта меню.
menu separator # insert an empty line
menu separator # insert an empty line
label linux
- menu label ^Install @PRODUCT@ @VERSION@
+ menu label ^1. Установить @PRODUCT@ @VERSION@@FLAVOR@
kernel vmlinuz
append initrd=initrd.img @ROOT@ quiet
label check
- menu label Test this ^media & install @PRODUCT@ @VERSION@
+ menu label ^2. Проверить носитель и установить @PRODUCT@ @VERSION@@FLAVOR@
menu default
kernel vmlinuz
append initrd=initrd.img @ROOT@ rd.live.check quiet
@@ -72,25 +74,27 @@ label check
menu separator # insert an empty line
# utilities submenu
-menu begin ^Troubleshooting
- menu title Troubleshooting @PRODUCT@ @VERSION@
+menu begin Устранение неполадок
+ menu title Устранение неполадок
label basic
menu indent count 5
- menu label Install using ^basic graphics mode
+ menu label ^1. Установить @PRODUCT@ @VERSION@@FLAVOR@ (базовый графический установщик)
text help
- Try this option out if you're having trouble installing
- @PRODUCT@ @VERSION@.
+ Попробуйте этот режим если у вас возникают проблемы с
+ установкой @PRODUCT@ @VERSION@@FLAVOR@.
endtext
kernel vmlinuz
append initrd=initrd.img @ROOT@ nomodeset quiet
label rescue
menu indent count 5
- menu label ^Rescue a @PRODUCT@ system
+ menu label ^2. Восстановление установленной системы
text help
- If the system will not boot, this lets you access files
- and edit config files to try to get it booting again.
+ Если система не загружается, данный режим позволит вам
+ получить доступ к файловой системе и отредактировать
+ конфигурационные файлы чтобы восстановить функцию
+ загрузки системы.
endtext
kernel vmlinuz
append initrd=initrd.img @ROOT@ inst.rescue quiet
diff --git a/80-rhel/efi.tmpl b/80-rhel/efi.tmpl
index 80600d2..d36aefa 100644
--- a/80-rhel/efi.tmpl
+++ b/80-rhel/efi.tmpl
@@ -1,4 +1,4 @@
-<%page args="configdir, KERNELDIR, efiarch32, efiarch64, isolabel"/>
+<%page args="configdir, KERNELDIR, efiarch32, efiarch64, isolabel, FLAVOR=''"/>
<%
EFIBOOTDIR="EFI/BOOT"
APPLE_EFI_ICON=inroot+"/usr/share/pixmaps/bootloader/fedora.icns"
@@ -7,6 +7,7 @@ APPLE_EFI_DISKNAME=inroot+"/usr/share/pixmaps/bootloader/fedora-media.vol"
mkdir ${EFIBOOTDIR}
mkdir ${EFIBOOTDIR}/fonts/
+mkdir ${EFIBOOTDIR}/locale/
%if efiarch64:
install boot/efi/EFI/*/shim${efiarch64|lower}.efi ${EFIBOOTDIR}/BOOT${efiarch64}.EFI
install boot/efi/EFI/*/mm${efiarch64|lower}.efi ${EFIBOOTDIR}/
@@ -18,6 +19,7 @@ install boot/efi/EFI/*/mm${efiarch32|lower}.efi ${EFIBOOTDIR}/
install boot/efi/EFI/*/gcd${efiarch32|lower}.efi ${EFIBOOTDIR}/grub${efiarch32|lower}.efi
%endif
install usr/share/grub/unicode.pf2 ${EFIBOOTDIR}/fonts/
+install /usr/share/locale/ru/LC_MESSAGES/grub.mo ${EFIBOOTDIR}/locale/ru.mo
## actually make the EFI images
${make_efiboot("images/efiboot.img")}
@@ -35,7 +37,12 @@ ${make_efiboot("images/efiboot.img")}
copy ${KERNELDIR}/initrd.img ${EFIBOOTDIR}
%endif
install ${configdir}/grub2-efi.cfg ${eficonf}
+ replace @FLAVOR@ '${FLAVOR}' ${eficonf}
+ %if product.name in ("MSVSphere", "MSVSphere Server"):
+ replace @PRODUCT@ 'МСВСфера' ${eficonf}
+ %else:
replace @PRODUCT@ '${product.name}' ${eficonf}
+ %endif
replace @VERSION@ ${product.version} ${eficonf}
replace @KERNELNAME@ vmlinuz ${eficonf}
replace @KERNELPATH@ /${kdir}/vmlinuz ${eficonf}
diff --git a/80-rhel/x86.tmpl b/80-rhel/x86.tmpl
index 3945ce4..dcc1d20 100644
--- a/80-rhel/x86.tmpl
+++ b/80-rhel/x86.tmpl
@@ -22,12 +22,25 @@ if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3:
isoargs = "-iso-level 3"
else:
isoargs = ""
+
+# define an MSVSphere-specific image flavor constant
+if product.variant in ("Minimal", "Server"):
+ FLAVOR=" Сервер"
+elif product.variant == "Certified":
+ FLAVOR=" Сертифицированная"
+elif product.variant == "BaseOS":
+ FLAVOR=" ОС"
+else:
+ FLAVOR=""
%>
mkdir images
install ${runtime_img} ${STAGE2IMG}
treeinfo stage2 mainimage images/${runtime_base}
+## add a console font with Russian (cp866) encoding support
+install ${configdir}/cp866-8x16.psf ${BOOTDIR}
+
## install kernels
mkdir ${KERNELDIR}
%for kernel in kernels:
@@ -44,12 +57,20 @@ mkdir ${KERNELDIR}
mkdir ${GRUB2DIR}
install ${configdir}/grub2-bios.cfg ${GRUB2DIR}/grub.cfg
replace @VERSION@ ${product.version} ${GRUB2DIR}/grub.cfg
-replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.cfg
+%if product.name == 'MSVSphere':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/grub.cfg
+%else:
+replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.cfg
+%endif
+replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.cfg
+replace @FLAVOR@ '${FLAVOR}' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${GRUB2DIR}/grub.cfg
+## convert BIOS bootloader configs to cp866 encoding
+iconv 'cp866' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
## WHeeeeeeee, EFI.
<% efiarch32=None; efiarch64=None %>
@@ -60,7 +81,7 @@ replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${GRUB2DIR}/grub.cfg
<% efiarch64 = 'X64' %>
%endif
%if (efiarch32 or efiarch64):
- <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel"/>
+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel, FLAVOR=FLAVOR"/>
%endif
# Create optional product.img and updates.img
--
2.43.5

@ -0,0 +1,178 @@
From 633965934ac74eb73fbb1ac7cf9365777197db47 Mon Sep 17 00:00:00 2001
From: tigro <arkadiy.sheyn@softline.com>
Date: Sat, 29 Jul 2023 15:34:37 +0200
Subject: [PATCH 3/8] Translate live image bootloader to Russian
---
.../live/config_files/aarch64/grub2-efi.cfg | 13 +++++---
80-rhel/live/config_files/x86/grub2-efi.cfg | 11 +++++--
80-rhel/live/efi.tmpl | 6 ++++
80-rhel/live/x86.tmpl | 30 ++++++++++++++++++-
80-rhel/x86.tmpl | 2 +-
5 files changed, 53 insertions(+), 9 deletions(-)
diff --git a/80-rhel/live/config_files/aarch64/grub2-efi.cfg b/80-rhel/live/config_files/aarch64/grub2-efi.cfg
index c874547..c5db696 100644
--- a/80-rhel/live/config_files/aarch64/grub2-efi.cfg
+++ b/80-rhel/live/config_files/aarch64/grub2-efi.cfg
@@ -15,7 +15,12 @@ function load_video {
}
load_video
+insmod gfxterm
+set gfxmode=auto
set gfxpayload=keep
+set lang=ru_RU
+terminal_output gfxterm
+loadfont unicode
insmod gzio
insmod part_gpt
insmod ext2
@@ -26,16 +31,16 @@ set timeout=60
search --no-floppy --set=root -l '@ISOLABEL@'
### BEGIN /etc/grub.d/10_linux ###
-menuentry 'Start @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+menuentry 'Запустить @PRODUCT@ @VERSION@@FLAVOR@' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image quiet rhgb
initrd @INITRDPATH@
}
-menuentry 'Test this media & start @PRODUCT@ @VERSION@' --class red --class gnu-linux --class gnu --class os {
+menuentry 'Проверить носитель и запустить @PRODUCT@ @VERSION@@FLAVOR@' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet
initrd @INITRDPATH@
}
-submenu 'Troubleshooting -->' {
- menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class red --class gnu-linux --class gnu --class os {
+submenu 'Устранение неполадок -->' {
+ menuentry 'Запустить @PRODUCT@ @VERSION@@FLAVOR@ (базовый графический режим)' --class red --class gnu-linux --class gnu --class os {
linux @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image nomodeset quiet rhgb
initrd @INITRDPATH@
}
diff --git a/80-rhel/live/config_files/x86/grub2-efi.cfg b/80-rhel/live/config_files/x86/grub2-efi.cfg
index 3906958..3ca2687 100644
--- a/80-rhel/live/config_files/x86/grub2-efi.cfg
+++ b/80-rhel/live/config_files/x86/grub2-efi.cfg
@@ -9,7 +9,12 @@ function load_video {
}
load_video
+insmod gfxterm
+set gfxmode=auto
set gfxpayload=keep
+set lang=ru_RU
+terminal_output gfxterm
+loadfont unicode
insmod gzio
insmod part_gpt
insmod ext2
@@ -20,7 +25,7 @@ set timeout=60
search --no-floppy --set=root -l '@ISOLABEL@'
### BEGIN /etc/grub.d/10_linux ###
-menuentry 'Start @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os {
+menuentry 'Запустить @PRODUCT@ @VERSION@@FLAVOR@' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image quiet rhgb
initrdefi @INITRDPATH@
}
@@ -28,8 +33,8 @@ menuentry 'Test this media & start @PRODUCT@ @VERSION@' --class fedora --class g
linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet
initrdefi @INITRDPATH@
}
-submenu 'Troubleshooting -->' {
- menuentry 'Start @PRODUCT@ @VERSION@ in basic graphics mode' --class fedora --class gnu-linux --class gnu --class os {
+submenu 'Проверить носитель и запустить @PRODUCT@ @VERSION@@FLAVOR@ -->' {
+ menuentry 'Запустить @PRODUCT@ @VERSION@@FLAVOR@ (базовый графический режим)' --class fedora --class gnu-linux --class gnu --class os {
linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image nomodeset quiet rhgb
initrdefi @INITRDPATH@
}
diff --git a/80-rhel/live/efi.tmpl b/80-rhel/live/efi.tmpl
index 813f91e..50f95e6 100644
--- a/80-rhel/live/efi.tmpl
+++ b/80-rhel/live/efi.tmpl
@@ -35,7 +35,13 @@ ${make_efiboot("images/efiboot.img")}
copy ${KERNELDIR}/initrd.img ${EFIBOOTDIR}
%endif
install ${configdir}/grub2-efi.cfg ${eficonf}
+ %if product.name == 'MSVSphere ARM':
+ replace @PRODUCT@ 'МСВСфера' ${eficonf}
+ replace @FLAVOR@ ' АРМ' ${eficonf}
+ %else:
replace @PRODUCT@ '${product.name}' ${eficonf}
+ replace @FLAVOR@ '' ${eficonf}
+ %endif
replace @VERSION@ ${product.version} ${eficonf}
replace @KERNELNAME@ vmlinuz ${eficonf}
replace @KERNELPATH@ /${kdir}/vmlinuz ${eficonf}
diff --git a/80-rhel/live/x86.tmpl b/80-rhel/live/x86.tmpl
index cf4dad4..c88d657 100644
--- a/80-rhel/live/x86.tmpl
+++ b/80-rhel/live/x86.tmpl
@@ -28,6 +28,7 @@ mkdir ${LIVEDIR}
install ${runtime_img} ${LIVEDIR}/squashfs.img
treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img
+
## install kernels
mkdir ${KERNELDIR}
%for kernel in kernels:
@@ -47,15 +48,42 @@ mkdir ${KERNELDIR}
## configure grub2 config file
mkdir ${GRUB2DIR}
+## add a console font with Russian (cp866) encoding support
+install ${configdir}/cp866-8x16.psf ${GRUB2DIR}
install ${configdir}/grub2-bios.cfg ${GRUB2DIR}/grub.cfg
replace @VERSION@ ${product.version} ${GRUB2DIR}/grub.cfg
-replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.cfg
+%if product.name == 'MSVSphere GNOME':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+replace @FLAVOR@ ' GNOME' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+%endif
+%if product.name == 'MSVSphere Cinnamon':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+replace @FLAVOR@ ' Cinnamon' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+%endif
+%if product.name == 'MSVSphere KDE':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+replace @FLAVOR@ ' KDE' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+%endif
+%if product.name == 'MSVSphere XFCE':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+replace @FLAVOR@ ' XFCE' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+%endif
+%if product.name == 'MSVSphere ARM':
+replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+replace @FLAVOR@ ' АРМ' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
+%else:
+replace @PRODUCT@ '${product.name}' ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg
+replace @FLAVOR@ '' ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg
+%endif
+replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.conf
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${GRUB2DIR}/grub.cfg
replace @EXTRA@ '${extra_boot_args}' ${GRUB2DIR}/grub.cfg
+## convert BIOS bootloader configs to cp866 encoding
+iconv 'cp866' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
## WHeeeeeeee, EFI.
<% efiargs=""; efigraft=""; efiarch32=None; efiarch64=None %>
diff --git a/80-rhel/x86.tmpl b/80-rhel/x86.tmpl
index dcc1d20..608d8ed 100644
--- a/80-rhel/x86.tmpl
+++ b/80-rhel/x86.tmpl
@@ -57,7 +57,7 @@ mkdir ${KERNELDIR}
mkdir ${GRUB2DIR}
install ${configdir}/grub2-bios.cfg ${GRUB2DIR}/grub.cfg
replace @VERSION@ ${product.version} ${GRUB2DIR}/grub.cfg
-%if product.name == 'MSVSphere':
+%if product.name in ("MSVSphere", "MSVSphere Server"):
replace @PRODUCT@ 'МСВСфера' ${GRUB2DIR}/grub.cfg
%else:
replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.cfg
--
2.43.5

@ -0,0 +1,73 @@
From 734ddc42b648f75a72d4dd490700ee1edce04549 Mon Sep 17 00:00:00 2001
From: tigro <arkadiy.sheyn@softline.com>
Date: Sat, 29 Jul 2023 21:12:05 +0200
Subject: [PATCH 4/8] Disable geo location
---
80-rhel/efi.tmpl | 4 ++--
80-rhel/live/efi.tmpl | 4 ++--
80-rhel/live/x86.tmpl | 2 +-
80-rhel/x86.tmpl | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/80-rhel/efi.tmpl b/80-rhel/efi.tmpl
index d36aefa..43d2f11 100644
--- a/80-rhel/efi.tmpl
+++ b/80-rhel/efi.tmpl
@@ -49,9 +49,9 @@ ${make_efiboot("images/efiboot.img")}
replace @INITRDPATH@ /${kdir}/initrd.img ${eficonf}
replace @ISOLABEL@ '${isolabel}' ${eficonf}
%if disk:
- replace @ROOT@ inst.stage2=hd:LABEL=ANACONDA ${eficonf}
+ replace @ROOT@ 'inst.stage2=hd:LABEL=ANACONDA inst.geoloc=0' ${eficonf}
%else:
- replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${eficonf}
+ replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0' ${eficonf}
%endif
%if efiarch32 == 'IA32':
copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf
diff --git a/80-rhel/live/efi.tmpl b/80-rhel/live/efi.tmpl
index 50f95e6..08ba750 100644
--- a/80-rhel/live/efi.tmpl
+++ b/80-rhel/live/efi.tmpl
@@ -49,9 +49,9 @@ ${make_efiboot("images/efiboot.img")}
replace @ISOLABEL@ '${isolabel}' ${eficonf}
replace @EXTRA@ '${extra_boot_args}' ${eficonf}
%if disk:
- replace @ROOT@ root=live:LABEL=ANACONDA ${eficonf}
+ replace @ROOT@ 'root=live:LABEL=ANACONDA inst.geoloc=0' ${eficonf}
%else:
- replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${eficonf}
+ replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0' ${eficonf}
%endif
%if efiarch32 == 'IA32':
copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf
diff --git a/80-rhel/live/x86.tmpl b/80-rhel/live/x86.tmpl
index c88d657..3221d72 100644
--- a/80-rhel/live/x86.tmpl
+++ b/80-rhel/live/x86.tmpl
@@ -79,7 +79,7 @@ replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.conf
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
-replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${GRUB2DIR}/grub.cfg
+replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0' ${GRUB2DIR}/grub.cfg
replace @EXTRA@ '${extra_boot_args}' ${GRUB2DIR}/grub.cfg
## convert BIOS bootloader configs to cp866 encoding
diff --git a/80-rhel/x86.tmpl b/80-rhel/x86.tmpl
index 608d8ed..e5d9027 100644
--- a/80-rhel/x86.tmpl
+++ b/80-rhel/x86.tmpl
@@ -67,7 +67,7 @@ replace @FLAVOR@ '${FLAVOR}' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
-replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${GRUB2DIR}/grub.cfg
+replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0' ${GRUB2DIR}/grub.cfg
## convert BIOS bootloader configs to cp866 encoding
iconv 'cp866' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
--
2.43.5

@ -0,0 +1,25 @@
From 219c5085102a61efb0075aa401a57dfb7804c666 Mon Sep 17 00:00:00 2001
From: tigro <arkadiy.sheyn@softline.com>
Date: Thu, 21 Sep 2023 13:47:02 +0300
Subject: [PATCH 5/8] Update title color
---
80-rhel/config_files/x86/isolinux.cfg | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/80-rhel/config_files/x86/isolinux.cfg b/80-rhel/config_files/x86/isolinux.cfg
index 3cfdbc2..86e24b6 100644
--- a/80-rhel/config_files/x86/isolinux.cfg
+++ b/80-rhel/config_files/x86/isolinux.cfg
@@ -25,7 +25,7 @@ menu color border * #00000000 #00000000 none
menu color sel 0 #ffffffff #00000000 none
# Title bar
-menu color title 0 #ff7ba3d0 #00000000 none
+menu color title 0 #ffcc00cc #00000000 none
# Press [Tab] message
menu color tabmsg 0 #ff3a6496 #00000000 none
--
2.43.5

@ -0,0 +1,39 @@
From 85d6b9ef141e5d653f246b2e6795e828ee378a88 Mon Sep 17 00:00:00 2001
From: tigro <arkadiy.sheyn@softline.com>
Date: Sat, 30 Sep 2023 16:42:23 +0300
Subject: [PATCH 6/8] Add sphere licenses to live media
---
80-rhel/live/aarch64.tmpl | 2 +-
80-rhel/live/x86.tmpl | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/80-rhel/live/aarch64.tmpl b/80-rhel/live/aarch64.tmpl
index d1a3f87..64c7f14 100644
--- a/80-rhel/live/aarch64.tmpl
+++ b/80-rhel/live/aarch64.tmpl
@@ -67,7 +67,7 @@ mkdir ${KERNELDIR}
%endfor
# Add the license files
-%for f in glob("usr/share/licenses/*-release-common/*"):
+%for f in glob("/usr/share/sphere-release/EULA"):
install ${f} ${f|basename}
<% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %>
%endfor
diff --git a/80-rhel/live/x86.tmpl b/80-rhel/live/x86.tmpl
index 3221d72..6c55318 100644
--- a/80-rhel/live/x86.tmpl
+++ b/80-rhel/live/x86.tmpl
@@ -108,7 +108,7 @@ iconv 'cp866' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
%endfor
# Add the license files
-%for f in glob("usr/share/licenses/*-release-common/*"):
+%for f in glob("/usr/share/sphere-release/EULA"):
install ${f} ${f|basename}
<% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %>
%endfor
--
2.43.5

@ -0,0 +1,73 @@
From a3bcb378f63d4347e2bb0604579342dbdca944b4 Mon Sep 17 00:00:00 2001
From: tigro <tigro@msvsphere-os.ru>
Date: Fri, 19 Jan 2024 16:42:18 +0300
Subject: [PATCH 7/8] Force Russian language during installation
---
80-rhel/efi.tmpl | 4 ++--
80-rhel/live/efi.tmpl | 4 ++--
80-rhel/live/x86.tmpl | 2 +-
80-rhel/x86.tmpl | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/80-rhel/efi.tmpl b/80-rhel/efi.tmpl
index 43d2f11..f7ba0b1 100644
--- a/80-rhel/efi.tmpl
+++ b/80-rhel/efi.tmpl
@@ -49,9 +49,9 @@ ${make_efiboot("images/efiboot.img")}
replace @INITRDPATH@ /${kdir}/initrd.img ${eficonf}
replace @ISOLABEL@ '${isolabel}' ${eficonf}
%if disk:
- replace @ROOT@ 'inst.stage2=hd:LABEL=ANACONDA inst.geoloc=0' ${eficonf}
+ replace @ROOT@ 'inst.stage2=hd:LABEL=ANACONDA inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${eficonf}
%else:
- replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0' ${eficonf}
+ replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${eficonf}
%endif
%if efiarch32 == 'IA32':
copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf
diff --git a/80-rhel/live/efi.tmpl b/80-rhel/live/efi.tmpl
index 08ba750..30d5bc9 100644
--- a/80-rhel/live/efi.tmpl
+++ b/80-rhel/live/efi.tmpl
@@ -49,9 +49,9 @@ ${make_efiboot("images/efiboot.img")}
replace @ISOLABEL@ '${isolabel}' ${eficonf}
replace @EXTRA@ '${extra_boot_args}' ${eficonf}
%if disk:
- replace @ROOT@ 'root=live:LABEL=ANACONDA inst.geoloc=0' ${eficonf}
+ replace @ROOT@ 'root=live:LABEL=ANACONDA inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${eficonf}
%else:
- replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0' ${eficonf}
+ replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${eficonf}
%endif
%if efiarch32 == 'IA32':
copy ${eficonf} ${EFIBOOTDIR}/BOOT.conf
diff --git a/80-rhel/live/x86.tmpl b/80-rhel/live/x86.tmpl
index 6c55318..51c51ee 100644
--- a/80-rhel/live/x86.tmpl
+++ b/80-rhel/live/x86.tmpl
@@ -79,7 +79,7 @@ replace @PRODUCT@ '${product.name}' ${GRUB2DIR}/grub.conf
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
-replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0' ${GRUB2DIR}/grub.cfg
+replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev} inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${GRUB2DIR}/grub.cfg
replace @EXTRA@ '${extra_boot_args}' ${GRUB2DIR}/grub.cfg
## convert BIOS bootloader configs to cp866 encoding
diff --git a/80-rhel/x86.tmpl b/80-rhel/x86.tmpl
index e5d9027..a57df5e 100644
--- a/80-rhel/x86.tmpl
+++ b/80-rhel/x86.tmpl
@@ -67,7 +67,7 @@ replace @FLAVOR@ '${FLAVOR}' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
replace @KERNELPATH@ /${KERNELDIR}/vmlinuz ${GRUB2DIR}/grub.cfg
replace @INITRDPATH@ /${KERNELDIR}/initrd.img ${GRUB2DIR}/grub.cfg
replace @ISOLABEL@ '${isolabel}' ${GRUB2DIR}/grub.cfg
-replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0' ${GRUB2DIR}/grub.cfg
+replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev} inst.geoloc=0 inst.lang=ru_RU.UTF-8' ${GRUB2DIR}/grub.cfg
## convert BIOS bootloader configs to cp866 encoding
iconv 'cp866' ${GRUB2DIR}/isolinux.cfg ${GRUB2DIR}/*.msg
--
2.43.5

@ -0,0 +1,28 @@
From 4a13eb35ae9a695e44c7517934366970c7719879 Mon Sep 17 00:00:00 2001
From: tigro <tigro@msvsphere-os.ru>
Date: Mon, 12 Aug 2024 20:07:46 +0300
Subject: [PATCH 8/8] Set LatGrkCyr-8x16 as default font instead of eurlatgr
---
80-rhel/config_files/common/i18n | 2 +-
80-rhel/config_files/common/vconsole.conf | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/80-rhel/config_files/common/i18n b/80-rhel/config_files/common/i18n
index b254232..5366b7f 100644
--- a/80-rhel/config_files/common/i18n
+++ b/80-rhel/config_files/common/i18n
@@ -1 +1 @@
-SYSFONT="eurlatgr"
+SYSFONT="latarcyrheb-sun16"
diff --git a/80-rhel/config_files/common/vconsole.conf b/80-rhel/config_files/common/vconsole.conf
index 2bd7892..4eff1d3 100644
--- a/80-rhel/config_files/common/vconsole.conf
+++ b/80-rhel/config_files/common/vconsole.conf
@@ -1,2 +1,2 @@
KEYMAP=us
-FONT=eurlatgr
+FONT=latarcyrheb-sun16
--
2.43.5

Binary file not shown.

@ -1,4 +1,4 @@
Name: lorax-templates-rhel
Name: lorax-templates-msvsphere
Version: 10.0
Release: 52%{?dist}
Summary: RHEL build templates for lorax and livemedia-creator
@ -11,6 +11,17 @@ BuildArch: noarch
# by running the command `make tar`.
# See README for full details of how to update this package
Source0: lorax-templates-rhel-10.0-52.tar.gz
Source1: cp866-8x16.psf
# MSVSphere patches
Patch1001: 0001-Remove-RHEL-specific-packages.patch
Patch1002: 0002-Translate-installation-image-bootloader-to-Russian.patch
Patch1003: 0003-Translate-live-image-bootloader-to-Russian.patch
Patch1004: 0004-Disable-geo-location.patch
Patch1005: 0005-Update-title-color.patch
Patch1006: 0006-Add-sphere-licenses-to-live-media.patch
Patch1007: 0007-Force-Russian-language-during-installation.patch
Patch1008: 0008-Set-LatGrkCyr-8x16-as-default-font-instead-of-eurlat.patch
# Required for the template branding support
Requires: lorax >= 34.9.1
@ -25,7 +36,8 @@ RHEL-specific Lorax templates for creating the boot.iso and live isos are
placed in %{templatedir}
%prep
%setup
%setup q -n lorax-templates-rhel-%{version}
%autopatch -p1
%build
# nothing to build
@ -40,6 +52,9 @@ cp -a 80-rhel/* $RPM_BUILD_ROOT/%{templatedir}
%{templatedir}/*
%changelog
* Mon Dec 23 2024 Sergey Cherevko <s.cherevko@msvsphere-os.ru> - 10.0-52
- MSVSphere changes
* Tue Nov 26 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 10.0-52
- Rebuilt for MSVSphere 10

Loading…
Cancel
Save