X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=telegps%2Ftelegps-windows.nsi.in;h=b41455206532d5152840c88be662d70e5a598f9e;hp=e852f88aaa01d004850a13a74a3cb9b7ba64ec05;hb=3f4e765c05ddbae83ca0c0176572cd698f285d08;hpb=fe14315d4cfccf8b53d9c4b7fa79302fd36b2c9a diff --git a/telegps/telegps-windows.nsi.in b/telegps/telegps-windows.nsi.in index e852f88a..b4145520 100644 --- a/telegps/telegps-windows.nsi.in +++ b/telegps/telegps-windows.nsi.in @@ -1,11 +1,9 @@ -!addplugindir Instdrv/NSIS/Plugins -; Definitions for Java 1.6 Detection -!define JRE_VERSION "1.6" -!define JRE_ALTERNATE "1.7" -!define JRE_URL "http://javadl.sun.com/webapps/download/AutoDL?BundleId=52247&/jre-6u27-windows-i586-p.exe" -!define PRODUCT_NAME "Altus Metrum Windows Software" +!addplugindir ../altosui/Instdrv/NSIS/Plugins +!addincludedir ../altosui/Instdrv/NSIS/Includes +!include x64.nsh +!include java.nsh -Name "Altus Metrum TeleGPS Installer" +Name "TeleGPS Installer" ; Default install directory InstallDir "$PROGRAMFILES\AltusMetrum" @@ -21,33 +19,16 @@ RequestExecutionLevel admin ShowInstDetails Show -ComponentText "Altus Metrum TeleGPS Software Installer" +ComponentText "TeleGPS Software Installer" -Function GetJRE - MessageBox MB_OK "${PRODUCT_NAME} uses Java ${JRE_VERSION} 32-bit, it will now \ - be downloaded and installed" - - StrCpy $2 "$TEMP\Java Runtime Environment.exe" - nsisdl::download /TIMEOUT=30000 ${JRE_URL} $2 - Pop $R0 ;Get the return value - StrCmp $R0 "success" +3 - MessageBox MB_OK "Download failed: $R0" - Quit - ExecWait $2 - Delete $2 -FunctionEnd - - -Function DetectJRE - ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" \ - "CurrentVersion" - StrCmp $2 ${JRE_VERSION} done - - StrCmp $2 ${JRE_ALTERNATE} done - - Call GetJRE - - done: +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 @@ -70,15 +51,18 @@ Section "Install Driver" InstDriver InstDrv::DeleteOemInfFiles /NOUNLOAD InstDrv::CreateDevice /NOUNLOAD - SetOutPath $TEMP - File "../telemetrum.inf" - InstDrv::InstallDriver /NOUNLOAD "$TEMP\telemetrum.inf" - SetOutPath $INSTDIR - File "../telemetrum.inf" - - SetOutPath $WINDIR\Inf - File "../telemetrum.inf" + File "../altusmetrum.inf" + File "../altusmetrum.cat" + + ${DisableX64FSRedirection} + IfFileExists $WINDIR\System32\PnPutil.exe 0 nopnp + ${DisableX64FSRedirection} + nsExec::ExecToLog '"$WINDIR\System32\PnPutil.exe" -i -a "$INSTDIR\altusmetrum.inf"' + Goto done +nopnp: + InstDrv::InstallDriver /NOUNLOAD "$INSTDIR\altusmetrum.inf" +done: SectionEnd @@ -111,11 +95,14 @@ Section "TeleGPS Desktop Shortcut" CreateShortCut "$DESKTOP\TeleGPS.lnk" "$INSTDIR\telegps-fat.jar" "" "$INSTDIR\telegps.ico" SectionEnd -Section "TeleGPS Firmware" +Section "TeleGPS, TeleDongle and TeleBT Firmware" SetOutPath $INSTDIR File "../src/telegps-v1.0/telegps-v1.0-${VERSION}.ihx" + File "../src/teledongle-v0.2/teledongle-v0.2-${VERSION}.ihx" + File "../src/telebt-v1.0/telebt-v1.0-${VERSION}.ihx" + SectionEnd Section "Documentation" @@ -152,6 +139,11 @@ Section "Uninstall" Delete "$INSTDIR\*.*" RMDir "$INSTDIR" + ; Remove devices + InstDrv::InitDriverSetup /NOUNLOAD {4D36E96D-E325-11CE-BFC1-08002BE10318} AltusMetrumSerial + InstDrv::DeleteOemInfFiles /NOUNLOAD + InstDrv::RemoveAllDevices + ; Remove shortcuts, if any Delete "$SMPROGRAMS\TeleGPS.lnk" Delete "$DESKTOP\TeleGPS.lnk"