Integrate Xray 26.9.9 with the sing-box system tunnel and verify Windows routes during health checks. Improve endpoint selection, network recovery, subscription refresh deadlines, diagnostics, packaging, and regression coverage.
18 lines
1.4 KiB
PowerShell
18 lines
1.4 KiB
PowerShell
[CmdletBinding()]
|
|
param()
|
|
$ErrorActionPreference = 'Stop'
|
|
$root = [IO.Path]::GetFullPath((Join-Path $PSScriptRoot '..'))
|
|
$toolsRoot = Join-Path $root 'tools'
|
|
$archive = Join-Path $toolsRoot 'Xray-windows-64-v26.9.9.zip'
|
|
$source = Join-Path $toolsRoot 'Xray-core-v26.9.9-source.zip'
|
|
# SHA256 published in the official GitHub release API and Xray-windows-64.zip.dgst.
|
|
$expected = '244DEABA2098C2964E49BBA90DF3707777E5F5F428A82D2F29604015F24BEEC2'
|
|
New-Item -ItemType Directory -Path $toolsRoot -Force | Out-Null
|
|
if (!(Test-Path -LiteralPath $archive)) { Invoke-WebRequest -Uri 'https://github.com/XTLS/Xray-core/releases/download/v26.9.9/Xray-windows-64.zip' -OutFile $archive -TimeoutSec 240 }
|
|
if ((Get-FileHash -LiteralPath $archive -Algorithm SHA256).Hash -ne $expected) { throw 'Xray upstream archive checksum mismatch' }
|
|
if (!(Test-Path -LiteralPath $source)) { Invoke-WebRequest -Uri 'https://codeload.github.com/XTLS/Xray-core/zip/refs/tags/v26.9.9' -OutFile $source -TimeoutSec 240 }
|
|
# Pin the source ZIP fetched from the official v26.9.9 tag alongside this binary.
|
|
if ((Get-FileHash -LiteralPath $source -Algorithm SHA256).Hash -ne '33871A5B7673418708BEBA3EAA76028F941CE77986003B24E48A0A1A5F01425E') { throw 'Xray upstream source archive checksum mismatch' }
|
|
Expand-Archive -LiteralPath $archive -DestinationPath (Join-Path $toolsRoot 'xray-unpacked') -Force
|
|
Write-Host 'Verified Xray-core v26.9.9 prepared (same 52a412d core revision as the inspected Happ Windows client).'
|