This is how you can add Windows option in grub2 on dual boot. This is for UEFI/GPT only, and linux boot partition must be first on the disk (gpt0)
First navigate and open file 40_custom (as root):
vim /etc/grub.d/40_custom
Add the following lines
menuentry 'Windows10' {
insmod part_gpt
insmod ntfs
insmod chain
set root='(hd0,gpt3)' ## in my case, gpt3 here is my windows efi-boot partition, you must set your own
chainloader ($root)/EFI/Microsoft/Boot/bootx64.efi
}
Mind this part
chainloader ($root)/EFI/Microsoft/Boot/bootx64.efi
/EFI/Microsoft/Boot/bootx64.efi is path on Microsoft's efi partition, and it might be different for you.
Change it accordingly. You can mount the partition in some folder to view its content.
Finally, execute the following command in the console.
grub2-mkconfig -o /boot/grub2/grub.cfg
Done! Special thanks to Dragan for this one.