Well, if HTC is keeping you waiting with their Marshmallow update OTA that has already begun rolling out for One M8 users worldwide, here is the ZIP file to help you install the Android 6.0 update manually.
The ZIP file below needs to be installing using the stock recovery. So in case you have a custom recovery like TWRP and CWM installed, it’s time to go back to stock recovery because you need that for OTA updates.
How to install? When you got the stock 3e recovery back, simply download the OTA ROM from below, and then transfer it to your One M8.
Next, to install Marshmallow OTA on your One M8, reboot it into recovery mode to access stock 3e recovery, and then use ‘install update ..’ option, select the OTA file you transferred earlier, and that’s it, your One M8 will be updated to Marshmallow in next 5 minutes. After that is done, restart the device using ‘reboot system now’ option.
Let your One M8 boot to Android 6.0 Marshmallow update.
Compatibility? The above is for global One M8, unlocked edition, and thus will not work for One M8 devices you get at carriers like Sprint, T-Mobile, Verizon, AT&T, US Cellular, etc. BTW, if your device is a GPe One M8, then grab the Marshmallow OTA here.