Subject: [PATCH 0/7] Improve screen sharing support under Wayland

From: Josselin Poiret <[email-masked]>
Date: Tue, 14 Dec 2021 22:45:02 +0100

Hello,

This patchset updates and improves various packages related to screen
sharing/screeshotting on Wayland, and especially wlroots-based
compositors.

I can get screensharing working in icecat on sway by manually starting
pipewire then wireplumber (and then xdg-desktop-portal-wlr followed by
xdg-desktop-portal if they're not installed in your profile, otherwise
your user DBus session will launch them automatically), and starting
icecat with

`LD_LIBRARY_PATH="$(./pre-inst-env guix build
pipewire)/lib:$LD_LIBRARY_PATH" icecat`

since the pipewire library is dlopened by libwebrtc rather than
statically or dynamically linked.  We could possibly add this to the
icecat package, as it has a wrapper doing a similar thing for other
libraries.

Another way to test screensharing without icecat would be to use this
python script [1], using `guix shell python python-pygobject
gst-plugins-bad pipewire python-dbus -- python3 xdp-screen-cast.py`.

I also took the liberty to patch xdg-desktop-portal-wlr's
screenshotting process, as it simply execl'd to slurp and grim.  Along
with an update to flameshot, I can use the latter properly on sway as
well.

Best,
Josselin

[1] https://gitlab.gnome.org/-/snippets/19

Josselin Poiret (7):
  gnu: pipewire-0.3: Use new input style
  gnu: pipewire-0.3: Update to 0.3.41
  gnu: Add wireplumber
  gnu: xdg-desktop-portal-wlr: Update to 0.5.0
  gnu: xdg-desktop-portal-wlr: Use new input style
  gnu: xdg-desktop-portal-wlr: Add binary dependencies
  gnu: flameshot: Update to 0.10.2

 gnu/local.mk                                  |  1 +
 gnu/packages/freedesktop.scm                  | 38 ++++++++++----
 gnu/packages/image.scm                        |  4 +-
 gnu/packages/linux.scm                        | 52 +++++++++++++++----
 ...g-desktop-portal-wlr-harcoded-length.patch | 28 ++++++++++
 5 files changed, 100 insertions(+), 23 deletions(-)
 create mode 100644 gnu/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch

-- 
2.34.0