#!ipxe # Detectar si se está ejecutando en modo UEFI o BIOS iseq ${platform} efi && goto uefi_menu || goto bios_mbr :bios_mbr echo "Running in BIOS mode - Booting MBR" chain tftp://__SERVERIP__/grub.exe --config-file="title MBR;chainloader (hd0)+1;rootnoverify (hd0);boot" || echo "Failed to boot MBR in BIOS mode" exit :uefi_menu echo "Running in UEFI mode - Searching boot loaders" set detected no # Buscar y configurar opciones de arranque echo "Searching Grub" sanboot --no-describe --drive 0 --filename \EFI\grub\Boot\grubx64.efi && goto add_grub :add_grub set detected yes echo "Grub found" goto boot_grub :boot_grub echo "Booting Grub" sanboot --no-describe --drive 0 --filename \EFI\grub\Boot\grubx64.efi || echo "Failed to boot Grub" exit :refind echo "Searching rEFInd" sanboot --no-describe --drive 0 --filename \EFI\refind\shimx64.efi.signed && goto add_refind :add_refind set detected yes echo "rEFInd found" goto boot_refind :boot_refind echo "Booting rEFInd" sanboot --no-describe --drive 0 --filename \EFI\refind\shimx64.efi.signed || echo "Failed to boot rEFInd" exit :part_01_02 echo "Searching Part-01-02" sanboot --no-describe --drive 0 --filename \EFI\Part-01-02\Boot\ogloader.efi && goto add_part_01_02 :add_part_01_02 set detected yes echo "Part-01-02 found" goto boot_part_01_02 :boot_part_01_02 echo "Booting Part-01-02" sanboot --no-describe --drive 0 --filename \EFI\Part-01-02\Boot\ogloader.efi || echo "Failed to boot Part-01-02" exit :part_01_03 echo "Searching Part-01-03" sanboot --no-describe --drive 0 --filename \EFI\Part-01-03\Boot\ogloader.efi && goto add_part_01_03 :add_part_01_03 set detected yes echo "Part-01-03 found" goto boot_part_01_03 :boot_part_01_03 echo "Booting Part-01-03" sanboot --no-describe --drive 0 --filename \EFI\Part-01-03\Boot\ogloader.efi || echo "Failed to boot Part-01-03" exit :microsoft echo "Searching Microsoft" sanboot --no-describe --drive 0 --filename \EFI\Microsoft\Boot\bootmgfw.efi && goto add_microsoft :add_microsoft set detected yes echo "Microsoft Boot Manager found" goto boot_microsoft :boot_microsoft echo "Booting Microsoft Boot Manager" sanboot --no-describe --drive 0 --filename \EFI\Microsoft\Boot\bootmgfw.efi || echo "Failed to boot Microsoft Boot Manager" exit :ubuntu echo "Searching Ubuntu" sanboot --no-describe --drive 0 --filename \EFI\ubuntu\grubx64.efi && goto add_ubuntu :add_ubuntu set detected yes echo "Ubuntu found" goto boot_ubuntu :boot_ubuntu echo "Booting Ubuntu" sanboot --no-describe --drive 0 --filename \EFI\ubuntu\grubx64.efi || echo "Failed to boot Ubuntu" exit :no_os_detected iseq ${detected} no && echo "OpenGnsys no ha detectado ningún sistema operativo en este equipo" exit