Nullsoft Scriptable Install System
Un article de Wikipédia, l'encyclopédie libre.
Nullsoft Scriptable Install System (NSIS), est un logiciel libre controlable par script, qui permet la création d'installateurs pour Windows. Il a été initialement développé par Nullsoft, la société créatrice de Winamp. NSIS est une alternative aux produits commerciaux, comme par exemple InstallShield.
Sommaire |
[modifier] Histoire
NSIS a été créé pour distribuer Winamp. Il se base sur un produit précédent de Nullsoft : PiMP (plugin Mini Packager)qui est aussi connu sous le nom de SuperPiMP. Après la version 2.0a0, le projet a été placé sur SourceForge où des développeurs extérieurs à Nullsoft ont pu commencer a l'améliorer. NSIS 2.0 a été publié à peu près 2 ans plus tard.
NSIS version 1 est très similaire au classique Windows Installer, mais est plus facile a scripter et supporte d'avantage de formats. NSIS version 2 possède une nouvelle interface graphique, supporte la compression LZMA, est traduit dans plusieurs langues et introduit un mecanisme de module simple.
[modifier] POSIX
La version 2.01 a été la première version à compiler sur les plate-formes POSIX. Cela permet la compilation croisée (en anglais cross-compilation) d'installeurs sous Windows et Linux sans émulation. Actuellement la seule architecture supportée est x86.
[modifier] Conceptes
[modifier] Scripts
Le compilateur NSIS, makensis, compile des scripts comme l'exemple suivant pour en faire un programme executable. Le script contient une commande par ligne.
# Script d'exemple Name "Exemple1" OutFile "exemple1.exe" InstallDir "$PROGRAMFILES\Exemple1" Page Directory Page InstFiles Section SetOutPath $INSTDIR File ..\makensis.exe SectionEnd
[modifier] Interface utilisateur
NSIS 2.0 a introduit un nouveau style grahique optionel appellé Modern UI (MUI). L'interface MUI possède un assistant qui en plus de proposer d'avantage de réglage, propose :
- une page de bienvenue
- une page finale
- une page pour la selection de la langue
- une page de description des composants
# script d'exemple "Modern UI" !include MUI.nsh Name "Exemple 2" OutFile Exemple2.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
[modifier] Modules
NSIS peut être étendu via des modules qui peuvent communiquer avec l'installeur. Ceux-ci peuvent être écrit en C, C++, et Delphi. Ils peuvent être utilisés pour effectuer des tâches d'installation ou pour étendre le code. Un module peut être appellé depuis NSIS grâce à simplement une ligne de code.
Divers modules sont fournis avec le NSIS. Ils permettent, entre autre d'afficher un écran de démarrage, une page personnalisée, une image d'arrière plan, de télécharger un fichier depuis un site internet ou bien encore d'effectuer des operations mathématiques.
Plusieurs modules sont disponibles en ligne, comme ZipDLL, ou bien un interpreteur Python plugin.
[modifier] Fonctionnalités
- taille en mémoire très réduite
- compressions zlib, bzip2, et LZMA
- basé sur des scripts
- multilangage
- support de modules
- interpretateur de scripts
- La liste complète en anglais
[modifier] Produits connus utilisent NSIS
- Mozilla Firefox 2.0
- Winamp
- Les pilotes ATI
- DivX
- Kaspersky AntiVirus
- eMule
- Irfanview
- 7-Zip
- Miranda IM
- Gaim
- GRAMPS
- CDex
- VideoLAN
- OpenOffice.org pour Windows
- Intel (compilateur C)
- Google (Picasa, Talk)
- FileZilla
- NASA World Wind
- LyX
- Une liste plus complète en anglais est disponible sur le site officiel
[modifier] Les interfaces graphiques
NSIS utilisent uniquement des fichiers textes pour la configuration des projets. Toutefois, des logiciels tiers permettent leur édition :
- EclipseNSIS est un module pour la plateforme Eclipse. Il permet l'édition, la compilation et la validation de scripts NSIS
- HM NIS EDIT
- NSIS UltraModern User Interface est une nouvelle interface avec avec un style ressemblant aux installateurs les plus récents. L'interface UltraModern ajoute le support de nouvelles pages (Confirmation, Information, Annulation, Modifier/Réparer/Supprimer, Mettre à jour/Supprimer, Type d'installation, Tâches Additionnel, Numéro de série...).
- ExperienceUI for NSIS
[modifier] Liens externes
- Site officiel français de NSIS (ce site contient des informations, un wiki, des exemples, des modules, ...)
- le projet NSIS sur SourceForge
- SourceForge.net Projet du mois en janvier 2006
- HM NIS EDIT (un editeur libre pour NSIS)
- Venis (Visual Environment for Nullsoft Install System)
- Mihov's freeware NSIS editor
- EclipseNSIS (éditez, compilez et testez vos scripts NSIS dans Eclipse)
- ExperienceUI for NSIS (interface complètement personnalisable)
- Notepad2 (remplacant pour Windows Notepad avec colorisation syntaxique)
|
|