source: trunk/installer.nsi @ 337

Revision 337, 12.7 KB checked in by bartek, 8 years ago (diff)

version update to 1.6.2

Line 
1; Script generated by the HM NIS Edit Script Wizard.
2
3; HM NIS Edit Wizard helper defines
4!define PRODUCT_NAME "QCG-Icon"
5!define PRODUCT_VERSION "1.6.2"
6!define PRODUCT_PUBLISHER "PSNC"
7!define PRODUCT_WEB_SITE "http://www.qoscosgrid.org/trac/qcg-icon"
8!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\qcg-icon"
9!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
10!define PRODUCT_UNINST_ROOT_KEY "HKLM"
11
12; MUI ------
13!include "MUI2.nsh"
14
15; MUI Settings
16!define MUI_ABORTWARNING
17; !define MUI_ICON "resources\qcg-icon-128.ico"
18!define MUI_ICON "resources\qcg-logo-stones.ico"
19!define MUI_HEADERIMAGE
20!define MUI_HEADERIMAGE_BITMAP "dist_static\resources\qcg-icon-header.bmp"
21!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
22
23; Welcome page
24!insertmacro MUI_PAGE_WELCOME
25
26; Directory page
27!insertmacro MUI_PAGE_DIRECTORY
28
29; Instfiles page
30!insertmacro MUI_PAGE_INSTFILES
31
32; from: http://nsis.sourceforge.net/Docs/Modern%20UI/Readme.html
33; "  MUI_FINISHPAGE_SHOWREADME_FUNCTION function
34;    Call a function instead of showing a file (define MUI_FINISHPAGE_SHOWREADME without parameters).
35;    You can use the function to show multiple files or you can change the checkbox name and use it for other things. "
36
37; Finish page
38!define MUI_FINISHPAGE_RUN "$INSTDIR\qcg-icon.exe"
39!define MUI_FINISHPAGE_SHOWREADME
40!define MUI_FINISHPAGE_SHOWREADME_TEXT "$(addToAutostart)"
41!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
42!define MUI_FINISHPAGE_SHOWREADME_FUNCTION "EnableAutostart"
43!insertmacro MUI_PAGE_FINISH
44
45; Uninstaller pages
46!insertmacro MUI_UNPAGE_INSTFILES
47
48; Language files
49!insertmacro MUI_LANGUAGE "Polish"
50!insertmacro MUI_LANGUAGE "English"
51
52LangString addToAutostart ${LANG_POLISH} "Uruchamiaj automatycznie z systemem"
53LangString addToAutostart ${LANG_ENGLISH} "Enable autostart" 
54
55; MUI end ------
56
57Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
58OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
59; OutFile "C:\${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"
60InstallDir "$PROGRAMFILES\qcg-icon"
61InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
62ShowInstDetails show
63ShowUnInstDetails show
64
65LangString deinstallOld ${LANG_POLISH} "Inna wersja programu ${PRODUCT_NAME} jest ju¿ zainstalowana w systemie. $\n$\nAby usun¹æ poprzedni¹ wersjê kliknij 'OK'. Aby zrezygnowaæ kliknij 'Anuluj'."
66LangString deinstallOld ${LANG_ENGLISH} "The another version of ${PRODUCT_NAME} is already installed. $\n$\nClick 'OK' to remove the previous version or 'Cancel' to cancel this upgrade."
67
68LangString closeOld ${LANG_POLISH} "Inna instancja programu ${PRODUCT_NAME} jest uruchomiona. $\n$\nPrzed instalacj¹ nale¿y j¹ zamkn¹æ."
69LangString closeOld ${LANG_ENGLISH} "The another instance of ${PRODUCT_NAME} is running. $\n$\nIt should be closed before this upgrade."
70
71
72Function .onInit
73 !insertmacro MUI_LANGDLL_DISPLAY
74; ${nsProcess::FindProcess} "${PRODUCT_NAME}.exe" $R0
75 FindProcDLL::FindProc "${PRODUCT_NAME}.exe"
76 IntCmp $R0 1 0 notRunning
77    MessageBox MB_OK|MB_ICONEXCLAMATION "$(closeOld)" /SD IDOK
78    Abort
79 notRunning:
80
81 ReadRegStr $R0 HKLM \
82  "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" \
83  "UninstallString"
84  StrCmp $R0 "" done
85 
86  MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
87  "$(deinstallOld)" \
88  IDOK uninst
89  Abort
90 
91  ;Run the uninstaller
92  uninst:
93    ClearErrors
94
95    ExecWait '$R0 _?=$INSTDIR' ;Do not copy the uninstaller to a temp file
96 
97    IfErrors no_remove_uninstaller done
98      ;You can either use Delete /REBOOTOK in the uninstaller or add some code
99      ;here to remove the uninstaller. Use a registry key to check
100      ;whether the user has chosen to uninstall. If you are using an uninstaller
101      ;components page, make sure all sections are uninstalled.
102    no_remove_uninstaller:
103 
104  done:
105FunctionEnd
106
107Function "EnableAutostart"
108  WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "QCG-Icon" "$INSTDIR\qcg-icon.exe"
109FunctionEnd
110
111Section "main" SEC01
112  SetOutPath "$INSTDIR\certs"
113  SetOverwrite try
114  File "dist_static\certs\*"
115  SetOutPath "$INSTDIR\lib"
116
117  File "libs\jsch-0.1.53.jar"
118  File "libs\not-yet-commons-ssl-0.3.17.jar"
119  File "libs\swing-layout-1.0.4.jar"
120
121  File "libs\sdk\activation-1.1.jar"
122  File "libs\sdk\avalon-framework-4.1.3.jar"
123  File "libs\sdk\bcpkix-jdk15on-1.50.jar"
124  File "libs\sdk\bcprov-jdk15on-1.50.jar"
125  File "libs\sdk\canl-2.1.2.jar"
126  File "libs\sdk\commons-io-2.4.jar"
127  File "libs\sdk\commons-logging-1.1.jar"
128  File "libs\sdk\gss-2.2.0-SNAPSHOT.jar"
129  File "libs\sdk\hk2-0.2.jar"
130  File "libs\sdk\hk2-core-0.2.jar"
131  File "libs\sdk\JarSync-0.3.jar"
132  File "libs\sdk\jaxb-api-2.0.jar"
133  File "libs\sdk\jaxb-impl-2.1.6.jar"
134  File "libs\sdk\jaxws-api-2.1.jar"
135  File "libs\sdk\jaxws-rt-2.1.3.jar"
136  File "libs\sdk\jsr250-api-1.0.jar"
137  File "libs\sdk\jsse-2.2.0-SNAPSHOT.jar"
138  File "libs\sdk\junit-4.4.jar"
139  File "libs\sdk\log4j-1.2.12.jar"
140  File "libs\sdk\logkit-1.0.1.jar"
141  File "libs\sdk\mail-1.4.jar"
142  File "libs\sdk\mimepull-1.1.jar"
143  File "libs\sdk\QCGComputingSDK-4.0.0.jar"
144  File "libs\sdk\QCGCoreSDK-4.0.0.jar"
145  File "libs\sdk\resolver-20050927.jar"
146  File "libs\sdk\saaj-api-1.3.jar"
147  File "libs\sdk\saaj-impl-1.3.jar"
148  File "libs\sdk\servlet-api-2.3.jar"
149  File "libs\sdk\sjsxp-1.0.jar"
150  File "libs\sdk\ssl-proxies-2.2.0-SNAPSHOT.jar"
151  File "libs\sdk\stax-api-1.0.jar"
152  File "libs\sdk\stax-ex-1.2.jar"
153  File "libs\sdk\streambuffer-0.7.jar"
154  File "libs\sdk\voms-api-java-3.2.0.jar"
155  File "libs\sdk\webservices-api-2.0.1.jar"
156  File "libs\sdk\xmldsig-1.0.jar"
157  File "libs\sdk\xmlsec-2.0.jar"
158  File "libs\sdk\xws-security-3.0.jar"
159
160  SetOutPath "$INSTDIR\resources"
161  File "resources\qcg-logo-stones-16.png"
162  SetOutPath "$INSTDIR"
163  File "dist\QCG-Icon.jar"
164  File "dist\qcg-icon.exe"
165  File "dist_static\config.properties"
166  File "dist_static\logging.properties"
167SectionEnd
168
169LangString submitTask ${LANG_POLISH} "Zleᅵ zadanie..."
170LangString submitTask ${LANG_ENGLISH} "Submit task..." 
171
172Section -Post
173  WriteUninstaller "$INSTDIR\uninst.exe"
174  WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\qcg-icon.exe"
175  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
176  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
177  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\qcg-icon.exe"
178  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
179  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
180  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
181 
182  # remove autostart from HKLM and set it in HKCU (in EnableAutostart function)
183  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Run\QCG-Icon"
184 
185  # Menu Start
186  CreateShortCut "$SMPROGRAMS\QCG-Icon.lnk" "$INSTDIR\qcg-icon.exe"
187 
188  # Matlab
189  WriteRegStr HKCR ".m\shell\submit" "" "$(submitTask)"
190  WriteRegStr HKCR ".m\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
191 
192  # Namd
193  WriteRegStr HKCR ".namd\shell\submit" "" "$(submitTask)"
194  WriteRegStr HKCR ".namd\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
195 
196  # R
197  WriteRegStr HKCR ".r\shell\submit" "" "$(submitTask)"
198  WriteRegStr HKCR ".r\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
199
200  # CFX
201  WriteRegStr HKCR ".def\shell\submit" "" "$(submitTask)"
202  WriteRegStr HKCR ".def\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
203
204  # Fluent
205  WriteRegStr HKCR ".fluent\shell\submit" "" "$(submitTask)"
206  WriteRegStr HKCR ".fluent\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
207
208  # BASH
209  WriteRegStr HKCR ".sh\shell\submit" "" "$(submitTask)"
210  WriteRegStr HKCR ".sh\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
211
212  # PYTHON
213  WriteRegStr HKCR ".py\shell\submit" "" "$(submitTask)"
214  WriteRegStr HKCR ".py\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
215
216  # Gaussian
217  WriteRegStr HKCR ".gjf\shell\submit" "" "$(submitTask)"
218  WriteRegStr HKCR ".gjf\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
219  WriteRegStr HKCR ".inp\shell\submit" "" "$(submitTask)"
220  WriteRegStr HKCR ".inp\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
221  WriteRegStr HKCR ".com\shell\submit" "" "$(submitTask)"
222  WriteRegStr HKCR ".com\shell\submit\command" "" "$\"$INSTDIR\qcg-icon.exe$\" $\"%1$\""
223   
224SectionEnd
225
226LangString askDeinstall ${LANG_POLISH} "Czy na pewno chcesz usun¹æ program $(^Name) i wszystkie jego komponenty?"
227LangString askDeinstall ${LANG_ENGLISH} "Do you really want to remove $(^Name) and all it's components?"
228Function un.onInit
229  MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "$(askDeinstall)" IDYES +2
230  Abort
231FunctionEnd
232
233Section Uninstall
234  Delete "$INSTDIR\QCG-Icon.jar"
235  Delete "$INSTDIR\qcg-icon.exe"
236
237  Delete "$INSTDIR\resources\qcg-logo-stones-16.png"
238
239  Delete "$INSTDIR\lib\jsch-0.1.53.jar"
240  Delete "$INSTDIR\lib\not-yet-commons-ssl-0.3.17.jar"
241  Delete "$INSTDIR\lib\swing-layout-1.0.4.jar"
242
243  Delete "$INSTDIR\lib\activation-1.1.jar"
244  Delete "$INSTDIR\lib\avalon-framework-4.1.3.jar"
245  Delete "$INSTDIR\lib\bcpkix-jdk15on-1.50.jar"
246  Delete "$INSTDIR\lib\bcprov-jdk15on-1.50.jar"
247  Delete "$INSTDIR\lib\canl-2.1.2.jar"
248  Delete "$INSTDIR\lib\commons-io-2.4.jar"
249  Delete "$INSTDIR\lib\commons-logging-1.1.jar"
250  Delete "$INSTDIR\lib\gss-2.2.0-SNAPSHOT.jar"
251  Delete "$INSTDIR\lib\hk2-0.2.jar"
252  Delete "$INSTDIR\lib\hk2-core-0.2.jar"
253  Delete "$INSTDIR\lib\JarSync-0.3.jar"
254  Delete "$INSTDIR\lib\jaxb-api-2.0.jar"
255  Delete "$INSTDIR\lib\jaxb-impl-2.1.6.jar"
256  Delete "$INSTDIR\lib\jaxws-api-2.1.jar"
257  Delete "$INSTDIR\lib\jaxws-rt-2.1.3.jar"
258  Delete "$INSTDIR\lib\jsr250-api-1.0.jar"
259  Delete "$INSTDIR\lib\jsse-2.2.0-SNAPSHOT.jar"
260  Delete "$INSTDIR\lib\junit-4.4.jar"
261  Delete "$INSTDIR\lib\log4j-1.2.12.jar"
262  Delete "$INSTDIR\lib\logkit-1.0.1.jar"
263  Delete "$INSTDIR\lib\mail-1.4.jar"
264  Delete "$INSTDIR\lib\mimepull-1.1.jar"
265  Delete "$INSTDIR\lib\QCGComputingSDK-4.0.0.jar"
266  Delete "$INSTDIR\lib\QCGCoreSDK-4.0.0.jar"
267  Delete "$INSTDIR\lib\resolver-20050927.jar"
268  Delete "$INSTDIR\lib\saaj-api-1.3.jar"
269  Delete "$INSTDIR\lib\saaj-impl-1.3.jar"
270  Delete "$INSTDIR\lib\servlet-api-2.3.jar"
271  Delete "$INSTDIR\lib\sjsxp-1.0.jar"
272  Delete "$INSTDIR\lib\ssl-proxies-2.2.0-SNAPSHOT.jar"
273  Delete "$INSTDIR\lib\stax-api-1.0.jar"
274  Delete "$INSTDIR\lib\stax-ex-1.2.jar"
275  Delete "$INSTDIR\lib\streambuffer-0.7.jar"
276  Delete "$INSTDIR\lib\voms-api-java-3.2.0.jar"
277  Delete "$INSTDIR\lib\webservices-api-2.0.1.jar"
278  Delete "$INSTDIR\lib\xmldsig-1.0.jar"
279  Delete "$INSTDIR\lib\xmlsec-2.0.jar"
280  Delete "$INSTDIR\lib\xws-security-3.0.jar"
281
282  Delete "$INSTDIR\config.properties"
283  Delete "$INSTDIR\certs\8a661490.signing_policy"
284  Delete "$INSTDIR\certs\8a661490.0"
285  Delete "$INSTDIR\logging.properties"
286  Delete "$INSTDIR\qcg-icon.log"
287  Delete "$INSTDIR\qcg-icon.log.1"
288  Delete "$INSTDIR\uninst.exe"
289  Delete "$INSTDIR\certs\*"
290
291  RMDir "$INSTDIR\resources"
292  RMDir "$INSTDIR\lib"
293  RMDir "$INSTDIR\certs"
294  RMDir "$INSTDIR"
295 
296  # autostart
297  DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "QCG-Icon"
298 
299  # Menu Start
300  Delete "$SMPROGRAMS\qcg-icon.lnk"
301 
302  # matlab
303  DeleteRegKey HKCR ".m\shell\submit\command"
304  DeleteRegKey HKCR ".m\shell\submit"
305 
306  # namd
307  DeleteRegKey HKCR ".namd\shell\submit\command"
308  DeleteRegKey HKCR ".namd\shell\submit"
309 
310  # R
311  DeleteRegKey HKCR ".r\shell\submit\command"
312  DeleteRegKey HKCR ".r\shell\submit"
313
314  # CFX
315  DeleteRegKey HKCR ".def\shell\submit\command"
316  DeleteRegKey HKCR ".def\shell\submit"
317
318  # Fluent
319  DeleteRegKey HKCR ".fluent\shell\submit\command"
320  DeleteRegKey HKCR ".fluent\shell\submit"
321
322  # Bash
323  DeleteRegKey HKCR ".sh\shell\submit\command"
324  DeleteRegKey HKCR ".sh\shell\submit"
325
326  # Python
327  DeleteRegKey HKCR ".py\shell\submit\command"
328  DeleteRegKey HKCR ".py\shell\submit"
329
330  # Gausian
331  DeleteRegKey HKCR ".gjf\shell\submit\command"
332  DeleteRegKey HKCR ".gjf\shell\submit"
333  DeleteRegKey HKCR ".inp\shell\submit\command"
334  DeleteRegKey HKCR ".inp\shell\submit"
335  DeleteRegKey HKCR ".com\shell\submit\command"
336  DeleteRegKey HKCR ".com\shell\submit"
337
338# uninstallKey
339  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QCG-Icon"
340
341# Possible old registry entries
342  DeleteRegValue HKLM "Software\Microsoft\Windows\CurrentVersion\Run" "QCG-Icon"
343  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\App Paths\qcg-icon"
344  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QCG icon"
345
346SectionEnd
347
348LangString successDeinstall ${LANG_POLISH} "Program $(^Name) zosta³ pomyœlnie usuniêty."
349LangString successDeinstall ${LANG_ENGLISH} "Program $(^Name) has been successfully removed."
350Function un.onUninstSuccess
351  HideWindow
352  MessageBox MB_ICONINFORMATION|MB_OK "$(successDeinstall)"
353FunctionEnd
Note: See TracBrowser for help on using the repository browser.