We are using the maven nsis plugin to create an installer for an Eclipse RCP based application, which works great. But the uninstaller does not delete all directories. I have analyzed the generated setup.nsi file and seen that some directories are missing. And due to the missing /R option for rmdir these directories will survive the uninstall process. This is an example:
--snip--
RMDir /REBOOTOK "$INSTDIR\plugins\plugin-name-1.0.32.0-SNAPSHOT\lib"
RMDir /REBOOTOK "$INSTDIR\plugins\plugin-name-1.0.32.0-SNAPSHOT\META-INF"
RMDir /REBOOTOK "$INSTDIR\plugins"
--snap--
As you can see, there is RMDir /REBOOTOK "$INSTDIR\plugins\plugin-name-1.0.32.0-SNAPSHOT missing.
Fix for the bug
I have attached a patch, which fixes the problem for our project. Maybe it's good enough to make it into the plugin.