summaryrefslogtreecommitdiffstats
path: root/docs/GUI-PLAN.md
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-11-01 21:35:30 +0100
committersalmonik <salmonik@tuta.io>2026-11-01 21:38:36 +0100
commit7830b3c5e89f0339949940b8986bf4849ad7f223 (patch)
treed4ebb4f10583cef1da3b181e093dd5d65ac8a0bb /docs/GUI-PLAN.md
parentv4.2.1: plain-language game copy and a balance fetch on login (diff)
downloadzagan-bet-7830b3c5e89f0339949940b8986bf4849ad7f223.tar.gz
zagan-bet-7830b3c5e89f0339949940b8986bf4849ad7f223.zip
v4.3.0: package the desktop app with verifiable installers
publish.sh builds the GUI with the gui-release profile, names it zagan-bet-gui-<version>-<platform>-<arch>, and renders a bash and a PowerShell installer next to each app. Both embed the app's SHA-256, verify the file (or fetch it), install per-user and add a launcher: a desktop entry plus an SVG icon on Linux, a Start-menu shortcut on Windows. The download page gains a Desktop app section with the apps and installers, keeps the terminal client and server, links the public git repository for the GPL source, and lists every file in the sha256sum block. deploy.sh verifies all four artifact kinds. Publishing refuses a dirty tree so the linked history matches the binaries.
Diffstat (limited to 'docs/GUI-PLAN.md')
-rw-r--r--docs/GUI-PLAN.md31
1 files changed, 21 insertions, 10 deletions
diff --git a/docs/GUI-PLAN.md b/docs/GUI-PLAN.md
index 89cf495..f058e41 100644
--- a/docs/GUI-PLAN.md
+++ b/docs/GUI-PLAN.md
@@ -162,18 +162,29 @@ Measured on Linux at 1080p with llvmpipe software GL:
162**Gate:** the screenshot set is ready for review. Remaining for the gate: 162**Gate:** the screenshot set is ready for review. Remaining for the gate:
163frame rate on integrated graphics and the Windows interactive pass. 163frame rate on integrated graphics and the Windows interactive pass.
164 164
165## Phase 5 — packaging 165## Phase 5 — packaging (code complete, v4.3.0)
166## Phase 5 — packaging 166
167 167- `publish.sh` builds the GUI with the `gui-release` profile for Linux and
168- `publish.sh` emits `zagan-bet-gui-<version>-<platform>-<arch>[.exe]`. 168 Windows and names the app `zagan-bet-gui-<version>-<platform>-<arch>[.exe]`.
169- Bash and PowerShell installers that verify the SHA-256, install to the user 169- It renders a bash installer and a PowerShell installer next to each app.
170 directory, and create `.desktop`/Start-menu entries. 170 Both embed the app's SHA-256, verify the file (or download it), install
171- Download page lists raw binaries and installers; add the source-code link. 171 per-user and add a launcher: `.desktop` plus an SVG icon on Linux, a
172 172 Start-menu shortcut on Windows. Templates live in `scripts/installers/`;
173**Gate:** `deploy.sh` verifies both artifact kinds; a clean machine installs 173 `render-installer.py` fills them in.
174from the page and launches. 174- The download page scans `bin/gui`, `bin/client` and `bin/server`, lists
175 apps, installers, clients and servers, and includes every file in the
176 `sha256sum` block. A Source section links the public git repository
177 (<https://git.2137697.xyz/zagan-bet.git>) for the GPL corresponding source.
178 `deploy.sh` verifies every artifact kind over the public URL.
179- `publish.sh` refuses to run from a dirty tree so the linked history matches
180 the binaries.
181
182**Gate:** deploy verification passes for apps, installers, clients and
183servers; the Linux installer is exercised in a clean HOME. The Windows
184installer needs a Windows machine before the gate closes.
175 185
176## Testing split 186## Testing split
187## Testing split
177 188
178- `View`/`Command` tests in the core: flows, gating, state. Always. 189- `View`/`Command` tests in the core: flows, gating, state. Always.
179- The TUI adapter remains the regression net through Phases 1–2. 190- The TUI adapter remains the regression net through Phases 1–2.