[bug#76910,v2,4/4] gnu: Add hypr-darkwindow.

Message ID 2e4851ed811c0e4d78c543905ea7890060fe5bd4.1743237168.git.wongandj@icloud.com
State New
Headers
Series Add Hyprland Plugins (Update) |

Commit Message

Andrew Wong March 29, 2025, 8:32 a.m. UTC
  * gnu/packages/wm.scm (hypr-darkwindow): New variable.

Change-Id: Ide445c85047e17b5817580bde896a6c303e6a4cd
---
 gnu/packages/wm.scm | 46 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)
  

Comments

Gabriel Santos March 29, 2025, 1:51 p.m. UTC | #1
I noticed that the Flake for this plugin and for
hypr-dynamic-cursors prefix the compiled file with
"lib"[1, 2].

Do you know why that is? Would it also be necessary
for Guix?

[1] <https://github.com/micha4w/Hypr-DarkWindow/blob/fdc621bc6e3c00f6253a9f2ae8b565d684d78098/flake.nix#L36>
[2] <https://github.com/VirtCode/hypr-dynamic-cursors/blob/e2c32d8108960b6eaf96918485503e90a016de4b/flake.nix#L43>
  

Patch

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 6a96f01356..63cfa11ca5 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -609,6 +609,52 @@  (define-public hy3
 autotiling.")
     (license license:gpl3)))
 
+(define-public hypr-darkwindow
+  (package
+    (name "hypr-darkwindow")
+    (version "0.47.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/micha4w/Hypr-DarkWindow")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0g7zmzwa9w98wwygzl3wxgc6adh6h5ixrm3b8biimby2z5vwc2fz"))))
+    (build-system gnu-build-system)
+    (native-inputs (list gcc-14 pkg-config))
+    (inputs (list aquamarine
+                  eudev
+                  hyprgraphics
+                  hyprlang
+                  hyprutils
+                  libdrm
+                  libinput
+                  libxkbcommon
+                  mesa
+                  pango
+                  pixman
+                  wayland
+                  hyprland))
+    (arguments
+     (list
+      #:tests? #f
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure)
+          (replace 'install
+            (lambda* _
+              (install-file "out/hypr-darkwindow.so"
+                            (string-append #$output "/lib")))))))
+    (home-page "https://github.com/micha4w/Hypr-DarkWindow")
+    (synopsis "Hyprland plugin that provides window color inversion")
+    (description
+     "This plugin adds the dispatchers @code{invertwindow WINDOW}
+and @code{invertactivewindow}, which invert the colors of the indicated
+window.")
+    (license license:expat)))
+
 (define-public i3status
   (package
     (name "i3status")