Nullsoft Scriptable Install System

Nullsoft Scriptable Install System
Логотип программы Nullsoft Scriptable Install System
Скриншот программы Nullsoft Scriptable Install System
Тип Установщик
Разработчик Nullsoft
Написана на C++[3], Си[3], Nullsoft Scriptable Install System[3] и PHP[3]
Операционные системы Microsoft Windows, POSIX
Дата выпуска 31 июля 2000[1]
Последняя версия 3.11 (8 марта 2025 года[2])
Репозиторий sourceforge.net/p/nsis/c…
github.com/kichik/nsis
Состояние активное
Лицензия лицензия zlib
Сайт nsis.sourceforge.net (англ.)
nsis-dev.github.io (англ.)
Логотип Викисклада Медиафайлы на Викискладе

Nullsoft Scriptable Install System (NSIS) — система создания установочных программ для Microsoft Windows с открытым исходным кодом, разработанная компанией Nullsoft — автором плеера Winamp. NSIS был задуман как альтернатива InstallShield, предназначенного для коммерческих продуктов.

История

Изначально NSIS был спроектирован для распространения Winamp. Он основан на предыдущем продукте Nullsoft — PiMP (plugin Mini Packager), иначе известном как SuperPiMP. После версии 2.0a0 проект был перемещён на SourceForge.net, где к работе над ним присоединились и сторонние разработчики. Два года спустя появился NSIS 2.0.

NSIS версии 1 очень похож на классический Windows Installer, но он был более управляемым с помощью скриптов и поддерживал другие форматы сжатия. NSIS версии 2 поддерживает новый графический интерфейс пользователя, LZMA-сжатие, многоязычность и имеет развитую систему плагинов.

POSIX

Версия 2.01 была первой версией, поддерживающей компиляцию на любой из POSIX-платформ. Это позволило создавать Windows-установщики на GNU/Linux и FreeBSD без использования Wine. На данный момент поддерживается компиляция только для Windows.

Скрипт

Компилятор NSIS — программа makensis — компилирует скрипты в исполняемый код. Каждая строчка скрипта содержит одну команду. Пример:

 # Пример скрипта
 Name "Example1"
 OutFile "example1.exe"
 InstallDir "$PROGRAMFILES\Example1"
 Page Directory
 Page InstFiles
 Section
   SetOutPath $INSTDIR
   File ..\makensis.exe
 SectionEnd

Modern User Interface

В версии 2.0 был введён новый графический интерфейс пользователя, названный Modern UI (MUI). MUI очень похож на интерфейс традиционных установочных "мастеров", поддерживает заставку, выбор языка и устанавливаемых компонентов и имеет более широкие возможности настройки, чем его предшественник. Пример:

 # Пример скрипта с Modern UI
 !include MUI.nsh
 Name "Example 2"
 OutFile Example2.exe
 !insertmacro MUI_PAGE_WELCOME
 !insertmacro MUI_PAGE_LICENSE "license.rtf"
 !insertmacro MUI_PAGE_DIRECTORY
 !insertmacro MUI_PAGE_COMPONENTS
 !insertmacro MUI_PAGE_INSTFILES
 !insertmacro MUI_PAGE_FINISH
 !insertmacro MUI_LANGUAGE "English"
 !insertmacro MUI_LANGUAGE "German"
 !insertmacro MUI_LANGUAGE "French"
 Section "Extract makensis"
  SetOutPath $INSTDIR
  File ..\makensis.exe
 SectionEnd

Плагины

NSIS допускает расширение с помощью плагинов, которые могут быть написаны на C++, С и Delphi. Плагины применяются для улучшения функциональности и интерфейса установщика и могут быть вызваны в любой части кода NSIS-скрипта.

С пакетом NSIS поставляются несколько плагинов, позволяющих добавлять новые страницы, заменять фоновые изображения, скачивать файлы из Интернета, выполнять математические вычисления, обновлять файлы и др.

Особенности

По сравнению с другими системами создания инсталляторов NSIS обладает рядом особенностей[4]:

  • маленький размер установочного блока (около 34 Кбайт);
  • несколько методов сжатия файлов — zlib, bzip2 и LZMA;
  • гибкая система скриптов;
  • поддержка множества языков;
  • расширение функциональности при помощи плагинов;
  • скрипт-препроцессор;
  • возможность создания веб-установщиков.

Программы и игры, использующие NSIS

К наиболее известным проектам, использующим NSIS, относятся[5]:

Редакторы

Скрипты NSIS — это обычные текстовые файлы с расширением «.nsi», которые можно создать с помощью любого текстового редактора. Тем не менее разработано несколько специальных программ, облегчающих процесс создания скриптов:

  • Проект EclipseNSIS на сайте SourceForge.net — плагин для Eclipse, позволяющий редактировать, компилировать и тестировать NSIS скрипты;
  • HM NIS EDIT — NSIS-редактор/IDE;
  • Venis — визуальная среда для NSIS.

См. также

Примечания

  1. NSIS version history
  2. Changelog and Release Notes. nsis.sourceforge.io. Дата обращения: 25 марта 2025. Архивировано 13 марта 2025 года.
  3. 1 2 3 4 https://www.openhub.net/p/nsis/analyses/latest/languages_summary
  4. Features — NSIS. Дата обращения: 14 января 2007. Архивировано 16 октября 2015 года.
  5. Users — NSIS. Дата обращения: 14 января 2007. Архивировано 23 октября 2015 года.

Ссылки

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.