Register the manifest when Steam already lists the app key
Steam writes every VR app the user owns into its generated steamapps.vrmanifest, installed or not. Whoever owns OVRAS on Steam therefore always has steam.overlay.1009850 registered, as a steam:// URL without a working directory, and --force-install-manifest failed with "Could not find working directory of already installed application: VRApplicationError_PropertyNotSet" (found on the Steam Frame). Such an entry has no manifest file to remove, so OVRAS now leaves it alone and adds its own manifest. Whether SteamVR accepts a second manifest for the key, and which entry it then uses, is not documented: logApplicationEntry() logs what SteamVR reports for the key after installing, so a test on the Frame shows it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -214,6 +214,26 @@
|
||||
1.6 MB (was 3.0 MB, the old library was 5.4 MB).
|
||||
- **Not tested yet:** on the Frame (T1).
|
||||
|
||||
### Finding: app key already registered by Steam (2026-10-07)
|
||||
|
||||
- **Third try of T1** (by hand on the Frame, with the two fixes above): `VR_Init` works, as
|
||||
`Utility` (vrserver.txt: "New Connect message … (VRApplication_Utility)"; SteamVR did
|
||||
**not** refuse Utility this time, unlike with the template). Then: "Manifest Previously
|
||||
Installed", "Could not find working directory of already installed application:
|
||||
VRApplicationError_PropertyNotSet".
|
||||
- **Cause:** Steam's generated `steamapps.vrmanifest` lists every owned VR app, including
|
||||
OVRAS (`steam.overlay.1009850`, launch via `steam://` URL), although the Steam version is
|
||||
uninstalled. Not a leftover of the uninstallation; it can't be removed permanently.
|
||||
- **Next:** design DESIGN.md section 2a (approved 2026-10-07).
|
||||
- **Implementation (`setup.cpp`, `setup.h`):** as designed: key without working directory →
|
||||
nothing removed, `AddApplicationManifest` directly (error name on refusal);
|
||||
`logApplicationEntry()` after "Manifest reinstalled." logs source, launch type, working
|
||||
directory, binary, URL and auto-launch for the key.
|
||||
- **Result:** cross build and package succeed, `Qt_6_PRIVATE_API` without `QVulkan*`: 0.
|
||||
- **Not tested yet:** on the Frame. The log decides: `AppKeyAlreadyExists` or Steam's entry
|
||||
(`steam://` URL) → own app key needed (option 2); our working directory and binary →
|
||||
enough.
|
||||
|
||||
### Test checklist on the Frame (step 5)
|
||||
|
||||
Deploy: `build_scripts/steamframe/deploy-to-frame.sh <user>@<frame>` (SteamVR running).
|
||||
|
||||
Reference in New Issue
Block a user