|
|
# 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`,请在上游导出时勾选透明度。
|