Tail Console · 源码 1.1.2
修改与构建
构建环境
Apple Silicon Mac,macOS 14+,安装 Command Line Tools 或 Xcode。确认 xcrun swift --version 可用;脚本使用系统 Python 3 与 codesign,无第三方依赖。
运行应用需先登录本机 Tailscale 服务,当前账户需有管理权限(operator)。离线测试无需登录。
解压后构建
在源码文件夹中执行:
./scripts/test-all.sh
./scripts/build.sh应用生成在 build/Tail Console.app,采用本机 ad-hoc 签名。退出旧应用后,将生成的应用放入“应用程序”文件夹。
当前脚本仅生成 arm64 版本;其他架构需要调整构建目标并在对应设备验证。
常用修改位置
Sources/Views.swift:界面文字、布局与功能入口。Sources/ConsoleModel.swift:刷新间隔与设置操作。Sources/Core.swift:命令行工具路径、参数与输出处理。Sources/DaemonClient.swift:本机服务检测与调用。scripts/build.sh:版本、构建号、名称与 bundle identifier。
修改版请使用不同的名称或版本号。
其他源码文件
Sources/App.swift:菜单栏、窗口与启动行为。Sources/ApplicationMenu.swift:标准菜单和编辑快捷键。Tests/:核心回归和离线模型测试。scripts/:构建、图标、测试与资源测量。README.md:使用方式、接口与验证记录。
修改后检查
- 明确连接本机
/var/run/tailscaled.socket,使用独立参数传值。 - 设置操作应依次执行,确认实际结果后再提示成功;读取失败时禁用操作并标明旧状态。
- 不能同时使用其他出口节点和提供本机出口;只允许选择已获批准且在线的节点。
- 关闭面板不应停止 Tailscale 服务;连接开关的设置应在重启后保留。
先运行离线测试,再检查真实连接、复制 IP、设备筛选、窗口和登录启动。连接测试可能短暂断网;修改出口功能后,需用真实节点确认流量走向。
打包时请排除 /Library/Tailscale/、tailscaled.state 等设备登录数据。