[bug#76910,2/4] gnu: Add hyprscroller.
Commit Message
* gnu/packages/wm.scm (hyprscroller): New variable.
Change-Id: I56c9984c7ce013f0ce4b22ec1f5df778fe17f736
---
gnu/packages/wm.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
@@ -518,6 +518,55 @@ (define-public hyprwinwrap
(define-public xtra-dispatchers
(hyprland-plugin "xtra-dispatchers" "extra dispatchers"))
+(define-public hyprscroller
+ (package
+ (name "hyprscroller")
+ ;; Upstream has no tags, but we can use the commits which add support for
+ ;; the corresponding Hyprland version (see ./hyprscoller.toml).
+ (version "0.47.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dawsers/hyprscroller")
+ (commit "e87f2caeced2d36a304620a082b36245d06f9218")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0aay8d0ldmd3441w4x156z4npfzlk7zkvq1fbbbm414p995jqj51"))))
+ (build-system cmake-build-system)
+ (native-inputs (list gcc-14 pkg-config))
+ (inputs (list aquamarine
+ hyprgraphics
+ hyprlang
+ hyprutils
+ libdrm
+ libinput
+ libxkbcommon
+ mesa
+ pango
+ pixman
+ wayland
+ hyprland))
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'check)
+ (replace 'install
+ (lambda* _
+ (install-file "hyprscroller.so"
+ (string-append #$output "/lib")))))))
+ (home-page "https://github.com/dawsers/hyprscroller")
+ (synopsis "Hyprland plugin for a PaperWM-like scrolling layout")
+ (description
+ "Hyprscroller is a Hyprland layout plugin that creates a window layout
+similar to PaperWM. The plugin supports gaps, borders, decorations,
+special workspace, full screen modes, overview, marks, pinned columns,
+touchpad gestures, copying/pasting windows, trails/trailmarks, quick
+jump mode, and installation through hyprpm.")
+ (license license:expat)))
+
(define-public i3status
(package
(name "i3status")