new files, improvements

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@2168 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
joostverburg 2003-02-17 20:38:49 +00:00
parent 092409d4a3
commit 0c13d889be

View file

@ -3,6 +3,11 @@
!define VER_MAJOR 2
!define VER_MINOR 0b2
;--------------------------------
;Compile CVS Data Setup
!system '"${NSISDIR}\makensis.exe" cvsdata.nsi'
;--------------------------------
;Configuration
@ -57,7 +62,7 @@ InstallDirRegKey HKLM SOFTWARE\NSIS ""
;--------------------------------
;Languages
!define MUI_TEXT_WELCOME_INFO_TEXT "This wizard will guide you through the installation of ${MUI_PRODUCT}, a scriptable win32 installer/uninstaller system that doesn't suck and isn't huge.\r\n\r\n\r\n"
!define MUI_TEXT_WELCOME_INFO_TEXT "This wizard will guide you through the installation of NSIS, a scriptable win32 installer/uninstaller system that doesn't suck and isn't huge.\r\n\r\n\r\n"
!insertmacro MUI_LANGUAGE "English"
@ -78,6 +83,8 @@ LicenseData ..\license.txt
;--------------------------------
;Installer Sections
!define SF_SELECTED 1
Section "NSIS Development System (required)" SecCore
SectionIn 1 2 3 RO
SetOutPath $INSTDIR
@ -107,13 +114,26 @@ Section "NSIS Development System (required)" SecCore
File ..\contrib\makensisw\*.txt
SectionEnd
Section "NSIS Examples (recommended)" SecExample
Section "NSIS Menu" SecMenu
SectionIn 1 2 3
SetOutPath $INSTDIR
File ..\NSIS.exe
SetOutPath $INSTDIR\Menu
File ..\Menu\*.html
SetOutPath $INSTDIR\Menu\images
File ..\Menu\images\*.gif
SectionEnd
Section "NSIS Update" SecUpdate
SectionIn 1 2 3
SetOutPath $INSTDIR\Bin
File ..\Bin\NSISUpdate.exe
File ..\Bin\InstallCVSData.exe
SectionEnd
Section "NSIS Script Examples" SecExample
SectionIn 1 2 3
SetOutPath $INSTDIR\Examples
Delete $INSTDIR\viewhtml.nsi
Delete $INSTDIR\waplugin.nsi
Delete $INSTDIR\example*.nsi
Delete $INSTDIR\*test.nsi
Delete $INSTDIR\primes.nsi
Delete $INSTDIR\functions.htm
File ..\Examples\makensis.nsi
@ -168,14 +188,21 @@ Section "Desktop Shortcut" SecIcons
SetOutPath $INSTDIR
!ifndef NO_STARTMENUSHORTCUTS
CreateDirectory $SMPROGRAMS\NSIS
CreateShortCut "$SMPROGRAMS\NSIS\MakeNSIS GUI.lnk" "$INSTDIR\Makensisw.exe" ""
WriteINIStr "$SMPROGRAMS\NSIS\NSIS Home Page.url" "InternetShortcut" "URL" "http://www.nullsoft.com/free/nsis/"
IfFileExists "$INSTDIR\NSIS.exe" "" +2
CreateShortCut "$SMPROGRAMS\NSIS\NSIS Menu.lnk" "$INSTDIR\NSIS.exe" ""
CreateShortCut "$SMPROGRAMS\NSIS\MakeNSISW.lnk" "$INSTDIR\makensisw.exe"
WriteINIStr "$SMPROGRAMS\NSIS\NSIS Development Site.url" "InternetShortcut" "URL" "http://www.nsis.sourceforge.net/"
CreateShortCut "$SMPROGRAMS\NSIS\Uninstall NSIS.lnk" "$INSTDIR\uninst-nsis.exe"
CreateShortCut "$SMPROGRAMS\NSIS\NSIS Documentation.lnk" "$INSTDIR\Docs\index.html"
!endif
CreateShortCut "$DESKTOP\MakeNSIS.lnk" "$INSTDIR\Makensisw.exe" ""
IfFileExists "$INSTDIR\NSIS.exe" "" +3
CreateShortCut "$DESKTOP\Nullsoft Install System.lnk" "$INSTDIR\NSIS.exe" ""
Goto +2
CreateShortCut "$DESKTOP\Nullsoft Install System.lnk" "$INSTDIR\makensisw.exe" ""
SectionEnd
SubSection "Contrib" SecContrib
@ -192,6 +219,7 @@ SubSection "Extra User Interfaces" SecContribUIs
File "..\Examples\Modern UI\ioC.ini"
File "..\Examples\Modern UI\StartMenu.nsi"
File "..\Examples\Modern UI\WelcomeFinish.nsi"
SetOutPath "$INSTDIR\Contrib\Modern UI"
File "..\Contrib\Modern UI\System.nsh"
File "..\Contrib\Modern UI\Readme.jpg"
@ -201,18 +229,20 @@ SubSection "Extra User Interfaces" SecContribUIs
File "..\Contrib\Modern UI\Screenshot2.png"
File "..\Contrib\Modern UI\License.txt"
File "..\Contrib\Modern UI\ioSpecial.ini"
SetOutPath "$INSTDIR\Contrib\Modern UI\Language files"
File "..\Contrib\Modern UI\Language files\*.nsh"
SetOutPath "$INSTDIR\Contrib\UIs"
SetOutPath $INSTDIR\Contrib\UIs
File "..\Contrib\UIs\modern.exe"
File "..\Contrib\UIs\modern2.exe"
File "..\Contrib\UIs\modern3.exe"
SetOutPath $INSTDIR\Contrib\Icons
File "..\Contrib\Icons\modern-install.ico"
File "..\Contrib\Icons\modern-uninstall.ico"
File "..\Contrib\Icons\modern-wizard.bmp"
SetOutPath $INSTDIR\Include
File "..\Include\MUI.nsh"
SectionEnd
Section "Default User Interface" SecContribDefaultUI
@ -240,10 +270,20 @@ SectionEnd
Section "Language files" SecContribLang
SectionIn 1 2
SetOutPath "$INSTDIR\Contrib\Language files"
File "..\Contrib\Language files\*.nlf"
SetOutPath $INSTDIR\Bin
File ..\Bin\MakeLangID.exe
SectionGetFlags ${SecContribModernUI} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} 0 nomui nomui
SetOutPath "$INSTDIR\Contrib\Modern UI\Language files"
File "..\Contrib\Modern UI\Language files\*.nsh"
nomui:
SectionEnd
SubSection "Plugins" SecContribPlugins
@ -552,19 +592,41 @@ SubSectionEnd
SubSectionEnd
Section -post
SetOutPath $INSTDIR
WriteRegStr HKLM SOFTWARE\NSIS "" $INSTDIR
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "DisplayName" "NSIS Development Kit (remove only)"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "UninstallString" '"$INSTDIR\uninst-nsis.exe"'
;Always install the Modern UI English language file
SectionGetFlags ${SecContribLang} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} langfiles
SectionGetFlags ${SecContribModernUI} $R0
IntOp $R0 $R0 & ${SF_SELECTED}
IntCmp $R0 ${SF_SELECTED} "" nomui
SetOutPath "$INSTDIR\Contrib\Modern UI\Language files"
File "..\Contrib\Modern UI\Language files\English.nsh"
nomui:
langfiles:
SetOutPath $INSTDIR
WriteRegStr HKLM SOFTWARE\NSIS "" $INSTDIR
WriteRegExpandStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "UninstallString" "$INSTDIR\uninst-nsis.exe"
WriteRegExpandStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "InstallLocation" "$INSTDIR"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "DisplayName" "Nullsoft Install System"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "DisplayIcon" "$INSTDIR\NSIS.exe,0"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "DisplayVersion" "${MUI_VERSION}"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "VersionMajor" "${VER_MAJOR}"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "VersionMinor" "${VER_MINOR}"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "NoModify" "1"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\NSIS" "NoRepair" "1"
!ifndef NO_STARTMENUSHORTCUTS
IfFileExists $SMPROGRAMS\NSIS "" nofunshit
IfFileExists $INSTDIR\Examples 0 +2
CreateShortCut "$SMPROGRAMS\NSIS\NSIS Examples Directory.lnk" "$INSTDIR\Examples"
IfFileExists $INSTDIR\Examples 0 +2
CreateShortCut "$SMPROGRAMS\NSIS\NSIS Examples Directory.lnk" "$INSTDIR\Examples"
IfFileExists "$INSTDIR\Source" 0 +2
CreateShortCut "$SMPROGRAMS\NSIS\MakeNSIS project workspace.lnk" "$INSTDIR\source\makenssi.dsw"
CreateShortCut "$SMPROGRAMS\NSIS\MakeNSIS project workspace.lnk" "$INSTDIR\source\makenssi.dsw"
CreateDirectory $SMPROGRAMS\NSIS\Contrib\Source
@ -572,7 +634,7 @@ Section -post
CreateDirectory $SMPROGRAMS\NSIS\Contrib
CreateShortCut "$SMPROGRAMS\NSIS\Contrib\MakeNSISW readme.lnk" "$INSTDIR\contrib\MakeNsisw\readme.txt"
Push "MakeNSISW"
Push "MakeNSISW"
Call AddWorkspaceToStartMenu
; ExDLL
@ -589,8 +651,8 @@ Section -post
Call AddContribToStartMenu
; ZIP2EXE
IfFileExists "$INSTDIR\Bin\zip2exe.exe" 0 +2
CreateShortCut "$SMPROGRAMS\NSIS\Contrib\ZIP 2 EXE converter.lnk" "$INSTDIR\Bin\zip2exe.exe"
IfFileExists "$INSTDIR\Bin\zip2exe.exe" 0 +2
CreateShortCut "$SMPROGRAMS\NSIS\Contrib\ZIP 2 EXE converter.lnk" "$INSTDIR\Bin\zip2exe.exe"
Push ZIP2EXE
Call AddWorkspaceToStartMenu
@ -665,12 +727,6 @@ Section -post
Push "Source\System project workspace"
Call AddContribToStartMenu
!ifndef DONTSHOWSHORTCUTS
; open sesame
ExecShell open '$SMPROGRAMS\NSIS'
Sleep 500
BringToFront
!endif
nofunshit:
!endif
@ -692,6 +748,8 @@ SectionEnd
!insertmacro MUI_FUNCTIONS_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SecCore} "The Core files required to use NSIS"
!insertmacro MUI_DESCRIPTION_TEXT ${SecExample} "Example installation scripts that show you how to use NSIS"
!insertmacro MUI_DESCRIPTION_TEXT ${SecMenu} "A menu that contains links to NSIS information, utilities and websites"
!insertmacro MUI_DESCRIPTION_TEXT ${SecUpdate} "A tool that lets you check for new NSIS releases and download the latest development files"
!insertmacro MUI_DESCRIPTION_TEXT ${SecExtention} "Adds right mouse click integration to nsi files so you can compile scripts easily"
!insertmacro MUI_DESCRIPTION_TEXT ${SecIcons} "Adds icons to your start menu and your desktop for easy access"
!insertmacro MUI_DESCRIPTION_TEXT ${SecContrib} "User interfaces, tools, graphics, files, and other utilities contributed by other NSIS developers"
@ -740,12 +798,10 @@ SectionEnd
;--------------------------------
;Installer Functions
!define SF_SELECTED 1
!macro secSelected SEC
SectionGetFlags ${SEC} $R7
IntOp $R7 $R7 & ${SF_SELECTED}
StrCmp $R7 ${SF_SELECTED} 0 +2
IntCmp $R7 ${SF_SELECTED} 0 +2
IntOp $R0 $R0 + 1
!macroend