Nmap
Nmap uses NSIS:_Nullsoft_Scriptable_Install_System.
Binary at https://nmap.org/dist/nmap-7.31-setup.exe
Note that at the time of writing Wireshark depends upon this
<packages:packages xmlns:packages="http://www.wpkg.org/packages"
xmlns:wpkg="http://www.wpkg.org/wpkg" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.wpkg.org/packages ../xsd/packages.xsd">
<!--
Options enumerated here: https://svn.nmap.org/nmap/mswin32/nsis/Nmap.nsi.in
You don't seem to get shortcuts with the silent installer.
-->
<package id='nmap'
name='Nmap'
revision="%version%-1"
priority='50'
reboot='false' >
<variable name="version" value="7.31" />
<variable architecture="x64" name="UNINSTALLER" value="%PROGRAMFILES(X86)%\Nmap\uninstall.exe" />
<variable architecture="x86" name="UNINSTALLER" value="%PROGRAMFILES%\Nmap\uninstall.exe" />
<check type='uninstall' condition='exists' path='Nmap %version%' />
<install cmd='%SOFTWARE%\nmap\nmap-%version%-setup.exe /S' />
<remove cmd='"%UNINSTALLER%" /S' />
<!--Wait 30 seconds, or until the uninstaller has vanished
Otherwise the check will still pass (asynch uninstaller)-->
<remove cmd='%COMSPEC% /C for /L %X in (1,1,30) do if exist "%UNINSTALLER%" @ping microsoft.com -n 1 -w 1000>nul' >
<exit code="1" />
</remove>
<upgrade include="install" />
<downgrade include="upgrade" />
</package>
</packages:packages>