Nullsoft Scriptable Install System: Difference between revisions

Content deleted Content added
No edit summary
restore redirect
Tags: New redirect Manual revert
 
(26 intermediate revisions by 10 users not shown)
Line 1:
| name =#REDIRECT [[Nullsoft#Nullsoft Scriptable Install System]]
{{primary sources|date=September 2016}}
 
{{notability|date=February 2024}}
{{Redirect category shell|
{{Use dmy dates|date=March 2022}}
{{R from subtopic}}
{{Infobox software
{{UnreferencedR to section}}
| name = Nullsoft Scriptable Install System
{{R from product name}}
| logo = Nullsoft Scriptable Install System icon.png
{{R with history}}
| screenshot = NSIS screenshot.png
| caption = NSIS Installer
| author = [[Nullsoft]]
| developer = NSIS Team and NSIS Community
| released = {{Start date and age|2000|07|31|df=yes}}<ref>[http://nsis.sourceforge.net/NSIS_1.x_Version_History NSIS 1.x Version History] – NSIS wiki</ref>
| latest release version = 3.09
| latest release date = {{Start date and age|2023|07|01|df=yes}}
| latest preview version =
| latest preview date =
| status =
| programming language = [[C (programming language)|C]], [[C++]]
| operating system = [[Windows]], [[Mac OS X]]
| platform =
| size =
| language =
| language count = <!-- Number only -->
| language footnote =
| genre = [[Software development tools]]
| license = [[zlib License]]
| alexa =
| website = {{URL|nsis.sourceforge.io}}
| standard =
| AsOf =
}}
'''Nullsoft Scriptable Install System''' ('''NSIS''') is a script-driven [[installer]] authoring tool for [[Microsoft Windows]] backed by [[Nullsoft]], the creators of [[Winamp]]. NSIS is released under a combination of [[free software licenses]], primarily the [[zlib license]].<ref>{{cite web |url=http://nsis.sourceforge.net/License |title=NSIS licence page|publisher=NSIS}}</ref> It has become a widely used alternative to [[commercial software|commercial]] [[proprietary software|proprietary]] products like [[InstallShield]], with users including [[Amazon (company)|Amazon]], [[Dropbox]], [[Google]], [[Ubisoft]], [[FL Studio]], [[BitTorrent]], and [[McAfee]].<ref>{{cite web|url=http://nsis.sourceforge.net/Users|title=Users – NSIS}}</ref>
 
==History==
NSIS was created to distribute [[Winamp]].<ref>[http://tweakers.net/nieuws/9049/winamp-260-released.html Winamp 2.60 released], From Betanews, 2000-02-14, Tweakers, ''...namely featuring a new 'SuperPiMP' installation system...''</ref> It is based on a previous Nullsoft product, PiMP (plugin Mini Packager), and is also known as SuperPiMP. After [[Software versioning|version]] 2.0a0, the project was moved to [[SourceForge]] where developers outside Nullsoft started working on it on a regular basis. NSIS 2.0 was released approximately two years later.
 
NSIS version 1 is in many ways similar to the classic [[Windows Installer]], but it supports more compression formats. NSIS version 2 features a new streamlined [[GUI|graphical user interface]] and supports [[LZMA]] compression, multiple languages, and an easy-to-use plugin system.
 
In January 2006 NSIS was SourceForge's project of the month.<ref>[https://sourceforge.net/blog/potm-2006-01/ SourceForge.net Project of the Month] in January 2006</ref><ref>{{cite web |url=http://www.opencandy.com/2011/06/09/installer-platform-comparison-making-the-right-choice/ |title=OpenCandy Installer Platform Comparison |access-date=2011-06-27 |url-status=bot: unknown |archive-url=https://web.archive.org/web/20110627230641/http://www.opencandy.com/2011/06/09/installer-platform-comparison-making-the-right-choice/ |archive-date=27 June 2011 }}</ref>
 
== Example code ==
 
<syntaxhighlight lang="nsis">
!include "MUI.nsh"
 
!define MUI_ABORTWARNING # This will warn the user if they exit from the installer.
 
!insertmacro MUI_PAGE_WELCOME # Welcome to the installer page.
!insertmacro MUI_PAGE_DIRECTORY # In which folder install page.
!insertmacro MUI_PAGE_INSTFILES # Installing page.
!insertmacro MUI_PAGE_FINISH # Finished installation page.
 
!insertmacro MUI_LANGUAGE "English"
 
Name "MyApp" # Name of the installer (usually the name of the application to install).
OutFile "MyAppInstaller.exe" # Name of the installer's file.
InstallDir "$PROGRAMFILES\MyApp" # Default installing folder ($PROGRAMFILES is Program Files folder).
ShowInstDetails show # This will always show the installation details.
 
Section "MyApp" # In this section add your files or your folders.
# Add your files with "File (Name of the file)", example: "File "$DESKTOP\MyApp.exe"" ($DESKTOP is Desktop folder); or add your folders always with "File (Name of the folder)\*", always add your folders with an asterisk, example: "File /r $DESKTOP\MyApp\*" (this will add its files and (with /r its subfolders)).
SectionEnd
</syntaxhighlight>
 
==Plugins==
{{Unreferenced section}}
NSIS can be extended with [[Plug-in (computing)|plugins]] that can communicate with the installer. Plugins can be written in any unmanaged programming language capable of building a [[dynamic-link library]] (such as C, C++ or Delphi), and they can be used to perform installation tasks or extend the installer interface. A plugin can be called with a single line of NSIS code.
 
==Generated installer==
{{Unreferenced section}}
The generated installer is a [[Portable Executable]], with the installation files archived within the installer, a 34 KB overhead for the NSIS installer,<ref name=featuresSF>{{cite web|url=http://nsis.sourceforge.net/Features|title=Features|publisher=NSIS}}</ref> and the installation script compiled into executable code. As the installation script is compiled, the script cannot be obtained from the delivered executable without reverse-engineering the binary.
 
==See also==
{{Portal|Free and open-source software}}
*[[List of installation software]]
 
==References==
{{Reflist}}
 
==External links==
{{Commons category|Nullsoft Scriptable Install System}}
*{{Official website}}
*{{sourceforge|nsis|NSIS}}
*{{openhub|nsis|NSIS}}
* [https://github.com/negrutiu/nsis Unofficial 64-bit builds]
 
[[Category:Free installation software]]
[[Category:Free software programmed in C]]
[[Category:Free software programmed in C++]]
[[Category:Portable software]]
[[Category:Software using the zlib license]]
[[Category:Utilities for Windows]]