NTFS partition service issue with creating Windows 10 bootable USB on Ubuntu

So following the official steps:

sudo add-apt-repository universe
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb

Throws me an error for one of the dependancies: libwxgtk
Upon some bit of googling I found this

Which is where I found the answer to my first roadblock:
Download the libwxgtk from link provided in this comment

So woeusb gets installed properly now.


More issues

UI doesn't detect the USB devices, when I open the WoeUSB app.
Tried searching multiple things online, and then settled for doing it via cmd line.

sudo woeusb --tgt-fs NTFS --device <iso-path> /dev/sdX

Before doing that, I had to format the USB device, which I did using the disks utility of Ubuntu.

And lo and behold, first cut of the Bootable USB failed to detect.
After doing some digging, I stumbled upon this
Essentially for UEFI devices, you need to format the USB with GPT rather than MBR (default).

So repeated the whole process on with formatting the USB with GPT.


Final blocker

Now the USB got detected, and when I set the boot order and tried to boot the USB, I got a rather cryptic error: Could not start NTFS partition service

Googling for that error landed me in this Github issue
Reading through the whole conversation on the issue, one thing struck me at this comment

He had mentioned that the tool worked fine with EfiFS v1 & v1.1.
That reminded me of one of the output of the woeusb cmd line run.
It downloaded the latest version of uefi-ntfs.img from rufus github repo.

So I did a little bit of digging, and found a sufficiently old version of that file here

I downloaded this, and then rewrote this image over the UEFI:NTFS partition on the USB.

dd if=<path-to-uefi-ntfs.img> of=/dev/sdX2 # find out the proper partition reference using the disks utility

Now it finally works!!


Summary - final steps

  • Download the Windows 10 ISO from official links
  • Install woeusb
sudo add-apt-repository universe
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb
  • If you run into an issue with libwxgtk dependancy, download the deb file from this link
  • Install the Deb file and reinstall woeusb

  • Plug in the pen drive

  • Using the Disks utility, format the USB with GPT partitioning.
  • And create bootable USB
sudo woeusb --tgt-fs NTFS --device <iso-path> /dev/sdX

At this point, the whole thing should work for most cases.
But in case your system is old, it might throw some error about NTFS partition service. Then follow on:

  • Download the old version of UEFI:NTFS partition image from here
  • Overwrite the UEFI:NTFS partition with this image
dd if=<path-to-uefi-ntfs.img> of=/dev/sdX2

Try again now, it worked for me!!