Archive: evaluating NSIS


evaluating NSIS
Hi all,

I tried to read as much as possible about NSIS, to see if it meets the requirements I have. I still have some questions and maybe smbd can answer them:

1) I read that it can do: give to the tool a bunch of files for instance: myapp.exe, setup.exe (installer intelligence), myapp.dll, etc and those can be packed together on a Linux system and it will generate a Windows binary that when run on Windows will run the file setup.exe packed inside.
Is the above correct?

2) Is NSIS able to provide updates in a pacth format? Meaning apply just a diff to the files?

3) What happens if an update needs to be applied and some files are in use?

4) Can I somehow force an "always overwrite" flag for the files to be installed? I mean if the files are found in the destination directory to be always overwritten by the ones from the package?

5) Can I get 2 different builds:
- one, where everything is compressed into one .exe file, including myapp files
- one that is not compressed, meaning I get the setup.exe containing the installer inteligence and the other files like myapp files outside from the installer exe

6) Is there a wizard that I could use to generate a basic installer? Or do I have to manually write from the scratch a script file?

Thanks in advance,
Vivi


  1. Yes, you can create Windows installers on Linux using NSIS.
  2. Yes, see Docs\VPatch.
  3. You can use the Library macros to handle updating of in-use DLLs. See Appendix B of the docuemntation.
  4. Yes, see SetOverwrite.
  5. Yes, see SetCompress.
  6. Yes, see the Wiki. There are more available, that's just a partial list.

Another factor to take into consideration for your evaluation ....

I've found this forum to be very active and incredibly helpful ... and patient with newbies (and users who have gotten rusty).

This is something of an intangible, but, IMO, nsis has tremendous support.


Hi guys,

Thanks for your answers. As it seems NSIS meets by basic requirements, I'll start playing with it a little.

One more question: I read that the silent feature is by default in. I assume it doesn't show any dialog and uses the default values for everything in the script. Still is there a way an admin (that needs to deply the sw in a company) to overwrite those default settings that were decided in the first place by the developer?

Thanks,
Viv


You can have your installer read an INI file (ReadINIStr) in silent mode (use IfSilent to check it it's silent or not) and use the values from it to overwrite your defaults.