Nullsoft Scriptable Install System (NSIS), is an open source, script-driven installation system with minimal overhead being backed by Nullsoft, creators of Winamp. NSIS 1 is in many ways similar to the classic Windows installer, but it is more easily scriptable and supports more compression formats. NSIS 2 has a new streamlined GUI, supports LZMA compression, multiple languages and an easy plugin system. The NSIS script compiler compiles on POSIX platforms.
Nullsoft Scriptable Install System | |
---|---|
![]() NSIS Installer | |
Developer(s) | Nullsoft |
Stable release | |
Repository | |
Operating system | Windows, POSIX |
Type | Software development tools |
License | zlib/libpng license |
Website | nsis.sf.net |
History
NSIS was created because of the need to distribute Winamp. It is based on PiMP (plugin Mini Packager), also a Nullsoft creation, and is also known as SuperPiMP. After version 2.0a0, the project was moved to SourceForge where developers outside of Nullsoft started working on it on a regular basis. After almost two years of alphas, betas and release candidates, NSIS 2.0 was released.
POSIX
2.01 was the first version to compile on POSIX platforms out of the box. This allows cross-compilation of Windows installers on Linux and FreeBSD without the usage of WINE. Currently, the only supported hardware platform is x86.
Concepts
Script
The NSIS compiler, makensis, compiles scripts into installers. Each line contains one command.
# example script Name "Example1" OutFile "example1.exe" InstallDir $PROGRAMFILES\Example1 Page directory Page instfiles Section SetOutPath $INSTDIR File ..\makensis.exe SectionEnd
Modern UI
2.0 introduced a new optional streamlined GUI called Modern UI (MUI). The MUI has a wizard-like interface. It supports a welcome, finish page, language selection dialog, description area for components and greater customization options than the old GUI.
Plugins
NSIS can be extended with plugins that can communicate with the installer. They can be written in C, C++ and Delphi and can be used to perform installation tasks or extend the installer interface. The plugins can be used with a single line of script code.
Several plugins come with the NSIS package allowing to display a splash screen, display a custom page, display an image on the background, download files from a website, perform mathematical operations, patching files and more.
Other plugins are available online. These include ZipDLL and Python plugin.
Features
External link
- NSIS homepage
- NSIS SourceForge project page
- NSIS Wiki (information, examples, plugins)