diff options
author | Julian Flake <flake@uni-koblenz.de> | 2024-03-14 12:26:48 +0100 |
---|---|---|
committer | Hilton Chain <hako@ultrarare.space> | 2024-04-20 09:13:42 +0800 |
commit | d66bfbeeb2a964bdaf8e42595e18b6aad75b4778 (patch) | |
tree | 68798799dfcf4a3a71061337595af8a79c67fac4 /gnu | |
parent | 6c4f3043933db2c9132efc4ea8c5f0e63cddaaa1 (diff) | |
download | guix-d66bfbeeb2a964bdaf8e42595e18b6aad75b4778.tar.gz |
gnu: Add wl-mirror.
* gnu/packages/wm.scm (wl-mirror): New variable. Change-Id: Ib87959a40800a2a8219877611b8cfd301960c608 Modified-by: Hilton Chain <hako@ultrarare.space> Signed-off-by: Hilton Chain <hako@ultrarare.space>
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/wm.scm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index b5e9dca524..2eecc0ed2a 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -1803,6 +1803,52 @@ modules for building a Wayland compositor.") (sha256 (base32 "00s73nhi3sc48l426jdlqwpclg41kx1hv0yk4yxhbzw19gqpfm1h")))))) +(define-public wl-mirror + (package + (name "wl-mirror") + (version "0.16.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Ferdi265/wl-mirror") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jdycr9vf5skbf55kbm2hc3zl3qg58x3bb6xqkf9qx14m4ramcdj")))) + (build-system cmake-build-system) + (arguments + (list #:tests? #f ;No tests. + #:configure-flags + #~(list "-DINSTALL_DOCUMENTATION=ON" + (string-append "-DWL_PROTOCOL_DIR=" + #$(this-package-input "wayland-protocols") + "/share/wayland-protocols") + (string-append "-DWLR_PROTOCOL_DIR=" + #$(this-package-input "wlr-protocols") + "/share/wlr-protocols")))) + (inputs (list egl-wayland mesa wayland wayland-protocols wlr-protocols)) + (native-inputs (list pkg-config scdoc)) + (home-page "https://github.com/Ferdi265/wl-mirror") + (synopsis "Simple Wayland output mirror client") + (description + "This package provides @command{wl-mirror}, a solution to @code{sway}'s +lack of output mirroring by mirroring an output onto a client surface. It has +the following features: + +@itemize +@item Mirror an output onto a resizable window. +@item Mirror an output onto another output by fullscreening the window. +@item React to changes in output scale (including fractional scaling). +@item Preserve aspect ratio. +@item Correct flipped or rotated outputs. +@item Custom flips or rotations. +@item Mirror custom regions of outputs. +@item Receive additional options on stdin for changing the mirrored screen or +region on the fly. +@end itemize") + (license license:gpl3))) + (define-public wmenu (package (name "wmenu") |