# TauriClient 打包与目录说明 ## 1. 打包命令流程 推荐使用双容器模式(默认)同时产出 `amd64` 和 `arm64`: ```bash cd /path/to/TauriClient chmod +x ./scripts/docker/run-build.sh ./scripts/docker/run-build.sh ``` 只打指定项目: ```bash ./scripts/docker/run-build.sh call-client ./scripts/docker/run-build.sh broadcast-client ``` 可选模式: - 默认(双容器):`./scripts/docker/run-build.sh` - 容器 #1 构建 `amd64` - 容器 #2 构建 `arm64` - 混合模式:`./scripts/docker/run-build.sh --hybrid` - 宿主机构建 `amd64` - 容器构建 `arm64` ## 2. 打包产物位置 统一产物目录: - `dist/linux-deb/call-client/amd64/*.deb` - `dist/linux-deb/call-client/arm64/*.deb` - `dist/linux-deb/broadcast-client/amd64/*.deb` - `dist/linux-deb/broadcast-client/arm64/*.deb` Tauri 原始输出目录: - `call-client/src-tauri/target/x86_64-unknown-linux-gnu/release/bundle/deb/` - `call-client/src-tauri/target/aarch64-unknown-linux-gnu/release/bundle/deb/` - `broadcast-client/src-tauri/target/x86_64-unknown-linux-gnu/release/bundle/deb/` - `broadcast-client/src-tauri/target/aarch64-unknown-linux-gnu/release/bundle/deb/` ## 3. 配置文件目录与日志目录 ### 3.1 call-client 配置文件(运行时): - Linux: `~/.config/call-client/config.json` - Windows: `%APPDATA%/call-client/config.json` 日志输出(运行时): - Linux: `~/.local/state/call-client/app.log` - Windows: `%LOCALAPPDATA%/call-client/state/app.log` ### 3.2 broadcast-client 配置存储(运行时): - 当前使用浏览器存储(`localStorage`),无独立磁盘配置文件 - 关键键名: - `runtime_broadcast_config` - `broadcast_config_local_fallback` 日志输出(运行时,socket 服务): - Linux: `~/.config/broadcast-client/socket-service-*.log` - Windows: `%APPDATA%/broadcast-client/socket-service-*.log` ### 3.3 两个项目仓库内 Tauri 配置文件 - `call-client/src-tauri/tauri.conf.json` - `broadcast-client/src-tauri/tauri.conf.json` ## 4. 应用图标(bundle) ### 推荐:`tauri icon`(`@tauri-apps/cli` 内置,社区常用) Tauri 官方 CLI 提供 **`tauri icon`**:用**一张**高质量源图生成各平台所需尺寸(`32x32.png`、`128x128.png`、`icon.ico` 等)。部分环境下 **`tauri.conf.json` 的 `bundle.icon` 不会自动改写**,若发现未更新,请确认其中包含上述生成文件(本仓库已按生成结果维护默认列表)。 **源图要求:** 正方形 **PNG**,建议 **1024×1024**,**RGBA**(带透明)。可先用 Photoshop / Figma 导出一张再执行下面命令。 在各子项目根目录执行: ```bash # call-client(默认源图:src-tauri/icons/call_icon.png) cd call-client npm run icons:generate ``` ```bash # broadcast-client(默认源图:src-tauri/icons/bc_icon.png) cd broadcast-client npm run icons:generate ``` 等价命令: ```bash npm run tauri -- icon ./src-tauri/icons/call_icon.png # 或 broadcast-client 下对 bc_icon.png ``` 生成结果会写入各项目 `src-tauri/icons/`。若 **`bundle.icon` 未自动更新**,请对照目录里新生成的 `32x32.png`、`128x128.png`、`128x128@2x.png`、`icon.icns`、`icon.ico`、`icon.png` 检查配置。换源图路径可改对应 `package.json` 里的 **`icons:generate`** 脚本。 ### 说明 - 这里使用的是 **`@tauri-apps/cli` 自带的 `icon` 子命令**,无需再装名为 `tauri-icon` 的独立包;若文档里写作「tauri-icon 工具」,一般即指该命令。 - 源图若不是 RGBA,构建阶段仍可能报 `icon ... is not RGBA`,请在上游导出时勾选透明度。