Installing Windows 10 without USB using Ubuntu, Step by Step
This step by step has been created from information provided by the OP, @Marcel Alexandru.
Backup the Target drive.
Create a 6GB NTFS partition on the hard drive and extract the Windows ISO to it.
Create a 20GB, or larger, NTFS partition on the hard drive for the Windows Installation.
Open Disks, (Gnome-Disks), and note Device, (/dev/sdx), and UUID of the Windows ISO extract partition.
For msdos partition table, copy the menuentry given in this question to /etc/grub.d/40-custom/*
Add ntldr /bootmgr as a line below chainloader +1
Edit menuentry, changing sda4 to sdax, msdos4 to msdosx (4 places), and 592C85254E2CD0B7 to UUID, (3 places), to suit step 4 above.
Run sudo update grub confirm that ntldr /bootmgr appears in grub.cfg.
Boot the computer into the newly created menuentry and install Windows into it's new partition.
Reinstall Ubuntu if desired, the GRUB bootloader will have been replaced with the Windows bootloader.
*Note from the OP: You don't have to reinstall Ubuntu to fix the grub loader. You can boot in the Ubuntu Live USB, open a terminal and open Boot Repair using the boot-repair command. If it's not available you can install it using the following commands:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair
For more information about repairing your Grub follow this link: https://help.ubuntu.com/community/Boot-Repair.
*For gpt partition table, copy the following menuentry to /etc/grub.d/40-custom/:
menuentry 'Windows Recovery Environment (on /dev/sdc1)' --class windows --class os $menuentry_id_option 'osprober-chain-5642BC722509341F' {
insmod part_gpt
insmod ntfs
set root='hd0,gpt1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 5642BC722509341F
else
search --no-floppy --fs-uuid --set=root 5642BC722509341F
fi
drivemap -s (hd0) ${root}
chainloader +1
ntldr /bootmgr
}
This method can also be adjusted to make a Windows installer USB or to add a Windows installer to a multiboot USB.
Limitations
Windows 10 has limitations with respect to partition tables and boot modes.
I was able to install Legacy mode Windows to a drive with a MSDOS partition table.
I was able to install UEFI mode Windows to a drive with a GPT partition table.
I was not able to install Legacy mode Windows to a drive with a GPT partition table.
I was not able to install UEFI mode Windows to a drive with a GPT partition table and Legacy mode Ubuntu.
There may be workarounds that are outside the scope of this answer.