Nullsoft Scriptable Install System

(Ümber suunatud leheküljelt NSIS)

Nullsoft Scriptable Install System (NSIS) on avatud lähtekoodiga Microsoft Windows platvormile tehtud süsteem paigalduspakkide valmistamiseks. Selle töötas välja Nullsoft, mis oli omakorda rajatud Winampi poolt. NSIS on loodud alternatiiviks kommertstoodete jaoks mõeldud InstallShieldile.

Nullsoft Scriptable Install System

NSIS Installer
Arendaja Nullsoft
Viimane väljalase 3.08 / 25.09.2021 Muuda Vikiandmetes
Kirjutatud keeles C, C++
OS Windows, POSIX
Suunitlus Installeerija
Litsents zlib license
Veebisait nsis.sourceforge.net

Ajalugu muuda

NSIS oli loodud Winampi levitamiseks. See põhineb varasemal tootel Nullsoft – PiMP (plugin Mini Packager), mis on tuntud ka kui SuperPiMP. Pärast 2.0a0 versiooni koliti projekt SourceForge.net keskkonda, kus arendamisega liitusid ka välised arendajad. NSIS 2.0 anti välja 2 aastat hiljem. Esimese versiooni NSIS oli väga klassikalise Windows Installeri sarnane, aga see oli tänu skriptidele juhitavam ning see toetaks ka teisi arhiivimisvorminguid. Teise versiooni NSIS toetas uut graafilist kasutajaliidest,LZMA- tihendust, mitmekeelsust ja omas head pluginasüsteemi.

Posix muuda

Versioon 2.01 oli esimene versioon, mis toetas kompileerimist igal POSIX-platvormil. See võimaldas luua Windowsi installereid GNU/Linux ja FreeBSD jaoks, kasutamata Wine emulaatorit. Seni toetati kompileerimist ainult Windowsis.

Skript muuda

NSIS kompilaator – ’’makensis’’ programm – kompileerib skripte kasutatavasse koodi. Iga skripti rida sisaldab üht käsku. Näide:

 # Skripti näide
 Name "Example1"
 OutFile "example1.exe"
 InstallDir "$PROGRAMFILES\Example1"
 Page Directory
 Page InstFiles
 Section
   SetOutPath $INSTDIR
   File ..\makensis.exe
 SectionEnd

Modern User Interface muuda

Versioonis 2.0 oli võetud kasutusele uus graafiline kasutajaliides, mille nimeks sai Modern UI (MUI). MUI on masterite liidesega sarnane, ta toetab splash-avakuva, keele valikut, installitavate komponentide valikut ning palju laialdasemaid seadistamise võimalusi võrreldes oma eelkäijaga. Näide:

 # Skripti näide Modern UI-ga
 !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

Pluginad muuda

NSIS-st on võimalik täiendada mitmesuguste pluginatega, mis võivad olla kirjutatud C++, C-s ja Delphis. Pluginaid võib kasutada installeri liidese ja funktsionaalsuse parendamiseks ning neid võib välja kutsuda igas NSIS-i skripti osas. NSIS-i paketiga tarnitakse mitmeid pluginaid, mis võimaldavad lisada uusi lehekülgi, vahetada tausta, Internetist faile alla laadida, teha matemaatikatehteid, uuendada faile ja teha palju muudki.

Iseärasused [1] muuda

  • Väga väike installimisplokk (ligi 34 kB);
  • zlib-, bzip2- ja LZMA-tihendus;
  • Painduv skriptide süsteem;
  • Mitmekeelsus;
  • Pluginate tugi;
  • Skript Preprotsessor;
  • Veebiinstallerite loomine.

Programmid ja mängud, mis kasutavad NSIS-i [2] muuda

Redaktorid muuda

NSIS-i skriptid on iseenesest tavalised tekstifailid ja neid saab moodustada ükskõik millise tekstiredaktori abil. Sellegipoolest on välja töötatud ka spetsiaalseid programme, mis kergendavad skriptide loomise protsessi:

NSIS Media Malware muuda

NSIS-i nime kannab ka ettevõte, mis tegeleb kuritahtliku tarkvara levitamisega (kahjulikud programmid). Eeldatavalt võttis ettevõte sellise nime, et näida soliidsem ja legaalsem, aga see osutus kahjulikuks NSIS-i installeri reputatsioonile, millel pole kuritahtliku tarkvaraga mingit pistmist. Osa kasutajatest kinnitas, et kõik NSIS-iga tehtud distributsioonid sisaldavad vastavat pahavaralist kahjulikku programmi. Tegelikult sõltub kahjuliku koodi olemasolu distributsiooni loojast ja levitamise kanalitest.

Viited muuda

Välislingid muuda