"invalid EFI file path" while booting Windows [closed]

Solution 1:

you should try to add windows as workaround manually to grub.

At first run

sudo blkid

Here you should see the UUID from your windows partition

open /etc/grub.d/40_custom and paste/edit following code but replace UUID_FROM_WIN8 with your UUID mentioned above.

menuentry "Windows 8 UEFI" {
    search --fs-uuid --no-floppy --set=root UUID_FROM_WIN8
    chainloader (${root})/efi/Microsoft/Boot/bootmgfw.efi
}

The chainloader should look the same for all windows versions, as far as i know..

After editing grub files you have to run

sudo update-grub

Please test it first and give me some feedback because it could be possible that the efi file won't be found.. but i don't want to give multiple advice in one answer..

hope this helps!

Solution 2:

From the grub.cfg you posted it looks like you've done a lot of messing with grub to try to get this working, I recommend that you start by cleaning all of this up and going back to a default grub configuration (which will probably have no entry for Windows at all in the grub.cfg) and then create a file /boot/grub/custom.cfg with this for contents:

#This entry should work for any version of Windows installed for UEFI booting

menuentry "Windows (UEFI)" {
 search --set=root --file /EFI/Microsoft/Boot/bootmgfw.efi
 chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

In the long term, hopefully os-prober and grub-mkconfig will gain support for detecting UEFI based Windows installations (at which point this entry will become redundant, and you can simply delete /boot/grub/custom.cfg)