diff options
Diffstat (limited to 'gnu/packages/freedesktop.scm')
-rw-r--r-- | gnu/packages/freedesktop.scm | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 215e9727e2..dcd1870e41 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -2387,18 +2387,37 @@ interfaces.") (file-name (git-file-name name version)) (sha256 (base32 - "1ipg35gv8ja39ijwbyi96qlyq2y1fjdggl40s38rv68bsya8zry1")))) + "1ipg35gv8ja39ijwbyi96qlyq2y1fjdggl40s38rv68bsya8zry1")) + (patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Dsystemd=disabled" - "-Dsd-bus-provider=libelogind"))) + "-Dsd-bus-provider=libelogind") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'hardcode-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let ((sh (search-input-file inputs "/bin/sh")) + (grim (search-input-file inputs "/bin/grim")) + (slurp (search-input-file inputs "/bin/slurp"))) + (substitute* "src/screenshot/screenshot.c" + (("grim") grim) + (("slurp") slurp) + (("execl\\(\"/bin/sh\", \"/bin/sh\"") + (string-append "execl(\"" sh "\", \"" sh "\""))) + (substitute* "src/screencast/screencast.c" + (("execvp\\(\"sh") + (string-append "execvp(\"" sh))))))))) (native-inputs (list cmake pkg-config)) (inputs (list elogind + bash-minimal + grim iniparser libinih pipewire-0.3 + slurp wayland wayland-protocols)) (home-page "https://github.com/emersion/xdg-desktop-portal-wlr") |