summaryrefslogtreecommitdiff
path: root/micropeak/micropeak-windows.nsi.in
blob: bb5da1bb64e4e33846344a57bb5e3c5c9058e43b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
!addplugindir Instdrv/NSIS/Plugins
!addincludedir ../altosui/Instdrv/NSIS/Includes
!include x64.nsh
!include java.nsh

Name "Altus Metrum MicroPeak Installer"

; Default install directory
InstallDir "$PROGRAMFILES\AltusMetrum"

; Tell the installer where to re-install a new version
InstallDirRegKey HKLM "Software\AltusMetrum" "Install_Dir"

LicenseText "GNU General Public License Version 2"
LicenseData "../COPYING"

; Need admin privs for Vista or Win7
RequestExecutionLevel admin

ShowInstDetails Show

ComponentText "Altus Metrum MicroPeak Software Installer"

Function .onInit
	DetailPrint "Checking host operating system"
	${If} ${RunningX64}
		DetailPrint "Installer running on 64-bit host"
		SetRegView 64
		StrCpy $INSTDIR "$PROGRAMFILES64\AltusMetrum"
		${DisableX64FSRedirection}
	${EndIf}
FunctionEnd

; Pages to present

Page license
Page components
Page directory
Page instfiles

UninstPage uninstConfirm
UninstPage instfiles

; And the stuff to install

Section "MicroPeak Application"
	Call DetectJRE

	SetOutPath $INSTDIR

	File "micropeak-fat.jar"
	File "altoslib_@ALTOSLIB_VERSION@.jar"
	File "altosuilib_@ALTOSUILIB_VERSION@.jar"
	File "jfreechart.jar"
	File "jcommon.jar"

	File "*.dll"

	File "../icon/*.ico"

	CreateShortCut "$SMPROGRAMS\MicroPeak.lnk" "$SYSDIR\javaw.exe" "-jar micropeak-fat.jar" "$INSTDIR\micro-peak.ico"
SectionEnd

Section "FTDI USB Driver"
	SetOutPath $INSTDIR

	File "CDM20824_Setup.exe"

	StrCpy $2 "$INSTDIR\CDM20824_Setup.exe"
	ExecWait $2
SectionEnd

Section "MicroPeak Desktop Shortcut"
	CreateShortCut "$DESKTOP\MicroPeak.lnk" "$INSTDIR\micropeak-fat.jar"  "" "$INSTDIR\micro-peak.ico"
SectionEnd

Section "Documentation"

	SetOutPath $INSTDIR

	File "../doc/micropeak.pdf"
SectionEnd

Section "Uninstaller"

	; Deal with the uninstaller

	SetOutPath $INSTDIR

	; Write the install path to the registry
	WriteRegStr HKLM SOFTWARE\AltusMetrum "Install_Dir" "$INSTDIR"

	; Write the uninstall keys for windows
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "DisplayName" "Altus Metrum"
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "UninstallString" '"$INSTDIR\uninstall.exe"'
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoModify" "1"
	WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoRepair" "1"

	WriteUninstaller "uninstall.exe"
SectionEnd

Section "Uninstall"
	DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum"
	DeleteRegKey HKLM "Software\AltusMetrum"

	Delete "$INSTDIR\*.*"
	RMDir "$INSTDIR"

	; Remove shortcuts, if any
	Delete "$SMPROGRAMS\MicroPeak.lnk"
	Delete "$DESKTOP\MicroPeak.lnk"
	
SectionEnd