Interested Article - Nullsoft Scriptable Install System
- 2020-02-13
- 1
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 обладает рядом особенностей :
- маленький размер установочного блока (около 34 Кбайт);
- несколько методов сжатия файлов — zlib , bzip2 и LZMA ;
- гибкая система скриптов;
- поддержка множества языков;
- расширение функциональности при помощи плагинов ;
- скрипт- препроцессор ;
- возможность создания веб-установщиков.
Программы и игры, использующие NSIS
К наиболее известным проектам, использующим NSIS, относятся :
|
|
- Скретч (язык программирования) (исключаются версии 2.0 и 3.0
Редакторы
Скрипты NSIS — это обычные текстовые файлы с расширением «.nsi», которые можно создать с помощью любого текстового редактора . Тем не менее разработано несколько специальных программ, облегчающих процесс создания скриптов:
- на сайте SourceForge.net — плагин для Eclipse , позволяющий редактировать, компилировать и тестировать NSIS скрипты;
- — NSIS-редактор/IDE;
- — визуальная среда для NSIS.
См. также
Примечания
- . nsis.sourceforge.io . Дата обращения: 28 сентября 2021. 28 сентября 2021 года.
- ↑
- . Дата обращения: 14 января 2007. 16 октября 2015 года.
- . Дата обращения: 14 января 2007. 23 октября 2015 года.
Ссылки
- на сайте SourceForge.net
- 2020-02-13
- 1