X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/Ventoy.git/blobdiff_plain/7fe4762faa1b10bfcbb888930159ae76b60ac94a..0f90149c4e3557137f084bd9de42e86b02b9a73b:/INSTALL/grub/grub.cfg diff --git a/INSTALL/grub/grub.cfg b/INSTALL/grub/grub.cfg index c198879..6400c92 100644 --- a/INSTALL/grub/grub.cfg +++ b/INSTALL/grub/grub.cfg @@ -19,7 +19,6 @@ if [ "$grub_platform" = "pc" ]; then insmod setkey insmod regexp - insmod video_fb fi function ventoy_pause { @@ -120,7 +119,7 @@ function ventoy_show_help { } function ventoy_load_menu_lang_file { - vt_load_file_to_mem "auto" $vtoy_efi_part/grub/menu.tar.gz vtoy_menu_lang_mem + vt_load_file_to_mem "auto" $prefix/menu.tar.gz vtoy_menu_lang_mem loopback vt_menu_tarfs mem:${vtoy_menu_lang_mem_addr}:size:${vtoy_menu_lang_mem_size} } @@ -402,6 +401,8 @@ function distro_specify_initrd_file_phase2 { vt_linux_specify_initrd_file /boot/full.cz elif [ -f (loop)/images/pxeboot/initrd.img ]; then vt_linux_specify_initrd_file /images/pxeboot/initrd.img + elif [ -f (loop)/live/initrd ]; then + vt_linux_specify_initrd_file /live/initrd fi } @@ -1927,6 +1928,20 @@ function ventoy_img_openelec { loopback vtloopex $vtoy_efi_part/ventoy/vtloopex.cpio vt_img_extra_initrd_append (vtloopex)/$elec_ver/vtloopex.tar.xz + if [ "$elec_ver" = "LibreELEC" ]; then + if [ -f (vtimghd,1)/system ]; then + loopback elecsfs (vtimghd,1)/system + vt_get_lib_module_ver (elecsfs) /usr/lib/kernel-overlays/base/lib/modules/ vt_module_ver + if [ -n "$vt_module_ver" ]; then + for mod in "kernel/drivers/md/dm-mod.ko"; do + if [ -e (elecsfs)/usr/lib/kernel-overlays/base/lib/modules/$vt_module_ver/$mod ]; then + vt_img_extra_initrd_append (elecsfs)/usr/lib/kernel-overlays/base/lib/modules/$vt_module_ver/$mod + fi + done + fi + fi + fi + ventoy_debug_pause #boot image file @@ -1939,6 +1954,7 @@ function ventoy_img_openelec { vt_img_unhook_root vt_unset_boot_opt loopback -d vtloopex + loopback -d elecsfs } @@ -2217,6 +2233,23 @@ function ventoy_img_cloudready { unset linuxpartB } + +function ventoy_img_fwts { + vt_load_cpio $vtoy_path "${vt_chosen_path}" ${vtoy_iso_part} "busybox=$ventoy_busybox_ver" + vt_trailer_cpio ${vtoy_iso_part} "${vt_chosen_path}" noinit + + ventoy_debug_pause + + #boot image file + vt_set_boot_opt rdinit=/vtoy/vtoy ventoyos=fwts + vt_img_hook_root + + configfile $prefix/distro/fwts.cfg + + vt_img_unhook_root + vt_unset_boot_opt +} + function ventoy_img_memtest86 { chainloader (vtimghd,1)/efi/boot/BOOTX64.efi boot @@ -2282,6 +2315,12 @@ function img_common_menuentry { vt_get_fs_label (vtimghd,2) vtImgHd2Label fi + if [ -z "$vtImgHd1Label" ]; then + if [ -d (vtimghd,2)/efi ]; then + vt_get_fs_label (vtimghd,3) vtImgHd3Label + fi + fi + if [ -e (vtimghd,1)/etc/hostname ]; then vt_1st_line (vtimghd,1)/etc/hostname vtImgHostname fi @@ -2299,6 +2338,8 @@ function img_common_menuentry { elif [ -f (vtimghd,3)/etc/chrome_dev.conf ]; then ventoy_img_cloudready fi + elif vt_str_begin "$vtImgHd3Label" "fwts-result"; then + ventoy_img_fwts elif vt_str_begin "$vtImgHd1Label" "LAKKA"; then ventoy_img_openelec lakka elif vt_str_begin "$vtImgHd1Label" "LIBREELEC"; then @@ -2387,7 +2428,7 @@ function mimg_common_menuentry { ############################################################# ############################################################# -set VENTOY_VERSION="1.0.86" +set VENTOY_VERSION="1.0.90" #ACPI not compatible with Window7/8, so disable by default set VTOY_PARAM_NO_ACPI=1 @@ -2546,9 +2587,18 @@ elif [ "$vtoy_display_mode" = "serial_console" ]; then terminal_input serial console terminal_output serial console else - if [ "$vtoy_res_fit" = "1" ]; then + if [ "$vtoy_gfxmode" = "max" ]; then + set gfxmode=1024x768 terminal_output gfxterm - fi + + vt_enum_video_mode + vt_get_video_mode 0 vtCurMode + terminal_output console + set gfxmode=$vtCurMode + terminal_output gfxterm + elif [ "$vtoy_res_fit" = "1" ]; then + terminal_output gfxterm + fi if [ -n "$vtoy_theme" ]; then vt_set_theme