Subject: Re: [bug#56127] [PATCH 1/2 v2] gnu: polybar: Update to 3.6.3.

From: John Kehayias <[email-masked]>
Date: Thu, 23 Jun 2022 14:40:34 +0000

Hi Josselin,

------- Original Message -------
On Thursday, June 23rd, 2022 at 6:16 AM, Josselin Poiret wrote:
>
> Yes, I meant running from store or using `guix shell polybar -- polybar`
> (which does not setup XDG_CONFIG_DIRS).
>

Done in the update first patch, checked that now `guix shell polybar -- polybar` finds the default config.

> > And yes, can update with a second commit to clean native-inputs as well.
>

Added this second little patch.

Thanks!
John

From addc99adfc0013da57dcda43df96fca11eb33d1c Mon Sep 17 00:00:00 2001
From: John Kehayias <[email-masked]>
Date: Tue, 21 Jun 2022 14:14:08 -0400
Subject: [PATCH 1/2] gnu: polybar: Update to 3.6.3.

* gnu/packages/wm.scm (polybar): Update to 3.6.3.
[phases]: Add patch-config-path for polybar to find its default configuration
file in the store.
[inputs]: Add libuv, required to build polybar.
[native-inputs]: Remove python-2, no longer needed.
---
 gnu/packages/wm.scm | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index d816bad871..92106045e9 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1469,19 +1469,29 @@ (define-public nitrogen
 (define-public polybar
   (package
     (name "polybar")
-    (version "3.5.7")
+    (version "3.6.3")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/polybar/polybar/releases/"
                            "download/" version "/polybar-" version ".tar.gz"))
        (sha256
-        (base32 "1nr386jdlm8qkbdf23w7lyvbfhr362s90f957fawnyi1finhw8bk"))))
+        (base32 "19azx5dpfyfh0pv4q2fcrf4p7a0pc5d13m7lnv3qy8376mbmhmzj"))))
     (build-system cmake-build-system)
     (arguments
      ;; Test is disabled because it requires downloading googletest from the
      ;; Internet.
-     '(#:tests? #f))
+     (list #:tests? #f
+           #:phases
+           #~(modify-phases %standard-phases
+               ;; Make polybar find its default configuration file in the
+               ;; store.
+               (add-after 'unpack 'patch-config-path
+                 (lambda _
+                   (substitute* "CMakeLists.txt"
+                     (("/etc") (string-append #$output "/etc")))
+                   (substitute* "src/utils/file.cpp"
+                     (("\"/etc\"") (string-append "\"" #$output "/etc\""))))))))
     (inputs
      (list alsa-lib
            cairo
@@ -1489,6 +1499,7 @@ (define-public polybar
            jsoncpp
            libmpdclient
            libnl
+           libuv
            libxcb
            pulseaudio
            xcb-proto
@@ -1500,9 +1511,6 @@ (define-public polybar
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("python-sphinx" ,python-sphinx) ; for the manual
-       ;; XXX: "python" input must be located after "python-2", or the package
-       ;; fails to build with "missing required python module: xcbgen".
-       ("python-2" ,python-2)           ; lib/xpp depends on python 2
        ("python" ,python)))             ; xcb-proto depends on python 3
     (home-page "https://polybar.github.io/")
     (synopsis "Fast and easy-to-use status bar")
-- 
2.36.1