From 236d9668b13c3e52aec58efa9535b940215344c5 Mon Sep 17 00:00:00 2001 From: Mariano Abad Date: Fri, 24 Jul 2026 08:41:46 -0300 Subject: [PATCH] drm: bump the pinned libdrmtap to v0.4.15 --- .github/workflows/flutter-build.yml | 3 ++- build.py | 4 ++-- libs/scrap/Cargo.toml | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/flutter-build.yml b/.github/workflows/flutter-build.yml index 970928785..6cdb22c9d 100644 --- a/.github/workflows/flutter-build.yml +++ b/.github/workflows/flutter-build.yml @@ -1726,7 +1726,8 @@ jobs: export DRMTAP_REPO="https://github.com/rustdesk-org/libdrmtap" export DRMTAP_REF="main" # Literal (not overridable by an inherited env var) so the ref/commit pair is immutable in CI. - export DRMTAP_SHA="816766dedaba3140c613712ce97aa2614e8899e7" + # libdrmtap v0.4.15. + export DRMTAP_SHA="cbc5e6af5b353b6bc351072a27a5351d82ba66e3" # Guard: accept only an exact vX.Y.Z tag OR the literal `main`, so a random/loose branch # is still rejected; the DRMTAP_SHA check below is the real anchor (it fails the build if # `main` -- or a tag -- resolves to anything other than the pinned immutable commit). diff --git a/build.py b/build.py index b1b3e72c0..96d8e25cb 100755 --- a/build.py +++ b/build.py @@ -349,8 +349,8 @@ LIBDRMTAP_REF = os.environ.get('DRMTAP_REF', 'main') # The immutable commit the ref must resolve to. `git clone --branch` follows a mutable ref (a branch # even more than a tag), so verifying this after clone catches a moved/compromised ref swapping the # .so. Keep in sync with LIBDRMTAP_REF on every bump (override via DRMTAP_SHA together with DRMTAP_REF -# for a local fork). This commit is libdrmtap v0.4.14. -LIBDRMTAP_SHA = os.environ.get('DRMTAP_SHA', '816766dedaba3140c613712ce97aa2614e8899e7') +# for a local fork). This commit is libdrmtap v0.4.15. +LIBDRMTAP_SHA = os.environ.get('DRMTAP_SHA', 'cbc5e6af5b353b6bc351072a27a5351d82ba66e3') def _single_real_so(paths, where): diff --git a/libs/scrap/Cargo.toml b/libs/scrap/Cargo.toml index a7e614b28..a3ee32a85 100644 --- a/libs/scrap/Cargo.toml +++ b/libs/scrap/Cargo.toml @@ -14,7 +14,7 @@ wayland = ["gstreamer", "gstreamer-app", "gstreamer-video", "dbus", "tracing", " # `drm` is a pure runtime-dlopen backend: rustdesk loads `libdrmtap.so.0` at runtime (`drmtap_dl.rs`) # and NEVER link-time links it, so the graceful PipeWire fallback when the .so or EGL is absent is # preserved and the drm build pulls in no libdrm/seccomp/cap/EGL link-time deps. The .so is version -# pinned by build.py's `DRMTAP_SHA` to the libdrmtap v0.4.14 release commit (`DRMTAP_REF` is `main`, +# pinned by build.py's `DRMTAP_SHA` to the libdrmtap v0.4.15 release commit (`DRMTAP_REF` is `main`, # and the exact commit is verified after clone). We deliberately do # NOT depend on the `libdrmtap-sys` crate: its build.rs statically compiles the whole libdrmtap C tree # and a CAP_SYS_ADMIN helper and emits `-ldrm -lseccomp -lcap`, which would defeat the dlopen model.