refactor(windows-host): delete the SudoVDA backend — pf-vdisplay is the sole vdisplay (Goal 2)
Goal 2 ("drop every trace of SudoVDA") is done. The SudoVDA driver is no longer
shipped (only pf-vdisplay; the old vdisplay-driver tree was deleted in a2bd0cd),
and F1 (d638a93/e60cda3) already moved the display-utility helpers out of the
backend into neutral modules (win_adapter/win_display), breaking the reach-in.
So the backend is now cleanly removable:
- Deleted crates/punktfunk-host/src/vdisplay/windows/sudovda.rs (350 lines: the
SudoVdaDisplay VirtualDisplay impl + its VdisplayDriver/probe).
- vdisplay::open()/probe() are now unconditional pf-vdisplay; deleted the
windows_use_pf_vdisplay() backend selector. open() now ensure!s
pf_vdisplay::is_available() with a clear "driver not installed" error instead
of the old silent SudoVDA fallback (no fallback driver exists anymore).
- Scrubbed the dangling references to the deleted symbols (manager/sendinput/dxgi
comments, the config + host.env PUNKTFUNK_VDISPLAY docs); the var stays as an
informational forward-seam. Updated the F1 module docs (Goal 2 now done).
All changes are #[cfg(windows)] except the config doc; Linux clippy
-p punktfunk-host -D warnings clean; zero `sudovda::`/`SudoVdaDisplay` code refs
remain (comments only). Windows build is CI-gated.
Scorecard Goal 2 -> DONE; recorded the E1 "do NOT do it" stability decision in
windows-host-rewrite.md §4 (the process-global driver design is sound given
ProcessSharingDisabled; a device-owned variant adds a use-after-free window for
no gain).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -19,8 +19,8 @@ PUNKTFUNK_ENCODER=auto
|
||||
# refresh — the flagship mode. Requires the bundled pf-vdisplay indirect display driver installed.
|
||||
PUNKTFUNK_VIDEO_SOURCE=virtual
|
||||
|
||||
# Virtual-display backend: `pf` = the all-Rust pf-vdisplay IddCx driver the installer bundles (the
|
||||
# shipped driver; leave as the default). `sudovda` selects the legacy backend if one is present.
|
||||
# Virtual-display backend: the all-Rust pf-vdisplay IddCx driver the installer bundles is the only
|
||||
# backend now (the legacy SudoVDA backend was removed). This is informational; leave it as `pf`.
|
||||
PUNKTFUNK_VDISPLAY=pf
|
||||
|
||||
# Capture straight from the pf-vdisplay driver's shared ring — the validated zero-copy path (incl. the
|
||||
|
||||
Reference in New Issue
Block a user