File: installer.nsis

package info (click to toggle)
mpsolve 3.2.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 13,100 kB
  • sloc: ansic: 25,748; sh: 4,925; cpp: 3,155; makefile: 914; python: 407; yacc: 158; lex: 85; xml: 41
file content (119 lines) | stat: -rw-r--r-- 5,637 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
!include "MUI2.nsh"
!define MUI_COMPONENTSPAGE_SMALLDESC "MPSolve";
!define MUI_INSTFILESPAGE_COLORS "AAAAFF 000000" ;

Name "MPSolve"

# set the name of the installer
Outfile "SetupMPSolve.exe"

# For removing Start Menu shortcut in Windows 7
RequestExecutionLevel admin

InstallDir $PROGRAMFILES\MPSolve

; Registry key to check for directory (so if you install again, it will
; overwrite the old one automatically)
InstallDirRegKey HKLM "Software\NSIS_MPSolve" "Install_Dir"

Var StartMenuFolder

!insertmacro MUI_LANGUAGE "English"

; Load pages
  !insertmacro MUI_PAGE_LICENSE "COPYING"
  !insertmacro MUI_PAGE_COMPONENTS
  !insertmacro MUI_PAGE_DIRECTORY

  !define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU"
  !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\NSIS_MPSolve"
  !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "MPSolve"

  !insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
  !insertmacro MUI_PAGE_INSTFILES

  !insertmacro MUI_UNPAGE_CONFIRM
  !insertmacro MUI_UNPAGE_INSTFILES

 
# create a default section.
section "MPSolve"

	SetOutPath $INSTDIR

	; Write the installation path into the registry
	WriteRegStr HKLM SOFTWARE\NSIS_MPSolve "Install_Dir" "$INSTDIR"
	; Write the uninstall keys for Windows
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" "MPSolve" "MPSolve"
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" "Uninstall" '"$INSTDIR\uninstall.exe"'
	WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" "NoModify" 1
	WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" "NoRepair" 1
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" \
                 "DisplayName" "MPSolve -- Multiprecision polynomial solver"
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" \
                 "UninstallString" "$\"$INSTDIR\uninstall.exe$\""
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve" \
	             "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S"
	WriteUninstaller "uninstall.exe"

	File /r "bin"
        File /r "include"
	File /r "lib"
	File /r "share"

	!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
	CreateDirectory "$SMPROGRAMS\MPSolve"
	createShortCut "$SMPROGRAMS\MPSolve\MPSolve.lnk" "$INSTDIR\bin\xmpsolve.exe"
	createShortCut "$SMPROGRAMS\MPSolve\Uninstall MPSolve.lnk" "$INSTDIR\uninstall.exe"
	!insertmacro MUI_STARTMENU_WRITE_END

sectionEnd

; Descriptions
  LangString "MUI_INNERTEXT_STARTMENU_CHECKBOX" ${LANG_ENGLISH} "Don't install a Start Menu entry for MPSolve"
  LangString "MUI_INNERTEXT_STARTMENU_TOP" ${LANG_ENGLISH} "Select the name for the Start Menu entry for MPSolve"
  LangString "MUI_UNTEXT_CONFIRM_TITLE" ${LANG_ENGLISH} "Uninstall MPSolve"
  LangString "MUI_UNTEXT_CONFIRM_SUBTITLE" ${LANG_ENGLISH} "MPSolve will be definitely removed from the PC"
  LangString "MUI_UNTEXT_UNINSTALLING_TITLE" ${LANG_ENGLISH} "Uninstall MPSolve"
  LangString "MUI_UNTEXT_UNINSTALLING_SUBTITLE" ${LANG_ENGLISH} "MPSolve will be definitely removed from the PC"
  LangString "MUI_UNTEXT_FINISH_TITLE" ${LANG_ENGLIH} "Uninstall MPSolve"
  LangString "MUI_UNTEXT_FINISH_SUBTITLE" ${LANG_ENGLISH} "MPSolve has been removed from the PC"
  LangString "MUI_UNTEXT_ABORT_TITLE" ${LANG_ENGLISH} "Uninstall MPSolve"
  LangString "MUI_UNTEXT_ABORT_SUBTITLE" ${LANG_ENGLISH} "MPSolve will be definitely removed from the PC"
  LangString MUI_TEXT_LICENSE_TITLE ${LANG_ENGLISH} "License terms for MPSolve"
  LangString MUI_TEXT_LICENSE_SUBTITLE ${LANG_ENGLISH} "Please accept the following terms to use MPSolve."
  LangString MUI_TEXT_COMPONENTS_TITLE ${LANG_ENGLISH} "MPSolve components"
  LangString MUI_TEXT_COMPONENTS_SUBTITLE ${LANG_ENGLISH} "Please select the components of MPSolve that you want to install on the system."
  	LangString MUI_INNERTEXT_LICENSE_BOTTOM ${LANG_ENGLISH} "For more information ses http://fsf.org/"
	LangString MUI_INNERTEXT_LICENSE_TOP ${LANG_ENGLISH} "MPSolve is licensed with GPL3"
	LangString MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE ${LANG_ENGLISH} "Details"
	LangString MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO ${LANG_ENGLISH}  "Base files for the MPSolve installation"
	LangString MUI_TEXT_DIRECTORY_TITLE ${LANG_ENGLISH}  "MPSolve installation path"
	LangString MUI_TEXT_DIRECTORY_SUBTITLE ${LANG_ENGLISH}  "Select the directory where MPSolve will be installed"
	LangString MUI_TEXT_STARTMENU_TITLE ${LANG_ENGLISH}  "MPSolve"
	LangString MUI_TEXT_STARTMENU_SUBTITLE ${LANG_ENGLISH}   "Installation of the start menu entries"
	LangString MUI_TEXT_INSTALLING_TITLE ${LANG_ENGLISH}  "MPSolve is installing on the system"
	LangString MUI_TEXT_INSTALLING_SUBTITLE  ${LANG_ENGLISH} "Please wait while all the files are copied in place"
	LangString MUI_TEXT_FINISH_TITLE ${LANG_ENGLISH}  "MPSolve has been installed"
	LangString MUI_TEXT_FINISH_SUBTITLE ${LANG_ENGLISH}  "You may now start it from the Windows menu"
	LangString MUI_TEXT_ABORT_TITLE ${LANG_ENGLISH}  "Aborting MPSolve installation"
	LangString MUI_TEXT_ABORT_SUBTITLE ${LANG_ENGLISH}  "Installation has been interrupted"
       
section "uninstall"

	ReadRegStr $0 HKLM "Software\NSIS_MPSolve" "Install_Dir"

	; Remove registry keys
	DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\MPSolve"
	DeleteRegKey HKLM SOFTWARE\NSIS_MPSolve

	Delete /REBOOTOK $0\*
	RMDir /r $0

	delete "$SMPROGRAMS\MPSolve\Uninstall MPSolve.lnk"
	delete "$SMPROGRAMS\MPSolve\MPSolve.lnk"
	RMDir "$SMPROGRAMS\MPSolve"

	DeleteRegKey /ifempty HKCU "Software/NSIS_MPSolve"

sectionEnd