source: branches/1.3.0/installer.nsi @ 231

Revision 231, 12.3 KB checked in by bartek, 11 years ago (diff)

Fixed reading (nonexistent in current version) parallel tasks from old tasks file..

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