From: kiasoc5 <[email-masked]>
Date: Mon, 18 Sep 2023 04:08:24 +0200

For some reason git send-email didn't work with this address so I send 
the patches as attachments.

From 7c41cab39fc260dd5467277e60a27d288dad8e99 Mon Sep 17 00:00:00 2001
From: kiasoc5 <[email-masked]>
Date: Fri, 18 Aug 2023 21:11:24 -0400
Subject: [PATCH 1/2] gnu: Add wlr-protocols.

* gnu/packages/freedesktop.scm (wlr-protocols): New variable.
---
 gnu/packages/freedesktop.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 0a1c9bffb3..b81af2c344 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -1250,6 +1250,34 @@ (define-public wayland-protocols
         . "https://wayland.freedesktop.org/releases.html")))
     (license license:expat)))
 
+(define-public wlr-protocols
+  (let ((commit "4264185db3b7e961e7f157e1cc4fd0ab75137568")
+        (revision "0"))
+    (package
+      (name "wlr-protocols")
+      (version (git-version "0.0.0" revision commit)) ;no release tag
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://gitlab.freedesktop.org/wlroots/wlr-protocols.git")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32 "045jj3mbhi7p2qn59krz0vap0wd3i6zgwkvpl97idy702bnk9mv6"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list #:make-flags
+             #~(list (string-append "PREFIX=" #$output))
+             #:phases
+             #~(modify-phases %standard-phases
+                 (delete 'configure))))
+      (native-inputs (list wayland))
+      (home-page "https://gitlab.freedesktop.org/wlroots/wlr-protocols")
+      (synopsis "wlroots protocols")
+      (description "This package contains Wayland protocols designed for
+use in wlroots (and other compositors).")
+      (license license:expat)))) ; license is included in xml files
+
 (define-public wayland-utils
   (package
     (name "wayland-utils")

base-commit: 4818ad5ba204e094fd8995c90c16ee1940e76210
-- 
2.39.2

From 845e76209013521274200facea7fe80f52bf39f0 Mon Sep 17 00:00:00 2001
From: kiasoc5 <[email-masked]>
Date: Fri, 18 Aug 2023 21:13:09 -0400
Subject: [PATCH 2/2] gnu: Add wl-mirror.

* gnu/packages/wm.scm (wl-mirror): New variable.
---
 gnu/packages/wm.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index aaff618248..cd36e44417 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -2076,6 +2076,57 @@ (define-public wdisplays
 wlr-output-management-unstable-v1 protocol.")
     (license license:gpl3+)))
 
+(define-public wl-mirror
+  (package
+    (name "wl-mirror")
+    (version "0.13.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Ferdi265/wl-mirror.git")
+                    (commit (string-append "v" version))
+                    (recursive? #t)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "0gig06g0gcdg9741ij27dwidk9q6kp5x8idn1yh6vmcrh5xm2rvn"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list #:configure-flags
+           #~(list "-DINSTALL_DOCUMENTATION=ON"
+                   "-DFORCE_SYSTEM_WL_PROTOCOLS=ON"
+                   "-DFORCE_SYSTEM_WLR_PROTOCOLS=ON"
+                   (string-append "-DWL_PROTOCOL_DIR="
+                                  (search-input-directory
+                                   %build-inputs "share/wayland-protocols"))
+                   (string-append "-DWLR_PROTOCOL_DIR="
+                                  (search-input-directory
+                                   %build-inputs"share/wlr-protocols")))
+           #:tests? #f)) ; no tests
+    (inputs (list libglvnd wayland wayland-protocols wlr-protocols))
+    (native-inputs (list pkg-config scdoc))
+    (home-page "https://github.com/Ferdi265/wl-mirror")
+    (synopsis "A simple Wayland output mirror client")
+    (description "@command{wl-mirror} mirrors outputs onto client surfaces
+on wlroots compositors. Features include:
+@itemize
+
+@item Mirror an output onto a resizable window
+
+@item Mirror an output onto another output by fullscreening the window
+
+@item Reacts to changes in output scale
+
+@item Preserves aspect ratio
+
+@item Corrects for flipped or rotated outputs
+
+@item Supports custom flips or rotations
+
+@item Supports mirroring custom regions of outputs
+
+@end itemize ")
+    (license license:gpl3)))
+
 (define-public stumpwm
   (package
     (name "stumpwm")
-- 
2.39.2