source: trunk/brainstorms/PuzzleboxBrainstorms-install.nsi @ 229

Last change on this file since 229 was 110, checked in by sc, 12 years ago

License and readme updated for 0.2.0 release

File size: 12.1 KB
Line 
1; Puzzlebox Brainstorms Windows Installer
2
3; NOTE: this .NSI script is designed for NSIS v1.8+
4
5Name "Puzzlebox Brainstorms"
6OutFile "PuzzleboxBrainstorms-0.2.0-setup.exe"
7
8; Some default compiler settings (uncomment and change at will):
9; SetCompress auto ; (can be off or force)
10; SetDatablockOptimize on ; (can be off)
11; CRCCheck on ; (can be off)
12; AutoCloseWindow false ; (can be true for the window go away automatically at end)
13; ShowInstDetails hide ; (can be show to have them shown, or nevershow to disable)
14; SetDateSave off ; (can be on to have files restored to their orginal date)
15
16LicenseText "You must agree to this license before installing."
17LicenseData "docs\license.txt"
18
19InstallDir "$PROGRAMFILES\Puzzlebox Brainstorms"
20InstallDirRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Puzzlebox Brainstorms\Puzzlebox Brainstorms" ""
21;DirShow show ; (make this hide to not let the user change it)
22DirText "Select the directory to install Puzzlebox Brainstorms into:"
23
24InstallColors /windows
25
26Section "" ; (default section)
27SetOutPath "$INSTDIR"
28; add files / whatever that need to be installed here.
29WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Puzzlebox Brainstorms\Puzzlebox Brainstorms" "" "$INSTDIR"
30WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Puzzlebox Brainstorms\Puzzlebox Brainstorms" "DisplayName" "Puzzlebox Brainstorms (remove only)"
31WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Puzzlebox Brainstorms\Puzzlebox Brainstorms" "UninstallString" '"$INSTDIR\PuzzlesboxBrainstorms-Uninstall.exe"'
32
33 File dist\bz2.pyd
34 File dist\_ctypes.pyd
35 File dist\jpeg.dll
36 File dist\libfreetype-6.dll
37 File dist\libgcc_s_dw2-1.dll
38 File dist\libogg-0.dll
39 File dist\libpng12-0.dll
40 File dist\library.zip
41 File dist\libtiff.dll
42 File dist\libvorbis-0.dll
43 File dist\libvorbisfile-3.dll
44 File dist\mingwm10.dll
45; File dist\MSVCR71.dll
46 File dist\puzzlebox_brainstorms_client_interface_local.exe
47 File dist\puzzlebox_brainstorms_client_interface_network.exe
48 File dist\puzzlebox_brainstorms_configuration.ini
49 File dist\puzzlebox_brainstorms_network_client.exe
50 File dist\puzzlebox_brainstorms_network_client_thinkgear.exe
51 File dist\puzzlebox_brainstorms_network_server.exe
52 File dist\puzzlebox_brainstorms_remote_control.exe
53 File dist\pygame._arraysurfarray.pyd
54 File dist\pygame.base.pyd
55 File dist\pygame.bufferproxy.pyd
56 File dist\pygame.cdrom.pyd
57 File dist\pygame.color.pyd
58 File dist\pygame.constants.pyd
59 File dist\pygame.display.pyd
60 File dist\pygame.draw.pyd
61 File dist\pygame.event.pyd
62 File dist\pygame.fastevent.pyd
63 File dist\pygame.font.pyd
64 File dist\pygame.imageext.pyd
65 File dist\pygame.image.pyd
66 File dist\pygame.joystick.pyd
67 File dist\pygame.key.pyd
68 File dist\pygame.mask.pyd
69 File dist\pygame.mixer_music.pyd
70 File dist\pygame.mixer.pyd
71 File dist\pygame.mouse.pyd
72 File dist\pygame.movie.pyd
73 File dist\pygame._numericsndarray.pyd
74 File dist\pygame._numericsurfarray.pyd
75 File dist\pygame.overlay.pyd
76 File dist\pygame.pixelarray.pyd
77 File dist\pygame.rect.pyd
78 File dist\pygame.rwobject.pyd
79 File dist\pygame.scrap.pyd
80 File dist\pygame.surface.pyd
81 File dist\pygame.surflock.pyd
82 File dist\pygame.time.pyd
83 File dist\pygame.transform.pyd
84 File dist\PyQt4.QtCore.pyd
85 File dist\PyQt4.QtGui.pyd
86 File dist\PyQt4.QtNetwork.pyd
87 File dist\python25.dll
88 File dist\QtCore4.dll
89 File dist\QtGui4.dll
90 File dist\QtNetwork4.dll
91 File dist\SDL.dll
92 File dist\SDL_image.dll
93 File dist\SDL_mixer.dll
94 File dist\SDL_ttf.dll
95 File dist\select.pyd
96 File dist\simplejson._speedups.pyd
97 File dist\sip.pyd
98 File dist\smpeg.dll
99 File dist\_socket.pyd
100 File dist\_ssl.pyd
101 File dist\unicodedata.pyd
102 File dist\w9xpopen.exe
103 File dist\zlib1.dll
104
105SetOutPath $INSTDIR\docs
106 File docs\license.txt
107 File docs\readme.txt
108
109SetOutPath $INSTDIR\emokey
110 File emokey\puzzlebox_brainstorms.ekm
111
112SetOutPath $INSTDIR\emoscript
113 File emoscript\puzzlebox_brainstorms-test_drive-push_pull.emo
114 File emoscript\puzzlebox_brainstorms-training-pull.emo
115 File emoscript\puzzlebox_brainstorms-training-push.emo
116
117SetOutPath $INSTDIR\images
118 File dist\images\1-upper_left-orange.png
119 File dist\images\1-upper_left-white.png
120 File dist\images\2-up-orange.png
121 File dist\images\2-up-white.png
122 File dist\images\3-upper_right-orange.png
123 File dist\images\3-upper_right-white.png
124 File dist\images\7-lower_left-orange.png
125 File dist\images\7-lower_left-white.png
126 File dist\images\8-down-orange.png
127 File dist\images\8-down-white.png
128 File dist\images\9-lower_right-orange.png
129 File dist\images\9-lower_right-white.png
130 File dist\images\puzzlebox.ico
131 File dist\images\puzzlebox_logo.png
132
133;SetOutPath $INSTDIR\fonts
134; File dist\fonts\tahomabd.ttf
135; File dist\fonts\tahoma.ttf
136
137SetOutPath $INSTDIR\package
138 File package\vcredist_x86.exe
139
140ExecWait 'package\Vcredist_x86.exe /q:a /c:"msiexec /i vcredist.msi /qn /l*v %temp%\vcredist_x86.log"'
141
142
143; write out uninstaller
144WriteUninstaller "$INSTDIR\PuzzleboxBrainstorms-Uninstall.exe"
145
146SectionEnd ; end of default section
147
148
149Section "Start Menu + Desktop Icons"
150;  SetOutPath "$SMPROGRAMS\Puzzlebox Brainstorms"
151  SetOutPath $INSTDIR
152  CreateDirectory "$SMPROGRAMS\Puzzlebox Brainstorms"
153  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms.lnk" \
154                 "$INSTDIR\puzzlebox_brainstorms_client_interface_local.exe" \
155                 ""  "$INSTDIR\images\puzzlebox.ico"  "0"  ""
156  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms Network Client.lnk" \
157                 "$INSTDIR\puzzlebox_brainstorms_client_interface_network.exe" \
158                 ""  "$INSTDIR\images\puzzlebox.ico"  "0"  ""
159  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms Network Server.lnk" \
160                 "$INSTDIR\puzzlebox_brainstorms_network_server.exe" \
161                 ""  "$INSTDIR\images\puzzlebox.ico"  "0"  "SW_SHOWMINIMIZED"
162  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox ThinkGear Connect Client.lnk" \
163                 "$INSTDIR\puzzlebox_brainstorms_network_client_thinkgear.exe" \
164                 ""  "$INSTDIR\images\puzzlebox.ico"  "0"  ""
165  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Edit Puzzlebox Brainstorms Configuration.lnk" \
166                 "$INSTDIR\puzzlebox_brainstorms_configuration.ini" \
167                 ""  ""  "0"  ""
168  CreateShortCut "$SMPROGRAMS\Puzzlebox Brainstorms\Uninstall Puzzlebox Brainstorms.lnk" \
169                 "$INSTDIR\PuzzleboxBrainstorms-Uninstall.exe"
170  CreateShortCut "$DESKTOP\Puzzlebox Brainstorms.lnk" \
171                 "$INSTDIR\puzzlebox_brainstorms_client_interface_local.exe" \
172                 ""  "$INSTDIR\images\puzzlebox.ico"  "0"  ""
173SectionEnd
174
175
176; begin uninstall settings/section
177UninstallText "This will uninstall Puzzlebox Brainstorms from your system"
178
179Section Uninstall
180; add delete commands to delete whatever files/registry keys/etc you installed here.
181 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms.lnk"
182 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms Network Client.lnk"
183 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox Brainstorms Network Server.lnk"
184 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Puzzlebox ThinkGear Connect Client.lnk"
185 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Edit Puzzlebox Brainstorms Configuration.lnk"
186 Delete "$SMPROGRAMS\Puzzlebox Brainstorms\Uninstall Puzzlebox Brainstorms.lnk"
187  RMDir "$SMPROGRAMS\Puzzlebox Brainstorms"
188 Delete "$DESKTOP\Puzzlebox Brainstorms.lnk"
189
190
191 Delete $INSTDIR\bz2.pyd
192 Delete $INSTDIR\_ctypes.pyd
193 Delete $INSTDIR\jpeg.dll
194 Delete $INSTDIR\libfreetype-6.dll
195 Delete $INSTDIR\libgcc_s_dw2-1.dll
196 Delete $INSTDIR\libogg-0.dll
197 Delete $INSTDIR\libpng12-0.dll
198 Delete $INSTDIR\library.zip
199 Delete $INSTDIR\libtiff.dll
200 Delete $INSTDIR\libvorbis-0.dll
201 Delete $INSTDIR\libvorbisfile-3.dll
202 Delete $INSTDIR\mingwm10.dll
203 Delete $INSTDIR\MSVCR71.dll
204 Delete $INSTDIR\puzzlebox_brainstorms_client_interface_local.exe
205 Delete $INSTDIR\puzzlebox_brainstorms_client_interface_network.exe
206 Delete $INSTDIR\puzzlebox_brainstorms_configuration.ini
207 Delete $INSTDIR\puzzlebox_brainstorms_network_client.exe
208 Delete $INSTDIR\puzzlebox_brainstorms_network_client_thinkgear.exe
209 Delete $INSTDIR\puzzlebox_brainstorms_network_server.exe
210 Delete $INSTDIR\puzzlebox_brainstorms_remote_control.exe
211 Delete $INSTDIR\pygame._arraysurfarray.pyd
212 Delete $INSTDIR\pygame.base.pyd
213 Delete $INSTDIR\pygame.bufferproxy.pyd
214 Delete $INSTDIR\pygame.cdrom.pyd
215 Delete $INSTDIR\pygame.color.pyd
216 Delete $INSTDIR\pygame.constants.pyd
217 Delete $INSTDIR\pygame.display.pyd
218 Delete $INSTDIR\pygame.draw.pyd
219 Delete $INSTDIR\pygame.event.pyd
220 Delete $INSTDIR\pygame.fastevent.pyd
221 Delete $INSTDIR\pygame.font.pyd
222 Delete $INSTDIR\pygame.imageext.pyd
223 Delete $INSTDIR\pygame.image.pyd
224 Delete $INSTDIR\pygame.joystick.pyd
225 Delete $INSTDIR\pygame.key.pyd
226 Delete $INSTDIR\pygame.mask.pyd
227 Delete $INSTDIR\pygame.mixer_music.pyd
228 Delete $INSTDIR\pygame.mixer.pyd
229 Delete $INSTDIR\pygame.mouse.pyd
230 Delete $INSTDIR\pygame.movie.pyd
231 Delete $INSTDIR\pygame._numericsndarray.pyd
232 Delete $INSTDIR\pygame._numericsurfarray.pyd
233 Delete $INSTDIR\pygame.overlay.pyd
234 Delete $INSTDIR\pygame.pixelarray.pyd
235 Delete $INSTDIR\pygame.rect.pyd
236 Delete $INSTDIR\pygame.rwobject.pyd
237 Delete $INSTDIR\pygame.scrap.pyd
238 Delete $INSTDIR\pygame.surface.pyd
239 Delete $INSTDIR\pygame.surflock.pyd
240 Delete $INSTDIR\pygame.time.pyd
241 Delete $INSTDIR\pygame.transform.pyd
242 Delete $INSTDIR\PyQt4.QtCore.pyd
243 Delete $INSTDIR\PyQt4.QtGui.pyd
244 Delete $INSTDIR\PyQt4.QtNetwork.pyd
245 Delete $INSTDIR\python25.dll
246 Delete $INSTDIR\QtCore4.dll
247 Delete $INSTDIR\QtGui4.dll
248 Delete $INSTDIR\QtNetwork4.dll
249 Delete $INSTDIR\SDL.dll
250 Delete $INSTDIR\SDL_image.dll
251 Delete $INSTDIR\SDL_mixer.dll
252 Delete $INSTDIR\SDL_ttf.dll
253 Delete $INSTDIR\select.pyd
254 Delete $INSTDIR\simplejson._speedups.pyd
255 Delete $INSTDIR\sip.pyd
256 Delete $INSTDIR\smpeg.dll
257 Delete $INSTDIR\_socket.pyd
258 Delete $INSTDIR\_ssl.pyd
259 Delete $INSTDIR\unicodedata.pyd
260 Delete $INSTDIR\w9xpopen.exe
261 Delete $INSTDIR\zlib1.dll
262
263 Delete $INSTDIR\docs\license.txt
264 Delete $INSTDIR\docs\readme.txt
265  RMDir $INSTDIR\docs
266
267
268 Delete $INSTDIR\emokey\puzzlebox_brainstorms.ekm
269 Delete $INSTDIR\emoscript\puzzlebox_brainstorms-test_drive-push_pull.emo
270 Delete $INSTDIR\emoscript\puzzlebox_brainstorms-training-pull.emo
271 Delete $INSTDIR\emoscript\puzzlebox_brainstorms-training-push.emo
272  RMDir $INSTDIR\emokey
273  RMDir $INSTDIR\emoscript
274
275 Delete $INSTDIR\images\1-upper_left-orange.png
276 Delete $INSTDIR\images\1-upper_left-white.png
277 Delete $INSTDIR\images\2-up-orange.png
278 Delete $INSTDIR\images\2-up-white.png
279 Delete $INSTDIR\images\3-upper_right-orange.png
280 Delete $INSTDIR\images\3-upper_right-white.png
281 Delete $INSTDIR\images\7-lower_left-orange.png
282 Delete $INSTDIR\images\7-lower_left-white.png
283 Delete $INSTDIR\images\8-down-orange.png
284 Delete $INSTDIR\images\8-down-white.png
285 Delete $INSTDIR\images\9-lower_right-orange.png
286 Delete $INSTDIR\images\9-lower_right-white.png
287 Delete $INSTDIR\images\puzzlebox.ico
288 Delete $INSTDIR\images\puzzlebox_logo.png
289  RMDir $INSTDIR\images
290
291; Delete $INSTDIR\fonts\tahomabd.ttf
292; Delete $INSTDIR\fonts\tahoma.ttf
293; RMDir $INSTDIR\fonts
294
295 Delete $INSTDIR\package\vcredist_x86.exe
296  RMDir $INSTDIR\package
297
298 RMDIR $INSTDIR
299
300Delete "$INSTDIR\PuzzleboxBrainstorms-Uninstall.exe"
301DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Puzzlebox Brainstorms\Puzzlebox Brainstorms"
302DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Puzzlebox Brainstorms"
303RMDir "$INSTDIR"
304
305  ; if $INSTDIR was removed, skip these next ones
306  IfFileExists $INSTDIR 0 Removed
307    MessageBox MB_YESNO|MB_ICONQUESTION \
308      "Remove all files in your Puzzlebox Brainstorms directory? (If you have anything \
309you created that you want to keep, click No)" IDNO Removed
310    Delete $INSTDIR\*.* ; this would be skipped if the user hits no
311    RMDir /r $INSTDIR
312    IfFileExists $INSTDIR 0 Removed
313      MessageBox MB_OK|MB_ICONEXCLAMATION \
314                 "Note: $INSTDIR could not be removed."
315  Removed:
316
317
318SectionEnd ; end of uninstall section
319
320; eof
321
Note: See TracBrowser for help on using the repository browser.