feat: install the Quest build from the website

A Quest page on the public site (/quest) installs a DorkNet .xapk from
Chrome or Edge over WebUSB, with no adb, SideQuest or scripts: pick the
.xapk, connect the headset, install. It installs the APK, copies the OBB
to its install path (skipped when an identical one is already there) and
launches the app, with progress bars and plain-language errors for an
unsupported browser, a headset held by adb/SideQuest, a disconnect and a
copy signed with a different key.

The .xapk is read from the player's own disk: the APK and OBB are stored
uncompressed, so they stream straight out of the file without loading
1.4 GB into memory, and the server never hosts game files.

Uses Tango (@yume-chan/adb 2.6.4 and friends, MIT), pinned and bundled;
the page is lazy-loaded so the rest of the site doesn't grow. Credited in
NOTICE; README, DorkNet.Quest/README.md, docs/quest.md and the packaged
README.txt point players at the page.
This commit is contained in:
Alexa
2026-10-15 22:34:25 +03:00
parent 6272844445
commit a7879d7ede
12 changed files with 586 additions and 8 deletions
+7 -4
View File
@@ -167,11 +167,14 @@ account. Each hook checks a fingerprint of its target first, so the patch
refuses to apply to any other build.
You supply your own extracted APK and OBB; no game binaries are
redistributed. Build, install and troubleshooting steps are in
[DorkNet.Quest/README.md](DorkNet.Quest/README.md), and the operator view
is in [docs/quest.md](docs/quest.md).
redistributed. The build can package itself as a `.xapk` that players
install from the **Quest** page of your DorkNet site (`https://<apex>/quest`)
in Chrome or Edge over USB, with no adb or SideQuest. Build, install and
troubleshooting steps are in [DorkNet.Quest/README.md](DorkNet.Quest/README.md),
and the operator view is in [docs/quest.md](docs/quest.md).
> The Quest build is new and has not yet been tested on a headset.
> Tested on a Quest 2: the hooks arm, the client reaches the server and the
> browser installer works. Full in-game play has not been verified yet.
### Debugging (opt-in — `DorkNet.DebugMod`)