]> glassweightruler.freedombox.rocks Git - Ventoy.git/blobdiff - INSTALL/grub/grub.cfg
grub.cfg: add support for new Parabola ISOs (#590)
[Ventoy.git] / INSTALL / grub / grub.cfg
index bafba8d034ca2d02f85307f73da4bd0c2291ea27..ac0ccde9ed8881aa6c9a4f5734dc141fa962b3f5 100644 (file)
@@ -59,7 +59,7 @@ function ventoy_diagnosis {
     configfile $prefix/debug.cfg
 }
 
-function ventoy_localboot {    
+function ventoy_localboot {
     configfile $prefix/localboot.cfg
 }
 
@@ -230,6 +230,11 @@ function distro_specify_initrd_file_phase2 {
         if [ -f (loop)/parabola/boot/i686/parabolaiso.img ]; then 
             vt_linux_specify_initrd_file /parabola/boot/i686/parabolaiso.img
         fi
+    elif [ -f (loop)/parabola/boot/x86_64/initramfs-linux-libre.img ]; then
+        vt_linux_specify_initrd_file /parabola/boot/x86_64/initramfs-linux-libre.img
+        if [ -f (loop)/parabola/boot/i686/initramfs-linux-libre.img ]; then
+            vt_linux_specify_initrd_file /parabola/boot/i686/initramfs-linux-libre.img
+        fi
     elif [ -f (loop)/hyperbola/boot/x86_64/hyperiso.img ]; then 
         vt_linux_specify_initrd_file /hyperbola/boot/x86_64/hyperiso.img
         if [ -f (loop)/hyperbola/boot/i686/hyperiso.img ]; then 
@@ -270,7 +275,9 @@ function distro_specify_initrd_file_phase2 {
         vt_linux_specify_initrd_file /live/initrd2.img
         vt_linux_specify_initrd_file /install.amd/initrd.gz
         vt_linux_specify_initrd_file /install.amd/gtk/initrd.gz
-        
+    elif [ -f (loop)/boot/grub/kernels.cfg ]; then
+        vt_linux_parse_initrd_grub  file  (loop)/boot/grub/kernels.cfg
+
     fi
 }
 
@@ -523,6 +530,8 @@ function uefi_linux_menu_func {
             elif [ -d (loop)/parabola ]; then
                 if [ -f (loop)/parabola/boot/x86_64/parabolaiso.img ]; then
                     vt_add_replace_file $vtindex "EFI\\parabolaiso\\parabolaiso.img"
+                elif [ -f (loop)/parabola/boot/x86_64/initramfs-linux-libre.img ]; then
+                    vt_add_replace_file $vtindex "parabola\\boot\\x86_64\\initramfs-linux-libre.img"
                 fi
             elif [ -f (loop)/EFI/BOOT/initrd.gz ]; then
                 vt_add_replace_file $vtindex "EFI\\BOOT\\initrd.gz"
@@ -540,6 +549,8 @@ function uefi_linux_menu_func {
         elif [ -d (loop)/EFI/BOOT/entries ]; then
             if [ -f (loop)/parabola/boot/x86_64/parabolaiso.img ]; then
                 vt_add_replace_file 0 "EFI\\parabolaiso\\parabolaiso.img"
+            elif [ -f (loop)/parabola/boot/x86_64/initramfs-linux-libre.img ]; then
+                vt_add_replace_file $vtindex "parabola\\boot\\x86_64\\initramfs-linux-libre.img"
             fi
         elif [ -e (loop)/syslinux/alt0/full.cz ]; then
             vt_add_replace_file 0 "EFI\\BOOT\\full.cz"            
@@ -1358,7 +1369,7 @@ function img_unsupport_menuentry {
 #############################################################
 #############################################################
 
-set VENTOY_VERSION="1.0.27"
+set VENTOY_VERSION="1.0.28"
 
 #ACPI not compatible with Window7/8, so disable by default
 set VTOY_PARAM_NO_ACPI=1
@@ -1506,6 +1517,34 @@ export vtoy_efi_part
 export VENTOY_VERSION
 export VTOY_CUR_VIDEO_MODE
 
+#special VTOY_DEFAULT_IMAGE process
+if [ -n "$VTOY_DEFAULT_IMAGE" ]; then
+    if regexp --set 1:vtHotkey --set 2:vtDefault "(F[2-9])>(.*)" "$VTOY_DEFAULT_IMAGE"; then
+    
+        set default="$vtDefault"
+        if [ -z "$VTOY_MENU_TIMEOUT" ]; then
+            set timeout=0
+        else
+            set timeout=$VTOY_MENU_TIMEOUT
+        fi
+        
+        export timeout
+        export default
+        
+        if [ "$vtHotkey" = "F2" ]; then
+            ventoy_power
+        elif [ "$vtHotkey" = "F4" ]; then
+            ventoy_localboot
+        elif [ "$vtHotkey" = "F5" ]; then
+            ventoy_diagnosis
+        elif [ "$vtHotkey" = "F6" ]; then
+            ventoy_ext_menu
+        fi
+        
+        unset timeout
+        unset default
+    fi    
+fi
 
 #colect all image files (iso files)
 set ventoy_img_count=0