Fix java version detection and downloading
[fw/altos] / micropeak / micropeak-windows.nsi.in
1 !addplugindir Instdrv/NSIS/Plugins
2 !addincludedir ../altosui/Instdrv/NSIS/Includes
3 !include x64.nsh
4 !include java.nsh
5
6 Name "Altus Metrum MicroPeak Installer"
7
8 ; Default install directory
9 InstallDir "$PROGRAMFILES\AltusMetrum"
10
11 ; Tell the installer where to re-install a new version
12 InstallDirRegKey HKLM "Software\AltusMetrum" "Install_Dir"
13
14 LicenseText "GNU General Public License Version 2"
15 LicenseData "../COPYING"
16
17 ; Need admin privs for Vista or Win7
18 RequestExecutionLevel admin
19
20 ShowInstDetails Show
21
22 ComponentText "Altus Metrum MicroPeak Software Installer"
23
24 Function .onInit
25         DetailPrint "Checking host operating system"
26         ${If} ${RunningX64}
27                 DetailPrint "Installer running on 64-bit host"
28                 SetRegView 64
29                 StrCpy $INSTDIR "$PROGRAMFILES64\AltusMetrum"
30                 ${DisableX64FSRedirection}
31         ${EndIf}
32 FunctionEnd
33
34 ; Pages to present
35
36 Page license
37 Page components
38 Page directory
39 Page instfiles
40
41 UninstPage uninstConfirm
42 UninstPage instfiles
43
44 ; And the stuff to install
45
46 Section "MicroPeak Application"
47         Call DetectJRE
48
49         SetOutPath $INSTDIR
50
51         File "micropeak-fat.jar"
52         File "altoslib_@ALTOSLIB_VERSION@.jar"
53         File "altosuilib_@ALTOSUILIB_VERSION@.jar"
54         File "jfreechart.jar"
55         File "jcommon.jar"
56
57         File "*.dll"
58
59         File "../icon/*.ico"
60
61         CreateShortCut "$SMPROGRAMS\MicroPeak.lnk" "$SYSDIR\javaw.exe" "-jar micropeak-fat.jar" "$INSTDIR\micro-peak.ico"
62 SectionEnd
63
64 Section "FTDI USB Driver"
65         SetOutPath $INSTDIR
66
67         File "CDM20824_Setup.exe"
68
69         StrCpy $2 "$INSTDIR\CDM20824_Setup.exe"
70         ExecWait $2
71 SectionEnd
72
73 Section "MicroPeak Desktop Shortcut"
74         CreateShortCut "$DESKTOP\MicroPeak.lnk" "$INSTDIR\micropeak-fat.jar"  "" "$INSTDIR\micro-peak.ico"
75 SectionEnd
76
77 Section "Documentation"
78
79         SetOutPath $INSTDIR
80
81         File "../doc/micropeak.pdf"
82 SectionEnd
83
84 Section "Uninstaller"
85
86         ; Deal with the uninstaller
87
88         SetOutPath $INSTDIR
89
90         ; Write the install path to the registry
91         WriteRegStr HKLM SOFTWARE\AltusMetrum "Install_Dir" "$INSTDIR"
92
93         ; Write the uninstall keys for windows
94         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "DisplayName" "Altus Metrum"
95         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "UninstallString" '"$INSTDIR\uninstall.exe"'
96         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoModify" "1"
97         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoRepair" "1"
98
99         WriteUninstaller "uninstall.exe"
100 SectionEnd
101
102 Section "Uninstall"
103         DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum"
104         DeleteRegKey HKLM "Software\AltusMetrum"
105
106         Delete "$INSTDIR\*.*"
107         RMDir "$INSTDIR"
108
109         ; Remove shortcuts, if any
110         Delete "$SMPROGRAMS\MicroPeak.lnk"
111         Delete "$DESKTOP\MicroPeak.lnk"
112         
113 SectionEnd