I want to add Equalizer APO to the winget package repository:
https://sourceforge.net/p/equalizerapo/code/HEAD/tree/trunk/Setup/Setup.nsi#l235
Currently the problem is that the installer starts the "Configurator.exe" with "ExecWait":
https://sourceforge.net/p/equalizerapo/code/HEAD/tree/trunk/Setup/Setup.nsi#l235
Winget requires nullsoft installers to finish without user interaction when run with the silent flag:
https://nsis.sourceforge.io/Docs/Chapter4.html#silent
I think the best solution is to call "Configurator.exe" with "Exec" and not to wait.
As far as I can tell, other installers are doing it this way when a user-interaction is required.
Other possibility would be to check for the silent flag (https://stackoverflow.com/questions/2059569/how-do-i-detect-silent-install) and skip "Configurator.exe", but I think that would be confusing.
No, it isn't. In case of Equalizer APO the user needs to intervene. By default Equalizer APO is only installed on the default speaker output and microphone input. Popping up the Configurator during installation is the only way to proceed. Installing Equalizer APO silently is just bad practice as it isn't just another app. Equalizer APO is a system-wide audio engine that needs some serious Windows registry rerouting. In other words, it isn't an app ontop of Windows, rather a change of Windows itself.
I understand what you mean, but I don't see a reason for the installer to wait for the configurator. As I said without popping up the Configurator it would be just confusing and not really what the user is expecting. But the installer itself is finished at this point. I mean you can just close the configurator and it would still be successful.
So the only difference between "ExecWait" and "Exec" would be that the installer fails if an error occurs in the configurator. With "Exec" just the start of the configurator needs to be successful.
Last edit: Vali Schabi 2021-09-21
Of course that's an option as the installation of the Equalizer APO audio engine is finished when the Configurator pops up. The problem is that an user might just close it without knowing what to do next. Countless times I had to explain why by default Equalizer APO isn't working out of the box on USB, HDMI, Bluetooth, etc. or why it isn't working on the default speakers and microphone. Users just expect it to work. So the danger of just finishing the installation doesn't lie in the installation of its audio engine and gui but rather in the users expection not satisfied. Besides, there isn't a decent manual/wiki and the support by the developer of Equalizer APO is almost non-existent as he is rarely active on this project. I do most of the support (I'm developer of the Peace equalizer interface).
I have just installed Equalizer APO, searching winget first, before manually downloading the installer. I wouldn't mind having to launch Configurator myself after installing, and I actually had to anyway - to change to SFX/EFX after first reboot. I could easily see the Configurator being shown on first Equalizer APO launch or having a notice, or a simple rtfm to be honest. Just a guess, but winget users group might be fine with that compromise to get the package install option and updates.