mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-26 10:21:52 +00:00
chore: remove tor from startos core
Tor is being moved from a built-in OS feature to a service. This removes the Arti-based Tor client, onion address management, hidden service creation, and all related code from the core backend, frontend, and SDK. - Delete core/src/net/tor/ module (~2060 lines) - Remove OnionAddress, TorSecretKey, TorController from all consumers - Remove HostnameInfo::Onion and HostAddress::Onion variants - Remove onion CRUD RPC endpoints and tor subcommand - Remove tor key handling from account and backup/restore - Remove ~12 tor-related Cargo dependencies (arti-client, torut, etc.) - Remove tor UI components, API methods, mock data, and routes - Remove OnionHostname and tor patterns/regexes from SDK - Add v0_4_0_alpha_20 database migration to strip onion data - Bump version to 0.4.0-alpha.20
This commit is contained in:
@@ -279,6 +279,33 @@ Pending tasks for AI agents. Remove items when completed.
|
||||
| `sdk/base/lib/interfaces/Host.ts` | SDK `MultiHost.bindPort()` — no changes needed |
|
||||
| `core/src/db/model/public.rs` | Public DB model — port forward mapping |
|
||||
|
||||
- [ ] Remove Tor from StartOS core - @dr-bonez
|
||||
|
||||
**Goal**: Remove all built-in Tor functionality from StartOS. Tor will now be provided by a service
|
||||
running on StartOS rather than being integrated into the core OS.
|
||||
|
||||
**Scope**: Remove the Arti-based Tor client, onion address management in the networking stack, Tor
|
||||
hidden service creation in the vhost/net controller layers, and any Tor-specific configuration in the
|
||||
database models. The core should no longer start, manage, or depend on a Tor daemon.
|
||||
|
||||
**Key areas to modify**:
|
||||
|
||||
| Area | Change |
|
||||
|------|--------|
|
||||
| `core/src/net/tor/` | Remove the Tor module entirely (Arti client, hidden service management) |
|
||||
| `core/src/net/net_controller.rs` | Remove Tor hidden service creation/teardown in `update()` |
|
||||
| `core/src/net/host/address.rs` | Remove onion address CRUD RPC endpoints (`address.onion.add`, `address.onion.remove`) |
|
||||
| `core/src/net/host/binding.rs` | Remove onion-related fields from `NetInfo` |
|
||||
| `core/src/net/service_interface.rs` | Remove onion-related variants from `HostnameInfo` |
|
||||
| `core/src/db/model/` | Remove Tor/onion fields from public and private DB models |
|
||||
| `sdk/base/lib/interfaces/Host.ts` | Remove onion-related types and options from the SDK |
|
||||
| `web/projects/ui/` | Remove onion address UI from interfaces pages |
|
||||
| `Cargo.toml` / dependencies | Remove Arti and related Tor crate dependencies |
|
||||
|
||||
**Migration**: Existing onion address data in the database should be cleaned up during migration.
|
||||
Services that previously relied on the OS-provided Tor integration will need to use the new Tor
|
||||
service instead (service-level integration is out of scope for this task).
|
||||
|
||||
- [ ] Auto-configure port forwards via UPnP/NAT-PMP/PCP - @dr-bonez
|
||||
|
||||
**Blocked by**: "Support preferred external ports besides 443" (must be implemented and tested
|
||||
|
||||
Reference in New Issue
Block a user