6f38ac0e17c7bdbecc5191f31766be75180633db
[fw/altos] / ao-tools / altosui / altos-windows.nsi
1 !addplugindir Instdrv/NSIS/Plugins
2
3 Name "Altus Metrum Installer"
4
5 ; Default install directory
6 InstallDir "$PROGRAMFILES\AltusMetrum"
7
8 ; Tell the installer where to re-install a new version
9 InstallDirRegKey HKLM "Software\AltusMetrum" "Install_Dir"
10
11 LicenseText "GNU General Public License Version 2"
12 LicenseData "../../COPYING"
13
14 ; Need admin privs for Vista or Win7
15 RequestExecutionLevel admin
16
17 ShowInstDetails Show
18
19 ComponentText "Altus Metrum Software and Driver Installer"
20
21 ; Pages to present
22
23 Page license
24 Page components
25 Page directory
26 Page instfiles
27
28 UninstPage uninstConfirm
29 UninstPage instfiles
30
31 ; And the stuff to install
32
33 Section "Install Driver" InstDriver
34         InstDrv::InitDriverSetup /NOUNLOAD {4D36E96D-E325-11CE-BFC1-08002BE10318} "Altus Metrum"
35         Pop $0
36         DetailPrint "InitDriverSetup: $0"
37
38         InstDrv::DeleteOemInfFiles /NOUNLOAD
39         InstDrv::CreateDevice /NOUNLOAD
40         SetOutPath $TEMP
41         File "../../telemetrum.inf"
42         InstDrv::InstallDriver /NOUNLOAD "$TEMP\telemetrum.inf"
43 SectionEnd
44
45 Section "AltosUI Application"
46         SetOutPath $INSTDIR
47
48         File "altosui.jar"
49         File "cmudict04.jar"
50         File "cmulex.jar"
51         File "cmu_time_awb.jar"
52         File "cmutimelex.jar"
53         File "cmu_us_kal.jar"
54         File "en_us.jar"
55         File "freetts.jar"
56
57         File "*.dll"
58
59         File "../../icon/*.ico"
60
61         CreateShortCut "$SMPROGRAMS\AltusMetrum.lnk" "$INSTDIR\altosui.jar" "" "$INSTDIR\altus-metrum.ico"
62 SectionEnd
63
64 Section "AltosUI Desktop Shortcut"
65         CreateShortCut "$DESKTOP\AltusMetrum.lnk" "$INSTDIR\altosui.jar"  "" "$INSTDIR\altus-metrum.ico"
66 SectionEnd
67
68 Section "TeleMetrum and TeleDongle Firmware"
69
70         SetOutPath $INSTDIR
71
72         File "../../src/telemetrum-v1.0/telemetrum-v1.0.ihx"
73         File "../../src/teledongle-v0.2/teledongle-v0.2.ihx"
74
75 SectionEnd
76
77 Section "Uninstaller"
78
79         ; Deal with the uninstaller
80         
81         SetOutPath $INSTDIR
82
83         ; Write the install path to the registry
84         WriteRegStr HKLM SOFTWARE\AltusMetrum "Install_Dir" "$INSTDIR"
85         
86         ; Write the uninstall keys for windows
87         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "DisplayName" "Altus Metrum"
88         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "UninstallString" '"$INSTDIR\uninstall.exe"'
89         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoModify" "1"
90         WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum" "NoRepair" "1"
91
92         WriteUninstaller "uninstall.exe"
93 SectionEnd
94
95 Section "Uninstall"
96         DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\AltusMetrum"
97         DeleteRegKey HKLM "Software\AltusMetrum"
98
99         Delete "$INSTDIR\*.*"
100         RMDir "$INSTDIR"
101
102         ; Remove devices
103         InstDrv::InitDriverSetup /NOUNLOAD {4D36E96D-E325-11CE-BFC1-08002BE10318} "Altus Metrum"
104         InstDrv::DeleteOemInfFiles /NOUNLOAD
105         InstDrv::RemoveAllDevices
106
107         ; Remove shortcuts, if any
108         Delete "$SMPROGRAMS\AltusMetrum.lnk"
109         Delete "$DESKTOP\AltusMetrum.lnk"
110 SectionEnd