Add user-local desktop launcher and record Frame menu test

This commit is contained in:
baketnk committed 2026-09-24 12:11:43 -04:00
1 parent 26113906f0
commit 417f81cb09
6 files changed
+122 -2

No files matched your search

+41 -1
View File
@@ -89,7 +89,11 @@ input backend; default is `GAMESCOPE_WAYLAND_DISPLAY`, then `gamescope-0`.
## Lifecycle
Install root: `$XDG_DATA_HOME/frameyap` (default `~/.local/share/frameyap`);
launcher: `~/.local/bin/frameyap`; existing config is untouched. The launcher
launcher: `~/.local/bin/frameyap`; desktop entry:
`$XDG_DATA_HOME/applications/frameyap.desktop` (default
`~/.local/share/applications/frameyap.desktop`). The desktop entry points to the
user-local launcher; the installer never edits Steam's library or registers a
Steam shortcut. Existing config is untouched. The launcher
passes a stable install-root lock identity and sets `PYTHONDONTWRITEBYTECODE=1`.
Runtime/check/registration modes and installer share an exclusive nonblocking
`.lock`; no upgrade/rollback/uninstall kills a running app or any other process.
@@ -113,6 +117,42 @@ Registration checks actual OpenVR installed state rather than trusting Add's ret
alone. Repeated registration/removal were exercised on Frame, autolaunch off.
Actual menu launch and cold-runtime behavior remain separate acceptance checks.
## SteamVR dashboard launcher check (opt-in on Frame)
Registration creates an **OpenVR app entry**, not a Steam store/library shortcut.
On one Frame, registration succeeded with autolaunch off but **no FrameYap entry
was visible in the first checked dashboard menu**. The user then found FrameYap
under Steam's **Non-Steam** section and reported that selecting it opened the
panel and Quit closed it. The VR server logged a `--run` overlay connection and
exit; no owned process remained. This establishes a basic menu-driven launch on
that device, **not** that OpenVR registration alone creates a Steam shortcut or
that the new desktop entry was the sole discovery path. The manifest points to
`~/.local/bin/frameyap`, which starts `--run` if launched. A native-only install
without a model or authorized runtime should show an **Unavailable** overlay
rather than record or run inference. Only perform this check on that native-only
installation: verify that `current/runtime/bin/python3` and `current/model` are
absent first, and do not press Record, Insert or Enter.
The installer also provides a desktop entry; where Steam's UI supports adding a
non-Steam app, the user may select that entry or browse to the installed launcher.
Shortcut discovery/persistence after a normal restart is not yet verified. Do
not hand-edit Steam's shortcut database.
1. With SteamVR running, register using the command above (do not pass
`--autostart`). Leave any other apps and sessions alone.
2. In the headset, check Steam's **Non-Steam** section or the **+** application
picker for FrameYap. If absent, stop and report the menu checked; registration
alone does not add a Steam library shortcut. If present, select it, check the
FrameYap panel's status, and use **Quit** to close.
3. Report separately whether the menu entry was visible, the click started an
app, the panel was visible, and Quit worked. A registration success or CLI
`--check-overlay` success alone does **not** establish menu-driven launch.
This check does not validate microphone capture, transcription, controller input,
text delivery or cold SteamVR startup. With a configured inference runtime, the
menu launch attempts to load the model; defer that test until runtime licensing is
resolved. If an environment/configuration unexpectedly supplies a runtime/model,
do not perform this check.
Before uninstall, explicitly `frameyap --unregister /absolute/manifest/path` and
verify success, then run `sh install.sh --uninstall --unregistered`. The latter is
an acknowledgement, not a hidden SteamVR edit. Only owned files are removed;