Subject: [bug#75035] [PATCH] gnu: spectrwm: Update to 3.6.0.

From: Wiktor Żelazny <[email-masked]>
Date: Sun, 22 Dec 2024 22:01:13 +0100

* gnu/packages/wm.scm (spectrwm): Update to 3.6.0.
[arguments]: Update make-flags.
[inputs]: Add libxcb.
[native-inputs]: Add libbsd.

Change-Id: Ib7912c43b9e80be2a24cae46d44e039e5b84e6df
---
 gnu/packages/wm.scm | 73 +++++++++++++++++++++++----------------------
 1 file changed, 38 insertions(+), 35 deletions(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 580b33f4be..f2c80c04b5 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -146,6 +146,7 @@ (define-module (gnu packages wm)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages libbsd)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
@@ -1568,7 +1569,7 @@ (define-public sandbar
 (define-public spectrwm
   (package
     (name "spectrwm")
-    (version "3.2.0")
+    (version "3.6.0")
     (source
      (origin
        (method git-fetch)
@@ -1579,42 +1580,44 @@ (define-public spectrwm
                              (string-join (string-split version #\.) "_")))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1dfqy5f0s1nv6rqkz9lj006vypmp4rwxd5vczfk3ndzqgnh19kw6"))))
+        (base32 "1fh2r870djrxm3my2z6wigp0gswgh5gvfa9vxcyh7q488k7b0ljn"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:make-flags (let ((pkg-config (lambda (flag)
-                                        (string-append
-                                         "$(shell pkg-config " flag " "
-                                         "xft fontconfig x11 libpng)"))))
-                      (list
-                       "CC=gcc"
-                       (string-append "PREFIX=" %output)
-                       (string-append "INCS=-I. " (pkg-config "--cflags"))
-                       (string-append "LIBS=" (pkg-config "--libs") " -lm")))
-       #:tests? #f                      ;no test suite
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'build 'change-dir
-           (lambda _
-             (chdir "linux") #t))
-         (add-after 'change-dir 'patch-makefile
-           (lambda _
-             (substitute* "Makefile"
-               (("-g") ""))))
-         (delete 'configure))))         ;no 'configure' exists
-    (inputs
-     `(("freetype" ,freetype)
-       ("fontconfig" ,fontconfig)
-       ("libx11" ,libx11)
-       ("libxcursor" ,libxcursor)
-       ("libxrandr" ,libxrandr)
-       ("libxtst" ,libxtst)
-       ("libxft" ,libxft)
-       ("xcb-util" ,xcb-util)
-       ("xcb-util-wm" ,xcb-util-wm)
-       ("xcb-util-keysyms" ,xcb-util-keysyms)))
-    (native-inputs
-     (list libxt pkg-config))
+     (list
+      #:make-flags #~(let ((pkg-config (lambda (flag)
+                                         (string-append "$(shell pkg-config "
+                                          flag " "
+                                          "freetype2 xft fontconfig x11 libpng)"))))
+                       (list (string-append "CC="
+                                            #$(cc-for-target))
+                             (string-append "PREFIX=" %output)
+                             (string-append "INCS=-I. "
+                                            (pkg-config "--cflags"))
+                             (string-append "LIBS="
+                                            (pkg-config "--libs") " -lm")))
+      #:tests? #f ;no test suite
+      #:phases #~(modify-phases %standard-phases
+                   (add-before 'build 'change-dir
+                     (lambda _
+                       (chdir "linux") #t))
+                   (add-after 'change-dir 'patch-makefile
+                     (lambda _
+                       (substitute* "Makefile"
+                         (("-g")
+                          ""))))
+                   (delete 'configure)))) ;no 'configure' exists
+    (inputs (list freetype
+                  fontconfig
+                  libx11
+                  libxcb
+                  libxcursor
+                  libxrandr
+                  libxtst
+                  libxft
+                  xcb-util
+                  xcb-util-wm
+                  xcb-util-keysyms))
+    (native-inputs (list libbsd libxt pkg-config))
     (synopsis "Minimalistic automatic tiling window manager")
     (description
      "Spectrwm is a small dynamic tiling and reparenting window manager for X11.

base-commit: 1ca065fe68d68a2fa9c3d747f23fd11c8ecfd85b
-- 
2.46.0