You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

113 lines
3.6 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

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