[PATCH 0/2] Add wl-mirror.

  • Open
  • quality assurance status badge
Details
One participant
  • kiasoc5
Owner
unassigned
Submitted by
kiasoc5
Severity
normal
K
K
kiasoc5 wrote on 3 Sep 01:20 +0200
(address . guix-patches@gnu.org)(name . kiasoc5)(address . kiasoc5@disroot.org)
20230902232057.48289-1-kiasoc5@disroot.org
Requires wlr-protocols, which doesn't have a release, so use the latest tag.

Helps wlroots compositors (eg Sway) work around sharing windows of applications.

kiasoc5 (2):
gnu: Add wlr-protocols.
gnu: Add wl-mirror.

gnu/packages/freedesktop.scm | 28 ++++++++++++++++++++
gnu/packages/wm.scm | 51 ++++++++++++++++++++++++++++++++++++
2 files changed, 79 insertions(+)


base-commit: 4818ad5ba204e094fd8995c90c16ee1940e76210
--
2.39.2
K
K
kiasoc5 wrote on 18 Sep 04:08 +0200
(no subject)
(address . 65711@debbugs.gnu.org)
65f6ea07016433c4e9fcf65d1b16379c@disroot.org
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 <kiasoc5@disroot.org>
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(+)

Toggle diff (43 lines)
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 <kiasoc5@disroot.org>
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(+)

Toggle diff (64 lines)
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
?