set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
#set gfxmode=auto
set gfxmode=1024x768
set gfxpayload=keep
set timeout=-1
set timeout_style=menu
set midx=x
set sidx=x
set wimbooton=n
set wimbootfiles=x
set hdd=hd1
#declar functie increment,nu pot injecta modul increment in grub semnat si cu secure boot
#folosesc menuindex si submenuindex ca hotkey si ma opresc la d daca apas e imi face edit ci nu lanseaza meniul,oricum pe 1024x786 nu vad mai mult de 14 linii
function mincrement {
if [ x$midx == xx ]; then midx=1; elif [ x$midx == x1 ]; then midx=2; elif [ x$midx == x2 ]; then midx=3; elif [ x$midx == x3 ]; then midx=4; elif [ x$midx == x4 ]; then midx=5; elif [ x$midx == x5 ]; then midx=6; elif [ x$midx == x6 ]; then midx=7; elif [ x$midx == x7 ]; then midx=8; elif [ x$midx == x8 ]; then midx=9; elif [ x$midx == x9 ]; then midx=0; elif [ x$midx == x0 ]; then midx=a; elif [ x$midx == xa ]; then midx=b; elif [ x$midx == xb ]; then midx=c; elif [ x$midx == xc ]; then midx=d; else midx=x; fi
}
function sincrement {
if [ x$sidx == xx ]; then sidx=1; elif [ x$sidx == x1 ]; then sidx=2; elif [ x$sidx == x2 ]; then sidx=3; elif [ x$sidx == x3 ]; then sidx=4; elif [ x$sidx == x4 ]; then sidx=5; elif [ x$sidx == x5 ]; then sidx=6; elif [ x$sidx == x6 ]; then sidx=7; elif [ x$sidx == x7 ]; then sidx=8; elif [ x$sidx == x8 ]; then sidx=9; elif [ x$sidx == x9 ]; then sidx=0; elif [ x$sidx == x0 ]; then sidx=a; elif [ x$sidx == xa ]; then sidx=b; elif [ x$sidx == xb ]; then sidx=c; elif [ x$sidx == xc ]; then sidx=d; else sidx=x; fi
}
#initial e incarcat grub2.06 fortez load grub2.11
if [ x$cmdpath == x($rootfat)/EFI/BOOT ]; then timeout=0; elif [ x$cmdpath == x($rootntfs)/EFI/BOOT ]; then timeout=0; else wimbooton=y;set grub_draw_border=1; fi
if [ x$wimbooton == xn ];then
mincrement
menuentry $midx.' Grub 2.11 are wimboot' --hotkey=$midx {
chainloader /boot/grub/211grubx64.efi
# sleep 1
}
fi
if [ -d "($rootntfs)/mint" ]; then
mincrement
submenu $midx.' Linux Mint >' --hotkey=$midx {
sidx=x
if [ -d "($rootntfs)/mint/211" ]; then
sincrement
menuentry $sidx.' Linux Mint 21.1 Cinnamon 64-bit' --hotkey=$sidx {
root=$rootntfs
probe -u $root --set=devuuid
echo UUID=$devuuid
set gfxpayload=keep
echo load kernel
linux /mint/211/casper/vmlinuz file=/cdrom/mint/211/preseed/linuxmint.seed boot=casper uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/mint/211/casper net.ifnames=0 ro nopersistent --
echo load initrd
initrd /mint/211/casper/initrd.lz
}
fi
if [ -d "($rootntfs)/mint/202" ]; then
sincrement
menuentry $sidx.' Linux Mint 20.2 Cinnamon 64-bit' --hotkey=$sidx {
root=$rootntfs
probe -u $root --set=devuuid
echo UUID=$devuuid
set gfxpayload=keep
echo load kernel
linux /mint/202/casper/vmlinuz file=/cdrom/mint/202/preseed/linuxmint.seed boot=casper uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/mint/202/casper net.ifnames=0 ro nopersistent --
echo load initrd
initrd /mint/202/casper/initrd.lz
}
fi
if [ -d "($rootfat)/mint/193" ]; then
sincrement
menuentry $sidx'. Linux Mint 19.3 "Tricia" - Release i386' --hotkey=$sidx {
root=$rootfat
probe -u $root --set=devuuid
echo UUID=$devuuid
set gfxpayload=keep
echo load kernel
linux /mint/193/casper/vmlinuz file=/cdrom/mint/193/preseed/linuxmint.seed boot=casper uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/mint/193/casper net.ifnames=0 ro nopersistent --
echo load initrd
initrd /mint/193/casper/initrd.lz
}
fi
}
fi
if [ -d "($rootntfs)/ubuntu" ]; then
mincrement
submenu $midx.' Ubuntu >' --hotkey=$midx {
sidx=x
if [ -d "($rootntfs)/ubuntu/2204" ]; then
sincrement
menuentry $sidx.' Ubuntu 22.04 LTS 64-bit' --hotkey=$sidx {
root=$rootntfs
probe -u $root --set=devuuid
echo UUID=$devuuid
set gfxpayload=keep
echo load kernel
linux /ubuntu/2204/casper/vmlinuz file=/cdrom/ubuntu/2204/preseed/ubuntu.seed boot=casper uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/ubuntu/2204/casper net.ifnames=0 ro nopersistent --
echo load initrd
initrd /ubuntu/2204/casper/initrd
}
fi
if [ -d "($rootfat)/ubuntu/1606" ]; then
sincrement
menuentry $sidx'. Ubuntu 16.04.6 LTS "Xenial Xerus" - Release i386' --hotkey=$sidx {
root=$rootfat
probe -u $root --set=devuuid
echo UUID=$devuuid
set gfxpayload=keep
echo load kernel
linux /ubuntu/1606/casper/vmlinuz file=/cdrom/ubuntu/1606/preseed/ubuntu.seed boot=casper uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/ubuntu/1606/casper net.ifnames=0 ro nopersistent --
echo load initrd
initrd /ubuntu/1606/casper/initrd
}
fi
}
fi
if [ -d "($rootntfs)/partedm" ]; then
mincrement
submenu $midx.' Parted Magic Linux >' --hotkey=$midx {
sidx=x
if [ -d "($rootntfs)/partedm/2022" ]; then
sincrement
menuentry $sidx.' Parted Magic Linux 2022 kernel 5.16' --hotkey=$sidx {
root=$rootntfs
echo load kernel
linux /partedm/2022/pmagic/bzImage boot=live eject=no directory=/partedm/2022
echo load initrd
initrd /partedm/2022/pmagic/initrd.img /partedm/2022/pmagic/fu.img /partedm/2022/pmagic/m.img
}
fi
if [ -d "($rootntfs)/partedm/2020" ]; then
sincrement
menuentry $sidx.' Parted Magic Linux 2020 kernel 5.8' --hotkey=$sidx {
root=$rootntfs
echo load kernel
linux /partedm/2020/pmagic/bzImage boot=live eject=no directory=/partedm/2020
echo load initrd
initrd /partedm/2020/pmagic/initrd.img /partedm/2020/pmagic/fu.img /partedm/2020/pmagic/m.img
}
fi
if [ -d "($rootntfs)/partedm/2016" ]; then
sincrement
menuentry $sidx.' Parted Magic Linux 2016 x64' --hotkey=$sidx {
root=$rootntfs
echo load kernel
linux /partedm/2016/pmagic/bzImage64 boot=live eject=no directory=/partedm/2016
echo load initrd
initrd /partedm/2016/pmagic/initrd.img /partedm/2016/pmagic/fu.img /partedm/2016/pmagic/m64.img
}
fi
}
fi
if [ -d "($rootntfs)/krd18" ]; then
mincrement
menuentry $midx.' Kaspersky Rescue Disk 2018, no video: CTRL+ALT+F1; startx, for update min. 1GB free on HDD' --hotkey=$midx {
root=$rootntfs
set extract_path="/krd18"
set lang="en"
if cpuid -l; then set _kernel="k-x86_64"; else set _kernel="k-x86"; fi
echo load ${extract_path}/boot/grub/${_kernel}
linux ${extract_path}/boot/grub/${_kernel} net.ifnames=0 lang=${lang} subdir=${extract_path}/data nodmraid nomdadm dostartx
echo load ${extract_path}/boot/grub/initrd.xz
initrd ${extract_path}/boot/grub/initrd.xz
}
fi
if [ -d "($rootntfs)/kali" ]; then
mincrement
menuentry $midx.' Kali2022.3 64-bit' --hotkey=$midx {
root=$rootntfs
probe -u $root --set=devuuid
echo load modules
set gfxpayload=keep
echo load kernel
linux ($root)/kali/live/vmlinuz-5.18.0-kali5-amd64 boot=live components noeject uuid=$devuuid live-media=/dev/disk/by-uuid/$devuuid live-media-path=/kali/live
echo load initrd
initrd ($root)/kali/live/initrd.img-5.18.0-kali5-amd64
}
fi
mincrement
menuentry $midx.' Boot from next volume' --hotkey=$midx {
exit 1
}
mincrement
menuentry $midx.' UEFI Firmware Settings' --hotkey=$midx {
fwsetup
}
if [ -f "($rootntfs)/EFI/memtest/BOOTX64.efi" ]; then
mincrement
menuentry $midx.' MemTest86 EFI' --hotkey=$midx {
echo load memtest
root=$rootntfs
chainloader /EFI/memtest/BOOTX64.efi
}
fi
if [ -f "($rootntfs)/EFI/boot/bootx64ms.efi" ]; then
mincrement
menuentry $midx.' Bootmgr for Windows tools from NTFS' --hotkey=$midx {
echo load bootmgr
root=$rootntfs
chainloader /EFI/boot/bootx64ms.efi
}
fi
if [ -f "($rootntfs)/boot/bcdefi" ]; then wimbootfiles=b$wimbootfiles; fi
if [ -f "($rootntfs)/boot/boot.sdi" ]; then wimbootfiles=s$wimbootfiles; fi
if [ x$wimbootfiles == xsbx ];then
if [ x$wimbooton == xy ];then
# echo esti pe grub 2.11 si are modul wimboot
mincrement
submenu $midx'. Wimboot to load Windows from NTFS >' --hotkey=$midx {
sidx=x
if [ -f "($rootntfs)/sources/boot.wim" ]; then
sincrement
menuentry $sidx.' HBCD_PE x64 ntboot' --hotkey=$sidx {
root=$rootntfs
ntboot -e /efi/boot/bootx64ms.efi -s /boot/boot.sdi -w /sources/boot.wim
}
fi
if [ -f "($rootntfs)/boot/winpe10x64.wim" ]; then
sincrement
menuentry $sidx'. Windows PE 10 x64' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"bcd":"/boot/bcdefi" \
@:"boot.sdi":"/boot/boot.sdi" \
@:"boot.wim":"/boot/winpe10x64.wim"
boot
}
fi
if [ -f "($rootntfs)/boot/dart10x64.wim" ]; then
sincrement
menuentry $sidx'. DaRT 10 on 21H2 x64' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"bcd":"/boot/bcdefi" \
@:"boot.sdi":"/boot/boot.sdi" \
@:"boot.wim":"/boot/dart10x64.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
fi
if [ -d "($rootntfs)/winx/22h2/sources" ]; then
sincrement
menuentry $sidx.' Windows 10 22H2 Setup' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/setup22h2.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/boot/bcdefi" \
@:"boot.sdi":"/boot/boot.sdi" \
@:"boot.wim":"/boot/winpe10x64.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.' Windows 10 22H2 boot si apoi repair' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/repair.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/winx/22h2/efi/microsoft/boot/bcd" \
@:"boot.sdi":"/winx/22h2/boot/boot.sdi" \
@:"boot.wim":"/winx/22h2/sources/boot.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.' Windows 10 22H2 boot cu ntboot' --hotkey=$sidx {
root=$rootntfs
ntboot -e /winx/22h2/efi/boot/bootx64.efi -s /winx/22h2/boot/boot.sdi -w /winx/22h2/sources/boot.wim
}
fi
if [ -d "($rootntfs)/winx/21h2/sources" ]; then
sincrement
menuentry $sidx.' Windows 10 21H2 Setup' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/setup21h2.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/boot/bcdefi" \
@:"boot.sdi":"/boot/boot.sdi" \
@:"boot.wim":"/boot/winpe10x64.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.' Windows 10 21H2 boot si apoi repair' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/repair.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/winx/21h2/efi/microsoft/boot/bcd" \
@:"boot.sdi":"/winx/21h2/boot/boot.sdi" \
@:"boot.wim":"/winx/21h2/sources/boot.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.' Windows 10 21H2 boot cu ntboot' --hotkey=$sidx {
root=$rootntfs
ntboot -e /winx/21h2/efi/boot/bootx64.efi -s /winx/21h2/boot/boot.sdi -w /winx/21h2/sources/boot.wim
}
fi
if [ -d "($rootntfs)/win78x/x64/sources" ]; then
sincrement
menuentry $sidx.'Windows 78x Setup x64' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/setupx64.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/boot/bcdefi" \
@:"boot.sdi":"/boot/boot.sdi" \
@:"boot.wim":"/boot/winpe10x64.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.'Windows 78x x64 boot si apoi repair' --hotkey=$sidx {
root=$rootntfs
wimboot \
@:"setup.bat":"/boot/repair.bat" \
@:"winpeshl.ini":"/boot/winpeshl.ini" \
@:"bcd":"/win78x/x64/efi/microsoft/boot/bcd" \
@:"boot.sdi":"/win78x/x64/boot/boot.sdi" \
@:"boot.wim":"/win78x/x64/sources/boot.wim"
if [ -s "($hdd)" ]; then drivemap -s hd0 $hdd ; fi
boot
}
sincrement
menuentry $sidx.'Windows 78x boot si apoi repai cu ntboot' --hotkey=$sidx {
root=$rootntfs
ntboot -e /win78x/x64/efi/boot/bootx64.efi -s /win78x/x64/boot/boot.sdi -w /win78x/x64/sources/boot.wim
}
fi
}
fi
fi
if [ -d "($rootkrd)/data" ]; then
mincrement
menuentry $midx'.Kaspersky Rescue Disk 2018,novideo:CTRL+ALT+F1->startx,for update min.1GB free on HDD' --hotkey=$midx {
root=$rootkrd
set extract_path=""
set lang="en"
set _kernel="k-x86_64"
echo load ${extract_path}/boot/grub/${_kernel}
linux ${extract_path}/boot/grub/${_kernel} net.ifnames=0 lang=${lang} subdir=${extract_path}/data nodmraid nomdadm dostartx
echo load ${extract_path}/boot/grub/initrd.xz
initrd ${extract_path}/boot/grub/initrd.xz
}
fi