"my experience with exe or msi installers is that using them without a GUI ranges from “difficult to find the right CLI switches” to “just not gonna happen”."
This was my student job during college :) wrapping installers in scripts so they'd install headlessly.
My favorite part was that windows would need to be rebooted CONSTANTLY. Seriously. Provisioning a new box for some environments would result in TEN OR MORE reboots depending on exactly what shitware you had picked to install. And by shitware I do of course mean exorbiently-expensively-licensed academic/scientific software. The more scientific it was, somehow the exponentially worse the installer experience would be.
We had one package where we were literally forced to cram in a step where you would literally pick up the phone and call IT and someone would come over and plug a USB in while the install proceeded. The software was able to be network-licensed but only post-install, the installer itself never got the memo and wanted the usb to be physically present on the box during install.
Death by a thousand cuts (and some big gashes), Windows is just not built to work headlessly/scriptably, period. And trying to make it work like that takes tremendous investment, constant babysitting, and it's still fairly shitty even in the end.
Meanwhile we just apt install shit in dockerfiles and it just works.