X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/Ventoy.git/blobdiff_plain/aad154616c94a35545bbfc2e2063ec5e36a0fe6e..f82475d950109b9328ce5ccfdd9949fed4a96306:/INSTALL/grub/grub.cfg diff --git a/INSTALL/grub/grub.cfg b/INSTALL/grub/grub.cfg index a466f9f..d5bd465 100644 --- a/INSTALL/grub/grub.cfg +++ b/INSTALL/grub/grub.cfg @@ -318,13 +318,8 @@ function distro_specify_initrd_file_phase2 { } function ventoy_get_ghostbsd_ver { - - # vt_parse_iso_create_date "$1/${chosen_path}" vt_create_date - # if regexp "^202005" "$vt_create_date"; then - # set vt_freebsd_ver=12.x - # fi - - set vt_freebsd_ver=12.x + # fallback to parse version from elf /boot/kernel/kernel + set vt_freebsd_ver=xx } function ventoy_get_furybsd_ver { @@ -371,6 +366,7 @@ function ventoy_get_midnightbsd_ver { function ventoy_freebsd_proc { set vtFreeBsdDistro=FreeBSD + set vt_freebsd_ver=xx if vt_strstr "$vt_volume_id" "GHOSTBSD"; then ventoy_get_ghostbsd_ver "$1" "${chosen_path}" @@ -421,8 +417,6 @@ function ventoy_freebsd_proc { fi elif vt_strstr "${chosen_path}" "MidnightBSD"; then set vt_freebsd_ver=9.x - else - set vt_freebsd_ver=12.x fi set vt_freebsd_bit=64 @@ -433,7 +427,17 @@ function ventoy_freebsd_proc { fi break fi - done + done + + if [ "$vt_freebsd_ver" = "xx" ]; then + if [ -e (loop)/boot/kernel/kernel ]; then + vt_unix_parse_freebsd_ver_elf (loop)/boot/kernel/kernel $vt_freebsd_bit vt_freebsd_ver + fi + + if [ "$vt_freebsd_ver" = "xx" ]; then + set vt_freebsd_ver=13.x + fi + fi if [ -n "${vtdebug_flag}" ]; then echo "This is FreeBSD $vt_freebsd_ver ${vt_freebsd_bit}bit"