source: subversion/applications/editors/josm/nsis/josm.nsi @ 20224

Last change on this file since 20224 was 18004, checked in by Dirk Stoecker, 11 years ago

build fixes

File size: 18.5 KB
Line 
1;
2; josm.nsi
3;
4
5; Set the compression mechanism first.
6; If you get an error here, please update to at least NSIS 2.07!
7SetCompressor /SOLID lzma
8
9; work with JAVA ini strings
10!include "INIStrNS.nsh"
11
12!define DEST "josm"
13
14; Used to refresh the display of file association
15!define SHCNE_ASSOCCHANGED 0x08000000
16!define SHCNF_IDLIST 0
17
18; Used to add associations between file extensions and JOSM
19!define OSM_ASSOC "josm-file"
20
21; ============================================================================
22; Header configuration
23; ============================================================================
24; The name of the installer
25!define PROGRAM_NAME "JOSM"
26
27Name "${PROGRAM_NAME} ${VERSION}"
28
29; The file to write
30OutFile "${DEST}-setup-${VERSION}.exe"
31
32XPStyle on
33
34
35
36; ============================================================================
37; Modern UI
38; ============================================================================
39
40!include "MUI.nsh"
41
42; Icon of installer and uninstaller
43!define MUI_ICON "logo.ico"
44!define MUI_UNICON "logo.ico"
45
46!define MUI_COMPONENTSPAGE_SMALLDESC
47!define MUI_FINISHPAGE_NOAUTOCLOSE
48!define MUI_UNFINISHPAGE_NOAUTOCLOSE
49!define MUI_WELCOMEFINISHPAGE_BITMAP "josm-nsis-brand.bmp"
50!define MUI_WELCOMEPAGE_TEXT $(JOSM_WELCOME_TEXT)
51
52!define MUI_FINISHPAGE_RUN "$INSTDIR\josm.exe"
53
54
55; ============================================================================
56; MUI Pages
57; ============================================================================
58
59!insertmacro MUI_PAGE_WELCOME
60!insertmacro MUI_PAGE_LICENSE "..\core\LICENSE"
61!insertmacro MUI_PAGE_COMPONENTS
62;Page custom DisplayAdditionalTasksPage
63!insertmacro MUI_PAGE_DIRECTORY
64!insertmacro MUI_PAGE_INSTFILES
65!insertmacro MUI_PAGE_FINISH
66
67!insertmacro MUI_UNPAGE_WELCOME
68!insertmacro MUI_UNPAGE_CONFIRM
69!insertmacro MUI_UNPAGE_COMPONENTS
70!insertmacro MUI_UNPAGE_INSTFILES
71!insertmacro MUI_UNPAGE_FINISH
72
73; ============================================================================
74; MUI Languages
75; ============================================================================
76
77  ;Remember the installer language
78  !define MUI_LANGDLL_REGISTRY_ROOT "HKLM" 
79  !define MUI_LANGDLL_REGISTRY_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" 
80  !define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
81 
82  ;; English goes first because its the default. The rest are
83  ;; in alphabetical order (at least the strings actually displayed
84  ;; will be).
85
86  !insertmacro MUI_LANGUAGE "English"
87  !insertmacro MUI_LANGUAGE "German"
88
89;--------------------------------
90;Translations
91
92  !define JOSM_DEFAULT_LANGFILE "locale\english.nsh"
93
94  !include "langmacros.nsh"
95 
96  !insertmacro JOSM_MACRO_INCLUDE_LANGFILE "ENGLISH" "locale\english.nsh"
97  !insertmacro JOSM_MACRO_INCLUDE_LANGFILE "GERMAN" "locale\german.nsh"
98
99; Uninstall stuff
100!define MUI_UNCONFIRMPAGE_TEXT_TOP ${un.JOSM_UNCONFIRMPAGE_TEXT_TOP}
101
102; ============================================================================
103; Installation types
104; ============================================================================
105
106InstType "$(JOSM_FULL_INSTALL)"
107
108InstType "un.$(un.JOSM_DEFAULT_UNINSTALL)"
109InstType "un.$(un.JOSM_FULL_UNINSTALL)"
110
111; ============================================================================
112; Reserve Files
113; ============================================================================
114
115  ;Things that need to be extracted on first (keep these lines before any File command!)
116  ;Only useful for BZIP2 compression
117
118!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
119
120; ============================================================================
121; Section macros
122; ============================================================================
123!include "Sections.nsh"
124
125; ========= Macro to unselect and disable a section =========
126
127!macro DisableSection SECTION
128
129  Push $0
130    SectionGetFlags "${SECTION}" $0
131    IntOp $0 $0 & ${SECTION_OFF}
132    IntOp $0 $0 | ${SF_RO}
133    SectionSetFlags "${SECTION}" $0
134  Pop $0
135
136!macroend
137
138; ========= Macro to enable (unreadonly) a section =========
139!define SECTION_ENABLE   0xFFFFFFEF
140!macro EnableSection SECTION
141
142  Push $0
143    SectionGetFlags "${SECTION}" $0
144    IntOp $0 $0 & ${SECTION_ENABLE}
145    SectionSetFlags "${SECTION}" $0
146  Pop $0
147
148!macroend
149
150; ============================================================================
151; Command Line
152; ============================================================================
153!include "FileFunc.nsh"
154
155; ============================================================================
156; Directory selection page configuration
157; ============================================================================
158; The text to prompt the user to enter a directory
159DirText $(JOSM_DIR_TEXT)
160
161; The default installation directory
162InstallDir $PROGRAMFILES\JOSM\
163
164; See if this is an upgrade; if so, use the old InstallDir as default
165InstallDirRegKey HKEY_LOCAL_MACHINE SOFTWARE\JOSM "InstallDir"
166
167
168; ============================================================================
169; Install page configuration
170; ============================================================================
171ShowInstDetails show
172ShowUninstDetails show
173
174; ============================================================================
175; Functions and macros
176; ============================================================================
177
178; update file extension icons
179!macro UpdateIcons
180        Push $R0
181        Push $R1
182        Push $R2
183
184        !define UPDATEICONS_UNIQUE ${__LINE__}
185
186        IfFileExists "$SYSDIR\shell32.dll" UpdateIcons.next1_${UPDATEICONS_UNIQUE} UpdateIcons.error1_${UPDATEICONS_UNIQUE}
187UpdateIcons.next1_${UPDATEICONS_UNIQUE}:
188        GetDllVersion "$SYSDIR\shell32.dll" $R0 $R1
189        IntOp $R2 $R0 / 0x00010000
190        IntCmp $R2 4 UpdateIcons.next2_${UPDATEICONS_UNIQUE} UpdateIcons.error2_${UPDATEICONS_UNIQUE}
191UpdateIcons.next2_${UPDATEICONS_UNIQUE}:
192        System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v (${SHCNE_ASSOCCHANGED}, ${SHCNF_IDLIST}, 0, 0)'
193        Goto UpdateIcons.quit_${UPDATEICONS_UNIQUE}
194
195UpdateIcons.error1_${UPDATEICONS_UNIQUE}:
196        MessageBox MB_OK|MB_ICONSTOP $(JOSM_UPDATEICONS_ERROR1)
197        Goto UpdateIcons.quit_${UPDATEICONS_UNIQUE}
198UpdateIcons.error2_${UPDATEICONS_UNIQUE}:
199        MessageBox MB_OK|MB_ICONINFORMATION $(JOSM_UPDATEICONS_ERROR2)
200        Goto UpdateIcons.quit_${UPDATEICONS_UNIQUE}
201UpdateIcons.quit_${UPDATEICONS_UNIQUE}:
202        !undef UPDATEICONS_UNIQUE
203        Pop $R2
204        Pop $R1
205        Pop $R0
206
207!macroend
208
209; associate a file extension to an icon
210Function Associate
211        ; $R0 should contain the prefix to associate to JOSM
212        Push $R1
213
214        ReadRegStr $R1 HKCR $R0 ""
215        StrCmp $R1 "" Associate.doRegister
216        Goto Associate.end
217Associate.doRegister:
218        ;The extension is not associated to any program, we can do the link
219        WriteRegStr HKCR $R0 "" ${OSM_ASSOC}
220Associate.end:
221        pop $R1
222FunctionEnd
223
224; disassociate a file extension from an icon
225Function un.unlink
226        ; $R0 should contain the prefix to unlink
227        Push $R1
228
229        ReadRegStr $R1 HKCR $R0 ""
230        StrCmp $R1 ${OSM_ASSOC} un.unlink.doUnlink
231        Goto un.unlink.end
232un.unlink.doUnlink:
233        ; The extension is associated with JOSM so, we must destroy this!
234        DeleteRegKey HKCR $R0
235un.unlink.end:
236        pop $R1
237FunctionEnd
238
239Function .onInit
240  ;Extract InstallOptions INI files
241;  !insertmacro MUI_INSTALLOPTIONS_EXTRACT "AdditionalTasksPage.ini"
242  !insertmacro MUI_LANGDLL_DISPLAY
243FunctionEnd
244
245Function un.onInit
246
247  !insertmacro MUI_UNGETLANGUAGE
248 
249FunctionEnd
250
251; ============================================================================
252; Installation execution commands
253; ============================================================================
254
255Section "-Required"
256;-------------------------------------------
257
258;
259; Install for every user
260;
261SectionIn 1 2 RO
262SetShellVarContext current
263
264SetOutPath $INSTDIR
265
266; Write the uninstall keys for Windows
267WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "DisplayVersion" "${VERSION}"
268WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "DisplayName" "JOSM ${VERSION}"
269WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "UninstallString" '"$INSTDIR\uninstall.exe"'
270WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "Publisher" "The OpenStreetMap developer community, http://www.openstreetmap.org/"
271WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "HelpLink" "mailto:newbies@openstreetmap.org."
272WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "URLInfoAbout" "http://www.openstreetmap.org/"
273WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "URLUpdateInfo" "http://wiki.openstreetmap.org/index.php/JOSM"
274WriteRegDWORD HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "NoModify" 1
275WriteRegDWORD HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM" "NoRepair" 1
276WriteUninstaller "uninstall.exe"
277
278; Write an entry for ShellExecute
279WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\josm.exe" "" '$INSTDIR\josm.exe'
280WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\josm.exe" "Path" '$INSTDIR'
281
282SectionEnd ; "Required"
283
284
285Section $(JOSM_SEC_JOSM) SecJosm
286;-------------------------------------------
287SectionIn 1
288SetOutPath $INSTDIR
289File "josm.exe"
290File "josm-tested.jar"
291
292; XXX - should be provided/done by josm.jar itself and not here!
293SetShellVarContext current
294SetOutPath "$APPDATA\JOSM"
295
296; don't overwrite existing bookmarks
297IfFileExists preferences dont_overwrite_bookmarks
298File "bookmarks"
299dont_overwrite_bookmarks:
300
301; write reasonable defaults for some preferences
302; XXX - some of this should be done in JOSM itself, see also JOSM core, data\Preferences.java function resetToDefault()
303; XXX - just using JOSM defaults doesn't work here, as JOSM doesn't set some defaults if a preferences file doesn't exist
304${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "projection" "org.openstreetmap.josm.data.projection.Epsg4326"
305;${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "draw.segment.direction" "true"
306${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "layerlist.visible" "true"
307${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "selectionlist.visible" "true"
308${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "commandstack.visible" "true"
309${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "propertiesdialog.visible" "true"
310${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "osm-server.url" "http://www.openstreetmap.org/api"
311${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "laf" "com.sun.java.swing.plaf.windows.WindowsLookAndFeel"
312
313SectionEnd
314
315
316SectionGroup $(JOSM_SEC_PLUGINS_GROUP) SecPluginsGroup
317
318Section $(JOSM_SEC_AGPIFOJ_PLUGIN) SecAgPifoJPlugin
319;-------------------------------------------
320SectionIn 1 2
321SetShellVarContext current
322SetOutPath $APPDATA\JOSM\plugins
323File "..\dist\AgPifoJ.jar"
324SectionEnd
325
326Section $(JOSM_SEC_OPENSTREETBUGS_PLUGIN) SecOpenStreetBugsPlugin
327;-------------------------------------------
328SectionIn 1 2
329SetShellVarContext current
330SetOutPath $APPDATA\JOSM\plugins
331File "..\dist\openstreetbugs.jar"
332SectionEnd
333
334Section $(JOSM_SEC_REMOTECONTROL_PLUGIN) SecRemoteControlPlugin
335;-------------------------------------------
336SectionIn 1 2
337SetShellVarContext current
338SetOutPath $APPDATA\JOSM\plugins
339File "..\dist\remotecontrol.jar"
340SectionEnd
341
342Section $(JOSM_SEC_VALIDATOR_PLUGIN) SecValidatorPlugin
343;-------------------------------------------
344SectionIn 1 2
345SetShellVarContext current
346SetOutPath $APPDATA\JOSM\plugins
347File "..\dist\validator.jar"
348SectionEnd
349
350Section $(JOSM_SEC_WMS_PLUGIN) SecWMSPlugin
351;-------------------------------------------
352SectionIn 1 2
353SetShellVarContext current
354SetOutPath $APPDATA\JOSM\plugins
355File "..\dist\wmsplugin.jar"
356SetOutPath $INSTDIR\imageformats
357File "webkit-image\imageformats\qjpeg4.dll"
358SetOutPath $INSTDIR
359File "webkit-image\mingwm10.dll"
360File "webkit-image\QtCore4.dll"
361File "webkit-image\QtGui4.dll"
362File "webkit-image\QtNetwork4.dll"
363File "webkit-image\QtWebKit4.dll"
364File "webkit-image\webkit-image.exe"
365SectionEnd
366
367SectionGroupEnd ; "Plugins"
368
369Section $(JOSM_SEC_STARTMENU) SecStartMenu
370;-------------------------------------------
371SectionIn 1 2
372; To qoute "http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html/ch11d.asp":
373; "Do not include Readme, Help, or Uninstall entries on the Programs menu."
374CreateShortCut "$SMPROGRAMS\JOSM.lnk" "$INSTDIR\josm.exe" "" "$INSTDIR\josm.exe" 0 "" "" $(JOSM_LINK_TEXT)
375SectionEnd
376
377Section $(JOSM_SEC_DESKTOP_ICON) SecDesktopIcon
378;-------------------------------------------
379; SectionIn 1 2
380; Create desktop icon
381; Desktop icon for a program should not be installed as default!
382CreateShortCut "$DESKTOP\JOSM.lnk" "$INSTDIR\josm.exe" "" "$INSTDIR\josm.exe" 0 "" "" $(JOSM_LINK_TEXT)
383SectionEnd
384
385Section $(JOSM_SEC_QUICKLAUNCH_ICON) SecQuickLaunchIcon
386;-------------------------------------------
387SectionIn 1 2
388; Create quick launch icon
389CreateShortCut "$QUICKLAUNCH\JOSM.lnk" "$INSTDIR\josm.exe" "" "$INSTDIR\josm.exe" 0 "" "" $(JOSM_LINK_TEXT)
390SectionEnd
391
392Section $(JOSM_SEC_FILE_EXTENSIONS) SecFileExtensions
393;-------------------------------------------
394SectionIn 1 2
395; Create File Extensions
396WriteRegStr HKCR ${OSM_ASSOC} "" "OpenStreetMap data"
397WriteRegStr HKCR "${OSM_ASSOC}\Shell\open\command" "" '"$INSTDIR\josm.exe" "%1"'
398WriteRegStr HKCR "${OSM_ASSOC}\DefaultIcon" "" '"$INSTDIR\josm.exe",0'
399push $R0
400        StrCpy $R0 ".osm"
401        Call Associate
402        StrCpy $R0 ".gpx"
403        Call Associate
404; if somethings added here, add it also to the uninstall section
405pop $R0
406!insertmacro UpdateIcons
407SectionEnd
408
409
410Section "-PluginSetting"
411;-------------------------------------------
412SectionIn 1 2
413;MessageBox MB_OK "PluginSetting!" IDOK 0
414; XXX - should better be handled inside JOSM (recent plugin manager is going in the right direction)
415SetShellVarContext current
416!include LogicLib.nsh
417${WriteINIStrNS} $R0 "$APPDATA\JOSM\preferences" "plugins" "AgPifoJ;openstreetbugs;remotecontrol;validator;wmsplugin"
418SectionEnd
419
420
421Section "un.$(un.JOSM_SEC_UNINSTALL)" un.SecUinstall
422;-------------------------------------------
423
424;
425; UnInstall for every user
426;
427SectionIn 1 2
428SetShellVarContext current
429
430Delete "$INSTDIR\josm-tested.jar"
431IfErrors 0 NoJOSMErrorMsg
432        MessageBox MB_OK $(un.JOSM_IN_USE_ERROR) IDOK 0 ;skipped if josm.jar removed
433        Abort $(un.JOSM_IN_USE_ERROR)
434NoJOSMErrorMsg:
435Delete "$INSTDIR\josm.exe"
436Delete "$INSTDIR\imageformats\qjpeg4.dll"
437RMDir "$INSTDIR\imageformats"
438Delete "$INSTDIR\mingwm10.dll"
439Delete "$INSTDIR\QtCore4.dll"
440Delete "$INSTDIR\QtGui4.dll"
441Delete "$INSTDIR\QtNetwork4.dll"
442Delete "$INSTDIR\QtWebKit4.dll"
443Delete "$INSTDIR\webkit-image.exe"
444Delete "$INSTDIR\uninstall.exe"
445
446DeleteRegKey HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\OSM"
447DeleteRegKey HKEY_LOCAL_MACHINE "Software\josm.exe"
448DeleteRegKey HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\josm.exe"
449
450; Remove Language preference info
451DeleteRegKey HKCU "Software/JOSM" ;${MUI_LANGDLL_REGISTRY_ROOT} ${MUI_LANGDLL_REGISTRY_KEY}
452
453push $R0
454        StrCpy $R0 ".osm"
455        Call un.unlink
456        StrCpy $R0 ".gpx"
457        Call un.unlink
458pop $R0
459
460DeleteRegKey HKCR ${OSM_ASSOC}
461DeleteRegKey HKCR "${OSM_ASSOC}\Shell\open\command"
462DeleteRegKey HKCR "${OSM_ASSOC}\DefaultIcon"
463!insertmacro UpdateIcons
464
465Delete "$SMPROGRAMS\josm.lnk"
466Delete "$DESKTOP\josm.lnk"
467Delete "$QUICKLAUNCH\josm.lnk"
468
469RMDir "$INSTDIR"
470
471SectionEnd ; "Uinstall"
472
473Section /o "un.$(un.JOSM_SEC_PERSONAL_SETTINGS)" un.SecPersonalSettings
474;-------------------------------------------
475SectionIn 2
476SetShellVarContext current
477Delete "$APPDATA\JOSM\plugins\agpifoj\*.*"
478RMDir "$APPDATA\JOSM\plugins\agpifoj"
479Delete "$APPDATA\JOSM\plugins\openstreetbugs\*.*"
480RMDir "$APPDATA\JOSM\plugins\openstreetbugs"
481Delete "$APPDATA\JOSM\plugins\remotecontrol\*.*"
482RMDir "$APPDATA\JOSM\plugins\remotecontrol"
483Delete "$APPDATA\JOSM\plugins\validator\*.*"
484RMDir "$APPDATA\JOSM\plugins\validator"
485Delete "$APPDATA\JOSM\plugins\wmsplugin\*.*"
486RMDir "$APPDATA\JOSM\plugins\wmsplugin"
487Delete "$APPDATA\JOSM\plugins\*.*"
488RMDir "$APPDATA\JOSM\plugins"
489
490Delete "$APPDATA\JOSM\motd.html"
491Delete "$APPDATA\JOSM\preferences"
492Delete "$APPDATA\JOSM\bookmarks"
493RMDir "$APPDATA\JOSM"
494SectionEnd
495
496
497Section "-Un.Finally"
498;-------------------------------------------
499SectionIn 1 2
500; this test must be done after all other things uninstalled (e.g. Global Settings)
501IfFileExists "$INSTDIR" 0 NoFinalErrorMsg
502    MessageBox MB_OK $(un.JOSM_INSTDIR_ERROR) IDOK 0 ; skipped if dir doesn't exist
503NoFinalErrorMsg:
504SectionEnd
505
506
507; ============================================================================
508; PLEASE MAKE SURE, THAT THE DESCRIPTIVE TEXT FITS INTO THE DESCRIPTION FIELD!
509; ============================================================================
510!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
511  !insertmacro MUI_DESCRIPTION_TEXT ${SecJosm} $(JOSM_SECDESC_JOSM)
512  !insertmacro MUI_DESCRIPTION_TEXT ${SecPluginsGroup} $(JOSM_SECDESC_PLUGINS_GROUP)
513  !insertmacro MUI_DESCRIPTION_TEXT ${SecAgPifoJPlugin} $(JOSM_SECDESC_AGPIFOJ_PLUGIN)
514  !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenStreetBugsPlugin} $(JOSM_SECDESC_OPENSTREETBUGS_PLUGIN)
515  !insertmacro MUI_DESCRIPTION_TEXT ${SecRemoteControlPlugin} $(JOSM_SECDESC_REMOTECONTROL_PLUGIN)
516  !insertmacro MUI_DESCRIPTION_TEXT ${SecValidatorPlugin} $(JOSM_SECDESC_VALIDATOR_PLUGIN)
517  !insertmacro MUI_DESCRIPTION_TEXT ${SecWMSPlugin} $(JOSM_SECDESC_WMS_PLUGIN)
518  !insertmacro MUI_DESCRIPTION_TEXT ${SecStartMenu} $(JOSM_SECDESC_STARTMENU)
519  !insertmacro MUI_DESCRIPTION_TEXT ${SecDesktopIcon} $(JOSM_SECDESC_DESKTOP_ICON)
520  !insertmacro MUI_DESCRIPTION_TEXT ${SecQuickLaunchIcon} $(JOSM_SECDESC_QUICKLAUNCH_ICON)
521  !insertmacro MUI_DESCRIPTION_TEXT ${SecFileExtensions} $(JOSM_SECDESC_FILE_EXTENSIONS)
522 
523
524!insertmacro MUI_FUNCTION_DESCRIPTION_END
525
526!insertmacro MUI_UNFUNCTION_DESCRIPTION_BEGIN
527  !insertmacro MUI_DESCRIPTION_TEXT ${un.SecUinstall} $(un.JOSM_SECDESC_UNINSTALL)
528  !insertmacro MUI_DESCRIPTION_TEXT ${un.SecPersonalSettings} $(un.JOSM_SECDESC_PERSONAL_SETTINGS)
529!insertmacro MUI_UNFUNCTION_DESCRIPTION_END
530
531; ============================================================================
532; Callback functions
533; ============================================================================
534
Note: See TracBrowser for help on using the repository browser.