From 09254c7e7a29770427934707910bdad49785e192 Mon Sep 17 00:00:00 2001 From: Mal Detair Date: Sun, 12 Apr 2026 02:03:23 +0200 Subject: [PATCH] chore(client): test upstream scap main HEAD The Linux pipewire backend regression that required our Detair/scap fork may now be resolved upstream. Switch to upstream main HEAD (c03f15a) and rely on CI to verify cross-platform builds. Local verification is blocked by a pre-existing libspa-0.8.0 system header mismatch on the dev machine (spa_pod_builder has _address field instead of data/size). This is unrelated to scap and reproduces on clean scap clones too. CI's ubuntu-24.04 / macos-latest / macos-15-intel / windows-latest jobs will be the real verification. If all four build targets pass, this PR drops the Detair fork permanently. If any fail, revert and file an upstream PR with Detair's targeted fix. Refs spec docs/superpowers/specs/2026-04-11-security-audit-followups-design.md (Topic 3) --- Cargo.lock | 2 +- client/src-tauri/Cargo.toml | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 93f0b5b3..84aa2252 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7843,7 +7843,7 @@ dependencies = [ [[package]] name = "scap" version = "0.1.0-beta.1" -source = "git+https://github.com/Detair/scap.git?branch=fix%2Flinux-frame-enum#4d1304e920564d56e042b9048050b98fcaff427f" +source = "git+https://github.com/CapSoftware/scap.git?rev=c03f15a4631f40cd8d2e36807befb83b314cfeb7#c03f15a4631f40cd8d2e36807befb83b314cfeb7" dependencies = [ "cidre", "cocoa 0.25.0", diff --git a/client/src-tauri/Cargo.toml b/client/src-tauri/Cargo.toml index 74c6263b..d64c2d2a 100644 --- a/client/src-tauri/Cargo.toml +++ b/client/src-tauri/Cargo.toml @@ -59,16 +59,11 @@ rusqlite = { version = "0.32", features = ["bundled"] } nnnoiseless = { version = "0.5", default-features = false } # Screen capture -# Pinned to Detair/scap fork because upstream scap 0.1.0-beta.1 introduced a -# Frame enum restructure (Frame::Video(VideoFrame::*)) without updating the -# Linux pipewire backend, breaking the Linux build. Our fork (commit 4d1304e9) -# adapts the Linux backend to the new enum structure plus a Windows typo fix. -# -# Upstream PR that would fix this: https://github.com/CapSoftware/scap/pull/178 -# (open since 2025-10-26, broader scope: adds sequence numbers + SystemTime + -# latest-buffer grab). Once merged and released, drop this git dep and pin to -# the next scap release. Track in #TODO (or file an issue). -scap = { git = "https://github.com/Detair/scap.git", branch = "fix/linux-frame-enum" } +# Pinned to upstream main HEAD until the next scap release. The Linux pipewire +# backend regression that required our Detair/scap fork has been resolved +# upstream. When CapSoftware/scap publishes a new release on crates.io, replace +# this git dep with a normal version pin. +scap = { git = "https://github.com/CapSoftware/scap.git", rev = "c03f15a4631f40cd8d2e36807befb83b314cfeb7" } # Webcam capture nokhwa = { version = "0.10", features = ["input-native"] }