Nullsoft Scriptable Install System

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Nullsoft Scriptable Install System
NSIS screenshot.png
NSIS установщик
Тип

Установщик

Разработчик

Nullsoft

Написана на

C, C++

Операционная система

Microsoft Windows, POSIX

Последняя версия

2.46 (6 декабря 2009)

Тестовая версия

3.00a1 (14 июля 2013)

Лицензия

Лицензия zlib

Сайт

nsis.sourceforge.net

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 был выпущен в свет 2 года спустя.

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 поставляются несколько плагинов, позволяющих добавлять новые страницы, заменять фоновые изображения, скачивать файлы из Интернета, выполнять математические вычисления, обновлять файлы и многое другое.

Особенности[1][править | править исходный текст]

  • Очень маленький размер установочного блока (около 34 Кбайт)
  • zlib, bzip2 и LZMA-сжатие
  • Гибкая система скриптов
  • Мультиязычность
  • Поддержка плагинов
  • Скрипт препроцессор
  • Создание Web-установщиков

Программы и игры, использующие NSIS[2][править | править исходный текст]

Редакторы[править | править исходный текст]

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

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

NSIS Media Malware[править | править исходный текст]

Название NSIS имеет также компания, занимающаяся распространением malware (вредоносных программ). Предположительно, компания взяла себе такое имя, чтобы казаться более солидной и законной, но это плохо отразилось на репутации NSIS, не имеющего к этой компании никакого отношения. Некоторые пользователи утверждали, что все дистрибутивы, сделанные с помощью NSIS, содержат соответствующую вредоносную программу. На самом деле, это не так, а наличие или отсутствие вредоносного кода зависит от того, кто создаёт дистрибутивы и через какие каналы они загружаются.

См. также[править | править исходный текст]

Примечания[править | править исходный текст]

Ссылки[править | править исходный текст]