Restyle the Avalonia server host and add a single-file publish workflow (#18)

Give the host a cohesive vault-terminal look: header wordmark with a live
status pill that glows green while running, sectioned configuration card with
per-field labels, a terminal-style server log, richer player rows (id, name,
address, packet counts), and a bold Start/Stop control bar. All existing
bindings are unchanged.

Add publish-host.yml to build self-contained, single-file win-x64 and
linux-x64 binaries on the self-hosted runner and upload them as artifacts,
and document the untrimmed publish commands in the host README.
This commit is contained in:
Nomads_Reach
2026-08-16 18:47:14 -04:00
committed by GitHub
parent 2f6100907f
commit ea275210cd
4 changed files with 437 additions and 82 deletions
+14 -2
View File
@@ -25,7 +25,19 @@ server — a published `CommonwealthOnline.Server` executable, the framework
## Publish
Self-contained, single-file builds that need no .NET runtime on the target.
The host uses reflection-based Avalonia bindings, so publish **untrimmed**.
```
dotnet publish host/CommonwealthOnline.Host.csproj -c Release -r win-x64 --self-contained false
dotnet publish host/CommonwealthOnline.Host.csproj -c Release -r linux-x64 --self-contained false
dotnet publish host/CommonwealthOnline.Host.csproj -c Release -r win-x64 \
--self-contained true -p:PublishSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true -o out/win-x64
dotnet publish host/CommonwealthOnline.Host.csproj -c Release -r linux-x64 \
--self-contained true -p:PublishSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true -o out/linux-x64
```
CI builds both runtimes and uploads them as artifacts — run the
**Publish Host (Avalonia)** workflow (`.github/workflows/publish-host.yml`)
manually, or push a `host-v*` tag.