feat(tor): Tor-by-default scaffold and integration

- Add TorManager with static/dlopen start, torrc generation, SOCKS probe
- Add TorURLSession; route Nostr/Web fetches via SOCKS proxy
- Add chat system messages for Tor status; show progress (macOS) and ready
- Disable ControlPort bootstrap monitor on iOS; keep it on macOS
- Make Tor waits non-blocking; avoid main-actor stalls on startup
- Queue & flush Nostr subscriptions on relay connect; skip duplicates
- Always rewrite torrc at launch to fix iOS container path mismatches
- Link libz; add project wiring for tor-nolzma.xcframework
- Minor fixes: SOCKS probe resumeOnce guard, entitlement for network.server (macOS)
This commit is contained in:
jack
2025-09-07 13:52:07 +02:00
parent 0ce68bc762
commit 37d655d065
1493 changed files with 235453 additions and 24 deletions
+9 -1
View File
@@ -68,6 +68,10 @@ targets:
- target: bitchatShareExtension
embed: true
- package: P256K
- framework: Frameworks/tor-nolzma.xcframework
embed: true
codeSign: true
- sdk: libz.tbd
bitchat_macOS:
type: application
@@ -100,7 +104,7 @@ targets:
PRODUCT_BUNDLE_IDENTIFIER: chat.bitchat
PRODUCT_NAME: bitchat
INFOPLIST_FILE: bitchat/Info.plist
ENABLE_PREVIEWS: YES
ENABLE_PREVIEWS: NO
SWIFT_VERSION: 5.0
MACOSX_DEPLOYMENT_TARGET: 13.0
CODE_SIGN_STYLE: Automatic
@@ -112,6 +116,10 @@ targets:
CODE_SIGN_ENTITLEMENTS: bitchat/bitchat-macOS.entitlements
dependencies:
- package: P256K
- framework: Frameworks/tor-nolzma.xcframework
embed: true
codeSign: true
- sdk: libz.tbd
bitchatShareExtension:
type: app-extension