5 Commits
Author SHA1 Message Date
gandc a755ee8691 force ice all v4
Build Fluxer Desktop / Linux x64 (push) Successful in 11m32s
Build Fluxer Desktop / Windows x64 (push) Successful in 21m39s
2026-09-17 01:20:44 +03:00
gandc e57e845a3b fix
Build Fluxer Desktop / Linux x64 (push) Successful in 11m51s
Build Fluxer Desktop / Windows x64 (push) Canceled after 15m23s
2026-09-17 01:05:04 +03:00
gandc c901908eab fix path
Build Fluxer Desktop / Linux x64 (push) Failing after 3m39s
Build Fluxer Desktop / Windows x64 (push) Canceled after 6m32s
2026-09-17 00:53:56 +03:00
gandc 2c0b5286a7 fix desktop voice by forcing ICE policy all
Build Fluxer Desktop / Linux x64 (push) Failing after 3m45s
Build Fluxer Desktop / Windows x64 (push) Canceled after 6m23s
2026-09-17 00:47:46 +03:00
gandc 59ac403063 Revert "desktop-local-network-permissions"
This reverts commit 6c7a87994e.
2026-09-17 00:41:51 +03:00
+78 -50
View File
@@ -207,45 +207,57 @@ jobs:
-Path $WindowPath ` -Path $WindowPath `
-Pattern "sso.gandc.ru|will-redirect|allowTrustedOrSsoNavigation" -Pattern "sso.gandc.ru|will-redirect|allowTrustedOrSsoNavigation"
$WindowContent = Get-Content $WindowPath -Raw
if ($WindowContent -match "'local-network-access'") { - name: Force WebRTC ICE policy to all
throw "Local network permissions are already present in Window.ts" shell: powershell
run: |
$ErrorActionPreference = "Stop"
$Path = "fluxer-src\fluxer_desktop\src\preload\index.ts"
if (-not (Test-Path $Path)) {
throw "Desktop preload not found at $Path"
} }
$PermissionPattern = "'clipboard-sanitized-write',\r?\n\]\);" $Content = Get-Content $Path -Raw
$Anchor = "import {contextBridge, ipcRenderer, webFrame} from 'electron';"
$PermissionReplacement = @( if ($Content -notmatch [regex]::Escape($Anchor)) {
"'clipboard-sanitized-write'," throw "Unable to locate Electron preload import"
"`t'local-network-access'," }
"`t'local-network',"
"`t'loopback-network',"
"]);"
) -join "`n"
$PatchedWindowContent = [regex]::Replace( if ($Content -match "installForceAllIceTransportPolicy") {
$WindowContent, throw "WebRTC ICE policy patch is already present"
$PermissionPattern, }
$PermissionReplacement,
1 $Patch = [Text.Encoding]::UTF8.GetString(
[Convert]::FromBase64String(
"aW1wb3J0IHtjb250ZXh0QnJpZGdlLCBpcGNSZW5kZXJlciwgd2ViRnJhbWV9IGZyb20gJ2VsZWN0cm9uJzsKCmZ1bmN0aW9uIGluc3RhbGxGb3JjZUFsbEljZVRyYW5zcG9ydFBvbGljeSgpOiB2b2lkIHsKCWNvbnRleHRCcmlkZ2UuZXhlY3V0ZUluTWFpbldvcmxkKHsKCQlmdW5jOiAoKSA9PiB7CgkJCWNvbnN0IE5hdGl2ZVJUQ1BlZXJDb25uZWN0aW9uID0gd2luZG93LlJUQ1BlZXJDb25uZWN0aW9uOwoKCQkJaWYgKHR5cGVvZiBOYXRpdmVSVENQZWVyQ29ubmVjdGlvbiAhPT0gJ2Z1bmN0aW9uJykgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQl3aW5kb3cuUlRDUGVlckNvbm5lY3Rpb24gPSBuZXcgUHJveHkoTmF0aXZlUlRDUGVlckNvbm5lY3Rpb24sIHsKCQkJCWNvbnN0cnVjdChUYXJnZXQsIGFyZ3MsIG5ld1RhcmdldCkgewoJCQkJCWNvbnN0IGNvbmZpZyA9IGFyZ3NbMF0gYXMgUlRDQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZDsKCgkJCQkJaWYgKGNvbmZpZz8uaWNlVHJhbnNwb3J0UG9saWN5ID09PSAncmVsYXknKSB7CgkJCQkJCWFyZ3NbMF0gPSB7CgkJCQkJCQkuLi5jb25maWcsCgkJCQkJCQlpY2VUcmFuc3BvcnRQb2xpY3k6ICdhbGwnLAoJCQkJCQl9OwoJCQkJCX0KCgkJCQkJcmV0dXJuIFJlZmxlY3QuY29uc3RydWN0KFRhcmdldCwgYXJncywgbmV3VGFyZ2V0KTsKCQkJCX0sCgkJCX0pOwoKCQkJY29uc29sZS5pbmZvKCdbRmx1eGVyIERlc2t0b3BdIFdlYlJUQyBpY2VUcmFuc3BvcnRQb2xpY3kgZm9yY2VkIHRvIGFsbCcpOwoJCX0sCgl9KTsKfQoKaW5zdGFsbEZvcmNlQWxsSWNlVHJhbnNwb3J0UG9saWN5KCk7"
)
) )
if ($PatchedWindowContent -eq $WindowContent) { $Content = $Content.Replace(
throw "Unable to patch trustedRendererPermissionTypes" $Anchor,
} $Patch
)
Set-Content ` Set-Content `
-Path $WindowPath ` -Path $Path `
-Value $PatchedWindowContent ` -Value $Content `
-NoNewline ` -NoNewline `
-Encoding utf8 -Encoding utf8
Write-Host "Local network permissions patch applied" $Result = Get-Content $Path -Raw
if ($Result -notmatch "installForceAllIceTransportPolicy") {
throw "WebRTC ICE policy patch verification failed"
}
Write-Host "Installed preload WebRTC ICE policy override"
Select-String ` Select-String `
-Path $WindowPath ` -Path $Path `
-Pattern "local-network-access|local-network|loopback-network" -Pattern "installForceAllIceTransportPolicy|iceTransportPolicy forced to all"
- name: Install dependencies - name: Install dependencies
shell: powershell shell: powershell
@@ -728,43 +740,49 @@ jobs:
-E 'sso\.gandc\.ru|will-redirect|allowTrustedOrSsoNavigation' \ -E 'sso\.gandc\.ru|will-redirect|allowTrustedOrSsoNavigation' \
fluxer-src/fluxer_desktop/src/main/Window.ts fluxer-src/fluxer_desktop/src/main/Window.ts
python3 <<'PY'
- name: Force WebRTC ICE policy to all
shell: bash
run: |
set -euxo pipefail
python3 - <<'PY'
from pathlib import Path from pathlib import Path
import base64
path = Path( path = Path(
"fluxer-src/fluxer_desktop/src/main/Window.ts" "fluxer-src/fluxer_desktop/"
"src/preload/index.ts"
)
if not path.is_file():
raise SystemExit(
f"Desktop preload not found: {path}"
) )
data = path.read_text( data = path.read_text(
encoding="utf-8" encoding="utf-8"
) )
if "'local-network-access'" in data: anchor = "import {contextBridge, ipcRenderer, webFrame} from 'electron';"
if anchor not in data:
raise SystemExit( raise SystemExit(
"Local network permissions are already present in Window.ts" "Unable to locate Electron preload import"
) )
old = ( if "installForceAllIceTransportPolicy" in data:
"\t'clipboard-sanitized-write',\n"
"]);"
)
new = (
"\t'clipboard-sanitized-write',\n"
"\t'local-network-access',\n"
"\t'local-network',\n"
"\t'loopback-network',\n"
"]);"
)
if data.count(old) != 1:
raise SystemExit( raise SystemExit(
"Unable to locate trustedRendererPermissionTypes" "WebRTC ICE policy patch is already present"
) )
patch = base64.b64decode(
"aW1wb3J0IHtjb250ZXh0QnJpZGdlLCBpcGNSZW5kZXJlciwgd2ViRnJhbWV9IGZyb20gJ2VsZWN0cm9uJzsKCmZ1bmN0aW9uIGluc3RhbGxGb3JjZUFsbEljZVRyYW5zcG9ydFBvbGljeSgpOiB2b2lkIHsKCWNvbnRleHRCcmlkZ2UuZXhlY3V0ZUluTWFpbldvcmxkKHsKCQlmdW5jOiAoKSA9PiB7CgkJCWNvbnN0IE5hdGl2ZVJUQ1BlZXJDb25uZWN0aW9uID0gd2luZG93LlJUQ1BlZXJDb25uZWN0aW9uOwoKCQkJaWYgKHR5cGVvZiBOYXRpdmVSVENQZWVyQ29ubmVjdGlvbiAhPT0gJ2Z1bmN0aW9uJykgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQl3aW5kb3cuUlRDUGVlckNvbm5lY3Rpb24gPSBuZXcgUHJveHkoTmF0aXZlUlRDUGVlckNvbm5lY3Rpb24sIHsKCQkJCWNvbnN0cnVjdChUYXJnZXQsIGFyZ3MsIG5ld1RhcmdldCkgewoJCQkJCWNvbnN0IGNvbmZpZyA9IGFyZ3NbMF0gYXMgUlRDQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZDsKCgkJCQkJaWYgKGNvbmZpZz8uaWNlVHJhbnNwb3J0UG9saWN5ID09PSAncmVsYXknKSB7CgkJCQkJCWFyZ3NbMF0gPSB7CgkJCQkJCQkuLi5jb25maWcsCgkJCQkJCQlpY2VUcmFuc3BvcnRQb2xpY3k6ICdhbGwnLAoJCQkJCQl9OwoJCQkJCX0KCgkJCQkJcmV0dXJuIFJlZmxlY3QuY29uc3RydWN0KFRhcmdldCwgYXJncywgbmV3VGFyZ2V0KTsKCQkJCX0sCgkJCX0pOwoKCQkJY29uc29sZS5pbmZvKCdbRmx1eGVyIERlc2t0b3BdIFdlYlJUQyBpY2VUcmFuc3BvcnRQb2xpY3kgZm9yY2VkIHRvIGFsbCcpOwoJCX0sCgl9KTsKfQoKaW5zdGFsbEZvcmNlQWxsSWNlVHJhbnNwb3J0UG9saWN5KCk7"
).decode("utf-8")
data = data.replace( data = data.replace(
old, anchor,
new, patch,
1, 1,
) )
@@ -773,13 +791,23 @@ jobs:
encoding="utf-8", encoding="utf-8",
) )
print("Local network permissions patch applied") result = path.read_text(
encoding="utf-8"
)
if "installForceAllIceTransportPolicy" not in result:
raise SystemExit(
"WebRTC ICE policy patch verification failed"
)
print(
"Installed preload WebRTC ICE policy override"
)
PY PY
grep -n \ grep -n \
-E "local-network-access|local-network|loopback-network" \ -E 'installForceAllIceTransportPolicy|iceTransportPolicy forced to all' \
fluxer-src/fluxer_desktop/src/main/Window.ts fluxer-src/fluxer_desktop/src/preload/index.ts
- name: Install dependencies - name: Install dependencies
shell: bash shell: bash