This is a nightly release of Vibeshine and contains several bug fixes and may contain new features. Check the commit log for more information.
Windows installer · Linux (Arch x86_64)
Nightly Windows installers are unsigned and include self-signed gamepad components. They may cause false-positive antivirus alerts.
Source: 4b5d3bc63028
Since the preceding successfully published nightly Commit log
2.0.2-nightly.d20261026.560cc9e2d556: compare exact sources.
fix(security): harden privileged Windows boundaries
Enforce Web access policy, bound authentication and request buffering, and redact credential-bearing logs. Authenticate display-helper IPC peers and harden installer, state, service-log, and RTSS paths against user-controlled replacement.
Co-authored-by: Codex <noreply@openai.com>
fix(windows): close display-helper squatting paths
Preclaim private IPC endpoints in the privileged host, pass only a restricted inherited handle to the selected helper, and retire stale sessions atomically during endpoint rotation.
Persist SYSTEM display state through a protected registry locator and atomically elected randomized ProgramData directory so hostile legacy paths cannot redirect or block recovery.
Co-authored-by: Codex <noreply@openai.com>
fix(video): avoid capture materialization for exact adapter cache lookups
Preserve the exact tested tree from local candidate c1c71d0a753c1756ffb516d67fbe897d3f69fe08. Published through the GitHub connector because shell push credentials are unavailable.
Based on the residual polling behavior reported in Nonary/vibeshine#326 after the separate lifetime correction in #331. Keep existing source and test provenance; this adds an identity-only cache-key path and a production-body behavioral regression.
fix(playnite): retire alternate connectors and bound pipe retries
fix: remove stale remote display layout on unpair
fix(steam): use content-hashed portraits for newer apps
Port Vibepollo #555 while retaining Vibeshine's Windows user-token handling and test paths.
Source-PR: https://github.com/Nonary/Vibepollo/pull/555
Source-commits: 26b1fa3a1c8e919c3e6d8a2e2da0e44660f5a453 e8e6f69da3eaf00993c5672149d5fde621716401
(cherry picked from commit f00782887f0065efe6d95170bb15b491e8d4fd4f)
Co-authored-by: harryankers <harry@beyondmath.com>
fix(playnite): retain failed connector migration state
fix: retain primary preference after anchor removal
Merge canary into Playnite connector fix
fix(steam): scope portrait cache and bound missing-asset retry
Scope cached portraits and failure markers to the validated content hash and asset name. Retry the hashed URL only for an HTTP 404, not after a transport or other HTTP failure.
fix(playnite): preserve safe migration retry decisions
fix: retain detached primary for extended streams
Merge pull request #370 from Nonary/migration/pollo-555
fix(steam): find content-hashed portraits for newer apps
Merge pull request #369 from Nonary/fix/issue-678-layout-cleanup
fix: remove stale display layout on client unpair
Merge pull request #368 from Nonary/dot/fix-677-playnite-connector
fix(playnite): retire alternate connectors and bound pipe retries
Merge pull request #366 from Nonary/dot/fix-326-idle-polling
fix(video): avoid capture probes during exact-adapter capability cache lookups
fix(display): Show legacy display overrides on Linux
Expose mode remapping in the legacy Linux interface so users can configure display overrides, while retaining Windows-only setup controls. Cover editing and removing overrides on both platforms.
Co-authored-by: Codex <noreply@openai.com>
refactor(dualsense): Remove per-app haptics opt-in
Select composite DualSense audio through the controller profile so applications no longer need a separate haptics setting. Remove the launch readiness wait and ignore older per-app settings.
Co-authored-by: Codex <noreply@openai.com>
docs(security): Add private reporting policy
Direct potentially exploitable findings to private reporting and clarify the Windows command launch and elevation boundary to help reporters assess security impact.
Co-authored-by: Codex <noreply@openai.com>
merge(canary): Integrate remote changes with local fixes
Bring current Canary changes together with the Windows security, DualSense, display and reporting updates. Preserve controller speaker coverage while removing the retired per-app haptics scope.
Co-authored-by: Codex <noreply@openai.com>
fix(display): Safely inspect virtual display catalogs
Inspect the bound producer or an unambiguous temporary connection without reconfiguring permanent displays or changing driver readiness. Allow an application virtual display choice to override its own Verify Only setting and explain that behavior in the editor.
Co-authored-by: Codex <noreply@openai.com>
test(input): match DualSense selector stub signature
fix(windows): repair RTSS trust call site types
Merge pull request #372 from Nonary/dot/fix-vhf-fallback-test
test(input): match DualSense selector stub signature
Merge pull request #373 from Nonary/dot/fix-rtss-windows-build
fix(windows): repair RTSS trust call site types
fix(installer): validate inventory base64 without locale casing
fix(installer): validate retained inventory without locale casing
Merge pull request #378 from Nonary/fix/issue-685-display-inventory-culture
fix(installer): validate inventory Base64 without locale casing
fix(display): Pin the matching Windows driver release
Ship the producer-built v1.6.5 display driver for the exact checked-in libvirtualdisplay revision. Verify the release identity and payload, and reject Windows builds when the package source and submodule diverge.
Co-authored-by: Codex <noreply@openai.com>
test(display): Align release checks with the pinned driver
Update the packaging assertions to match the reviewed v1.6.5 lock so the
release identity checks validate the driver actually used by the build.
Co-authored-by: Codex <noreply@openai.com>
feat(apps): Allow system apps to be removed and restored
Make Desktop, Remote Monitor, and Remote Input manageable in both app
interfaces while retaining their settings and artwork for restoration.
Hide removed launch tiles and preserve reconnect access for current owners.
Co-authored-by: Codex <noreply@openai.com>
fix(stream): Hand off Linux launches after app shutdown
Allow a waiting launch or resume to start after cancellation while
removing requests when the client disconnects or the wait expires.
Keep HTTPS responsive by bounding TLS shutdown and framing busy replies.
Co-authored-by: Codex <noreply@openai.com>
chore(canary): Integrate the Linux app handoff
Combine the app handoff fix with the latest canary changes while
preserving both histories and the existing work in the main checkout.
Co-authored-by: Codex <noreply@openai.com>
fix(remote): Keep cached game tiles launchable
A secondary client can retain a prioritized game tile after the app
list returns to normal, leaving its synthetic ID unresolved.
Remember the advertised target per client and route stale tiles through
normal launch checks while rejecting missing or ambiguous identities.
Co-authored-by: Codex <noreply@openai.com>
fix(tests): link handoff TLS test to Boost property tree