Files
zhila/app/README.md
T

53 lines
1.8 KiB
Markdown

# ZHILA · Tauri shell
This is the desktop shell for the ZHILA surface. It is **built and verified** on Fedora (WebKitGTK 2.54.2, GTK 3.24.52, dbus 1.16.2, Tauri 2.12.5 / CLI 2.12.4). The binary is `src-tauri/target/release/zhila-app`.
The shell expects the Vite surface at `http://127.0.0.1:5173` (the `devUrl` in `src-tauri/tauri.conf.json`) and the Rust daemon at `ws://127.0.0.1:4317`. The P0 window does not embed the engine yet.
## Install the system packages (Fedora)
```bash
sudo dnf install dbus-devel webkit2gtk4.1-devel gtk3-devel libappindicator-gtk3-devel \
librsvg2-devel openssl-devel libsoup3-devel javascriptcoregtk4.1-devel pkgconf-pkg-config
```
## Run
```bash
# terminal 1
cd ..
cargo run -p zhila-daemon -- --port 4317
# terminal 2
cd ..
npm --prefix ui run dev
# terminal 3
npm --prefix app install
npm --prefix app run tauri dev
```
## Build
```bash
npm --prefix ui run build
npm --prefix app run tauri build -- --bundles deb
```
The bundle targets are `deb` and `appimage`. The icon at `src-tauri/icons/icon.png` is a P0 placeholder.
## Self-contained app
The app now starts the ZHILA host (engine, session, SQLite project, assets, loopback wire) inside its own process. The built window does not need the daemon.
```bash
npm --prefix ui run build
cd app
./node_modules/.bin/tauri build --no-bundle
./src-tauri/target/release/zhila-app
```
The host binds `127.0.0.1:4317` with the development token `dev` and loads `~/.local/share/zhila/descent-04`. For browser development run the standalone daemon instead; both cannot own the port at the same time.
`cargo check --manifest-path app/src-tauri/Cargo.toml` and the release build pass. The earlier `dbus-1`/`webkit2gtk`/`gtk` pkg-config failure is historical; those packages are installed. The window screenshot is `preview-tauri.png` at the repository root.