Am 04.03.25 um 10:34 schrieb Rainer Jung:
Hi all,
...
The rough idea is: switch back to a multi step build, first generate the
uninstaller, sign it, then generate the real installer an sign it. But
avoid the need to run the temporary installer. How? NSIS does not have
an explicit statement to write our the uninstaller, but the uninstaller
callback "!uninstfinalize" we currently use to sign the uninstaller gets
the path to a temporary file containing the uninstaller as "%1". So
instead of calling ant to sign the file, we could:
- run nsis such that it gets to "!uninstfinalize" and instead of
calling ant to sign, try to copy the file "%1" to ${tomcat.dist}.
- sign the file
- now run nsis to generate the final installer including that signed
uninstaller
- sign the uninstaller
I implemented this and tested it on Linux with custom makensis and on
Windows with native makensis.exe. I could not test the codesigning part
on Windows, because I did not have the right detached signatures and
using a wrong one seems to prevent NSIS from packaging the Uninstall.exe
(a mmap call used by nsis seems to fail).
I could not really test for wine, but at least the callback step is now
much more trivial, just a copy of a file to the current directory. No
more ant calls from the NSIS callback.
It would be nice, if people could try it with wine and the other
toolsets used, so that we know before the next release round, whether
this works or not.
Thanks a bunch!
Regards,
Rainer
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org