[WIP] Fix edge upgrade edge cases
This commit is contained in:
@@ -1,14 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Fragment>
|
||||
<DirectoryRef Id="INSTALLDIR">
|
||||
<Directory Id="BinaryDir" Name="binary" />
|
||||
<Directory Id="IntelDir" Name="intel" />
|
||||
<DirectoryRef Id="TARGETDIR">
|
||||
<Directory Id="CommonAppDataFolder" Name="CommonAppData">
|
||||
<Directory Id="PortmasterDir" Name="Portmaster">
|
||||
<Directory Id="IntelDir" Name="intel" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
</DirectoryRef>
|
||||
</Fragment>
|
||||
|
||||
<Fragment>
|
||||
<Component Id="BinaryFiles" Directory="BinaryDir" Guid="850cdd31-424d-45f5-b8f0-95df950ebd0d">
|
||||
<Component Id="BinaryFiles" Directory="INSTALLDIR" Guid="850cdd31-424d-45f5-b8f0-95df950ebd0d">
|
||||
<File Id="BinIndexJson" Source="..\..\..\..\binaries\bin-index.json" />
|
||||
<File Id="PortmasterCoreExe" Source="..\..\..\..\binaries\portmaster-core.exe" />
|
||||
<File Id="PortmasterKextSys" Source="..\..\..\..\binaries\portmaster-kext.sys" />
|
||||
|
||||
@@ -1,13 +1,34 @@
|
||||
!define NSIS_HOOK_POSTINSTALL "NSIS_HOOK_POSTINSTALL_"
|
||||
!macro NSIS_HOOK_PREINSTALL
|
||||
; Current working directory is <project-dir>\target\release\nsis\x64
|
||||
|
||||
SetOutPath "$INSTDIR"
|
||||
|
||||
File "..\..\..\..\binaries\bin-index.json"
|
||||
File "..\..\..\..\binaries\portmaster-core.exe"
|
||||
File "..\..\..\..\binaries\portmaster-kext.sys"
|
||||
File "..\..\..\..\binaries\portmaster.zip"
|
||||
File "..\..\..\..\binaries\assets.zip"
|
||||
|
||||
SetOutPath "$COMMONPROGRAMDATA\Portmaster\intel"
|
||||
|
||||
File "..\..\..\..\binaries\intel-index.json"
|
||||
File "..\..\..\..\binaries\base.dsdl"
|
||||
File "..\..\..\..\binaries\geoipv4.mmdb"
|
||||
File "..\..\..\..\binaries\geoipv6.mmdb"
|
||||
File "..\..\..\..\binaries\index.dsd"
|
||||
File "..\..\..\..\binaries\intermediate.dsdl"
|
||||
File "..\..\..\..\binaries\urgent.dsdl"
|
||||
|
||||
; restire previous state
|
||||
SetOutPath "$INSTDIR"
|
||||
|
||||
!macro NSIS_HOOK_POSTINSTALL_
|
||||
ExecWait '"$INSTDIR\portmaster-start.exe" install core-service --data="$INSTDIR\data"'
|
||||
!macroend
|
||||
|
||||
!macro NSIS_HOOK_POSTINSTALL
|
||||
ExecWait 'sc.exe create PortmasterCore binPath= "$INSTDIR\portmaster-core.exe" --data="$COMMONPROGRAMDATA\Portmaster\data"'
|
||||
!macroend
|
||||
|
||||
!define NSIS_HOOK_PREUNINSTALL "NSIS_HOOK_PREUNINSTALL_"
|
||||
|
||||
!macro NSIS_HOOK_PREUNINSTALL_
|
||||
!macro NSIS_HOOK_PREUNINSTALL
|
||||
ExecWait 'sc.exe stop PortmasterCore'
|
||||
ExecWait 'sc.exe delete PortmasterCore'
|
||||
!macroend
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<Fragment>
|
||||
<CustomAction Id="InstallPortmasterService"
|
||||
Directory="INSTALLDIR"
|
||||
ExeCommand="sc.exe create PortmasterCore binPath= "[INSTALLDIR]binary\portmaster-core.exe --data [INSTALLDIR]data""
|
||||
ExeCommand="sc.exe create PortmasterCore binPath= "[INSTALLDIR]portmaster-core.exe --data [CommonAppDataFolder]Portmaster\data""
|
||||
Execute="commit"
|
||||
Return="check"
|
||||
Impersonate="no"
|
||||
|
||||
Reference in New Issue
Block a user