Prepare v0.0.2 pre-release
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
# Development and build notes
|
||||
|
||||
## Local development
|
||||
|
||||
Mudmouth requires Rust stable. On NixOS, the included shell also provides the
|
||||
ALSA development metadata used by the Linux audio backend:
|
||||
|
||||
```bash
|
||||
nix-shell
|
||||
```
|
||||
|
||||
Run the normal validation suite before submitting a change:
|
||||
|
||||
```bash
|
||||
cargo fmt --check
|
||||
cargo clippy --all-targets -- -D warnings
|
||||
cargo test
|
||||
cargo build --release
|
||||
```
|
||||
|
||||
The parser tests cover the observed log formats, including NPC dialogue,
|
||||
channel-chat exclusion, zone events, normalization, persistent/random speaker
|
||||
voice policies, log truncation, and first-run log discovery.
|
||||
|
||||
## Running locally
|
||||
|
||||
Start the local Kokoro FastAPI service when necessary, then pass an EverQuest
|
||||
log directly:
|
||||
|
||||
```bash
|
||||
doas systemctl start podman-kokoro-fastapi.service
|
||||
cargo run --release -- --log "$HOME/Games/EverQuestLegends/Logs/eqlog_Pleb_oggok.txt"
|
||||
```
|
||||
|
||||
Starting without a log path opens first-time setup. Mudmouth scans common Steam
|
||||
and Daybreak install folders for `eqlog_*.txt` files and lets you choose a
|
||||
character; if it finds none, enter the EverQuest game directory. Use `[r]` to
|
||||
rescan after enabling `/log on` in EverQuest. You can also change the log path
|
||||
and Kokoro endpoint from **Settings**:
|
||||
|
||||
```bash
|
||||
cargo run --release
|
||||
cargo run --release -- --kokoro-url http://127.0.0.1:8880
|
||||
```
|
||||
|
||||
## Release builds
|
||||
|
||||
Build Linux and Windows from an x86_64 Linux builder with `release.nix`. Build
|
||||
macOS on a native x86_64 macOS runner, where Apple's SDK is available. The CI
|
||||
workflow performs these native builds on every push and retains their binaries
|
||||
as build artifacts. Package the three binaries with:
|
||||
|
||||
```bash
|
||||
nix-build release.nix -A linux -o result-linux
|
||||
nix-build release.nix -A windows -o result-windows
|
||||
# On x86_64 macOS:
|
||||
nix-build release.nix -A macos -o result-macos
|
||||
./scripts/package-release.sh \
|
||||
--linux result-linux/bin/mudmouth \
|
||||
--macos result-macos/bin/mudmouth \
|
||||
--windows result-windows/bin/mudmouth.exe
|
||||
```
|
||||
|
||||
The packager writes platform-qualified archives and `SHA256SUMS.txt` to
|
||||
`dist/`. `scripts/publish-release.sh` uploads those exact assets as a Gitea
|
||||
pre-release after the worktree is committed and clean.
|
||||
Binary file not shown.
Reference in New Issue
Block a user