Fix change kernel version for grub

master v2.125
Dmitry Razumov 4 weeks ago
parent 5222b0163b
commit 5679b3b8ca
Signed by: asmeron
GPG Key ID: 50BC1DB583B79706

@ -15,7 +15,7 @@
Authors: Authors:
UBLinux Team http://ublinux.ru UBLinux Team http://ublinux.com
------------------------------------------------------------------------- -------------------------------------------------------------------------
@ -37,7 +37,7 @@
Авторы: Авторы:
Сообщество UBLinux http://ublinux.ru Сообщество UBLinux http://ublinux.com
------------------------------------------------------------------------- -------------------------------------------------------------------------

@ -172,23 +172,25 @@ exec_grub_vmlinuz_file(){
local STR_SET_VALUE local STR_SET_VALUE
[[ -z ${KERNEL_BOOT} ]] || return 0 [[ -z ${KERNEL_BOOT} ]] || return 0
[[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_VMLINUZ_FILE}" [[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_VMLINUZ_FILE}"
[[ -n ${STR_SET_VALUE} ]] && STR_SET_VALUE="\${PATH_DISTR_BOOT}/${STR_SET_VALUE}"
control_grub_var_cfg "set VMLINUZ_FILE=" "${STR_SET_VALUE}" "export VMLINUZ_FILE" control_grub_var_cfg "set VMLINUZ_FILE=" "${STR_SET_VALUE}" "export VMLINUZ_FILE"
} }
exec_grub_ublinux_file(){ exec_grub_ublinux_file(){
local STR_SET_VALUE local STR_SET_VALUE
[[ -z ${KERNEL_BOOT} ]] || return 0 [[ -z ${KERNEL_BOOT} ]] || return 0
[[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_UBLINUX_FILE}" [[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_UBLINUX_FILE}"
[[ -n ${STR_SET_VALUE} ]] && STR_SET_VALUE="\${PATH_DISTR_BOOT}/${STR_SET_VALUE}"
control_grub_var_cfg "set UBLINUX_FILE=" "${STR_SET_VALUE}" "export UBLINUX_FILE" control_grub_var_cfg "set UBLINUX_FILE=" "${STR_SET_VALUE}" "export UBLINUX_FILE"
} }
exec_grub_addon_file(){ exec_grub_addon_file(){
local STR_SET_VALUE local STR_SET_VALUE
[[ -z ${KERNEL_BOOT} ]] || return 0 [[ -z ${KERNEL_BOOT} ]] || return 0
[[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_ADDON_FILE}" [[ -n $@ ]] && STR_SET_VALUE="$@" || STR_SET_VALUE="${GRUB_ADDON_FILE}"
[[ -n ${STR_SET_VALUE} ]] && STR_SET_VALUE="\${PATH_DISTR_BOOT}/${STR_SET_VALUE}"
control_grub_var_cfg "set ADDON_FILE=" "${STR_SET_VALUE}" "export ADDON_FILE" control_grub_var_cfg "set ADDON_FILE=" "${STR_SET_VALUE}" "export ADDON_FILE"
} }
exec_grub_kernel_boot(){ exec_grub_kernel_boot(){
# По указанному имени пакета в параметре KERNEL_BOOT= находим каталог с ядром и устаналиваем переменные в GRUB # По указанному имени пакета в параметре KERNEL_BOOT= находим каталог с ядром и устаналиваем переменные в GRUB
local STR_SET_VALUE
[[ -n $@ ]] && PKG_KERNEL_NAME="$@" || PKG_KERNEL_NAME="${KERNEL_BOOT}" [[ -n $@ ]] && PKG_KERNEL_NAME="$@" || PKG_KERNEL_NAME="${KERNEL_BOOT}"
PATH_KERNEL="/usr/lib/modules" PATH_KERNEL="/usr/lib/modules"
PKG_KERNEL_PATH=$(grep -Rlx ${PATH_KERNEL}/*/pkgbase -e "${PKG_KERNEL_NAME}") PKG_KERNEL_PATH=$(grep -Rlx ${PATH_KERNEL}/*/pkgbase -e "${PKG_KERNEL_NAME}")
@ -202,9 +204,12 @@ exec_grub_kernel_boot(){
STR_SET_VALUE_UBLINUX="" STR_SET_VALUE_UBLINUX=""
STR_SET_VALUE_ADDOD="" STR_SET_VALUE_ADDOD=""
fi fi
STR_SET_VALUE="${STR_SET_VALUE_VMLINUZ}"; control_grub_var_cfg "set VMLINUZ_FILE=" "${STR_SET_VALUE}" "export VMLINUZ_FILE" [[ -n ${STR_SET_VALUE_VMLINUZ} ]] && STR_SET_VALUE_VMLINUZ="\${PATH_DISTR_BOOT}/${STR_SET_VALUE_VMLINUZ}"
STR_SET_VALUE="${STR_SET_VALUE_UBLINUX}"; control_grub_var_cfg "set UBLINUX_FILE=" "${STR_SET_VALUE}" "export UBLINUX_FILE" control_grub_var_cfg "set VMLINUZ_FILE=" "${STR_SET_VALUE_VMLINUZ}" "export VMLINUZ_FILE"
STR_SET_VALUE="${STR_SET_VALUE_ADDOD}"; control_grub_var_cfg "set ADDON_FILE=" "${STR_SET_VALUE}" "export ADDON_FILE" [[ -n ${STR_SET_VALUE_UBLINUX} ]] && STR_SET_VALUE_UBLINUX="\${PATH_DISTR_BOOT}/${STR_SET_VALUE_UBLINUX}"
control_grub_var_cfg "set UBLINUX_FILE=" "${STR_SET_VALUE_UBLINUX}" "export UBLINUX_FILE"
[[ -n ${STR_SET_VALUE_ADDOD} ]] && STR_SET_VALUE_ADDOD="\${PATH_DISTR_BOOT}/${STR_SET_VALUE_ADDOD}"
control_grub_var_cfg "set ADDON_FILE=" "${STR_SET_VALUE_ADDOD}" "export ADDON_FILE"
} }
################ ################

@ -38,9 +38,9 @@ exec_prepare_menu_kernel(){
[[ ${VMLINUZ_FILES} =~ .*\/vmlinuz\-([0-9]+\.[0-9]+\.[a-z0-9_]+\-[0-9]+)$ ]] [[ ${VMLINUZ_FILES} =~ .*\/vmlinuz\-([0-9]+\.[0-9]+\.[a-z0-9_]+\-[0-9]+)$ ]]
VMLINUZ_VER=${BASH_REMATCH[1]} VMLINUZ_VER=${BASH_REMATCH[1]}
if [[ -n ${VMLINUZ_VER} && -f ${PATH_BOOT}/ublinux-${VMLINUZ_VER} ]]; then if [[ -n ${VMLINUZ_VER} && -f ${PATH_BOOT}/ublinux-${VMLINUZ_VER} ]]; then
VMLINUZ_FILE="vmlinuz-\${VMLINUZ_VER}" VMLINUZ_FILE="\${PATH_DISTR_BOOT}/vmlinuz-\${VMLINUZ_VER}"
UBLINUX_FILE="ublinux-\${VMLINUZ_VER}" UBLINUX_FILE="\${PATH_DISTR_BOOT}/ublinux-\${VMLINUZ_VER}"
[[ -f ${PATH_BOOT}/addon-${VMLINUZ_VER} ]] && ADDON_FILE="addon-\${VMLINUZ_VER}" || ADDON_FILE="" [[ -f ${PATH_BOOT}/addon-${VMLINUZ_VER} ]] && ADDON_FILE="\${PATH_DISTR_BOOT}/addon-\${VMLINUZ_VER}" || ADDON_FILE=""
DATA_BOOTMENU_KERNEL+=\ DATA_BOOTMENU_KERNEL+=\
" menuentry \$\"Change the kernel version\"\": ${VMLINUZ_VER}\" --unrestricted { " menuentry \$\"Change the kernel version\"\": ${VMLINUZ_VER}\" --unrestricted {
VMLINUZ_VER=\"${VMLINUZ_VER}\" VMLINUZ_VER=\"${VMLINUZ_VER}\"

Loading…
Cancel
Save