Files
EzVibeR/docs/usage/02-安装与运行.md
Claude Agent 205c57e9b7 Update: Usage
2026-06-20 14:55:47 +08:00

114 lines
4.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 02 · 安装与运行
## 最快跑起来(开发模式)
> 适合:第一次跑通、边改边看效果、调 UI。
```bash
# 1. 拉代码
cd /path/to/EzVibeR+
# 2. 装前端依赖(首次需要 1-3 分钟)
npm install
# 3. 一键启动Vite dev server + Tauri + Rust 后端全开
npm run tauri:dev
```
第一次 `npm run tauri:dev` 会下载很多 Rust crate依赖 `tokio``axum``rusqlite``image``reqwest``zbus``ashpd` 等),可能 **5-15 分钟**。之后增量编译快很多。
启动成功后你会看到:
- 主窗口(桌宠):透明窗口里出现 Live2D 模型
- 聊天面板:在桌宠窗口右侧
- 系统托盘:右下角多了一个小图标
**没有 Live2D 模型?** 软件启动后**不会自动报错**,只是会显示一个空白区域或者内置的占位资源(取决于 `model_dir` 配置)。第一次使用请先到 [03-首次启动配置.md](03-首次启动配置.md) 设置模型目录。
## 三平台的生产构建
### 一条命令搞定当前平台
```bash
# 完整打包(前端类型检查 + 前端 build + Rust release build + 打包安装包)
npm run tauri build
```
打包产物的位置:
- **Linux**`src-tauri/target/release/bundle/{deb,appimage,rpm}/`
- **macOS**`src-tauri/target/release/bundle/{dmg,app}/`
- **Windows**`src-tauri/target/release/bundle/{msi,nsis}/`
> macOS 默认会同时出 `.dmg` 和 `.app`Windows 默认同时出 `.msi` 和 `.exe`NSISLinux 默认出 `.deb`Debian/Ubuntu和 `.AppImage`(通用)。**具体出什么取决于你的系统**——Tauri 当前是按**当前构建平台**自动选择 targets。
### 各平台分步构建(可选)
```bash
# 1) 只构建前端(产出 dist/
npm run build
# 2) 只构建后端(产出 src-tauri/target/release/live2d
cd src-tauri
cargo build --release
cd ..
# 3) 直接运行编译后的二进制
./src-tauri/target/release/live2d # Linux/macOS
src-tauri\target\release\live2d.exe # Windows
```
> **生产构建出来的二进制**就是「桌宠可执行文件」——直接双击即可运行,不需要再装 Node、npm 之类。
## 跨平台交叉打包(可选,需要较强配置)
| 目标平台 | 需要的额外工具 | 命令 |
|---|---|---|
| macOS (.app / .dmg) | macOS + Xcode CLT | 在 macOS 上 `npm run tauri build` |
| Windows (.msi / .exe) | Windows + MSVC | 在 Windows 上 `npm run tauri build` |
| Linux (.deb / .AppImage) | Linux | 在 Linux 上 `npm run tauri build` |
> 💡 Tauri 不太鼓励跨平台交叉编译(尤其 macOS → Windows / Linux → macOS因为要模拟整个 WebView 栈。**最稳的做法是在目标平台上直接构建**。
## 启动时环境变量
| 变量 | 值 | 作用 |
|---|---|---|
| `EZVIBE_FORCE_WAYLAND` | `1` | 跳过 `GDK_BACKEND=x11` 强制,**用 Wayland 原生** |
| `GDK_BACKEND` | `x11` / `wayland` | 直接指定 GTK 后端(一般不需要手动设) |
| `RUST_BACKTRACE` | `1` / `full` | Rust panic 时打印完整栈 |
| `DISPLAY` | `:0` | X11 显示器Linux/Unix |
举例:在 Wayland 下测试
```bash
EZVIBE_FORCE_WAYLAND=1 npm run tauri:dev
```
## 安装包里有什么
以 Linux 的 `.deb` 为例,安装后:
- 二进制:`/usr/bin/live2d`(或类似的)
- 图标:`/usr/share/icons/.../ezviber+.png`
- Desktop entry`/usr/share/applications/ezviber+.desktop`(用于系统应用菜单)
- 用户配置(运行时生成):`~/.live2D/live2d.conf.json`
- 会话数据(运行时生成):`~/.local/share/com.ezviber.plus/sessions/`
## 卸载
- **Linux (deb)**`sudo apt remove ezviber-plus`(用户数据**默认保留**,需要彻底清掉就再 `rm -rf ~/.local/share/com.ezviber.plus/ ~/.live2D/live2d.conf.json`
- **macOS**:把 `EzVibeR+.app` 拖到废纸篓
- **Windows**:控制面板 → 程序和功能 → EzVibeR+ → 卸载
## 排错速查
| 现象 | 可能原因 | 解决 |
|---|---|---|
| `npm install` 失败 | Node 版本太低 | 升到 18+ |
| `cargo build``webkit2gtk-4.1` 找不到 | 没装对应系统包 | 回到 [01-系统要求与依赖.md](01-系统要求与依赖.md) |
| Linux 启动后桌宠不显示 | 模型目录为空 + 没看到 `main` 窗口 | 看托盘 → "显示桌宠";或检查 `~/.live2D/live2d.conf.json``model_dir` |
| Linux 启动后看不到托盘图标 | 缺 `libappindicator` | 装上 |
| macOS 启动后立即退出 | Gatekeeper 拦截 | 系统设置 → 隐私与安全性 → 仍要打开 |
| 截图失败 "无可用截图方式" | 没装 ImageMagick 且 Portal 不可用 | `sudo apt install imagemagick`LinuxmacOS/Windows 重启应用并授予权限 |
---
下一步:[03-首次启动配置.md](03-首次启动配置.md) — 装完先配模型目录和 LLM。