unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3.
@ 2022-06-21 18:21 John Kehayias via Guix-patches via
  2022-06-22 13:42 ` Josselin Poiret via Guix-patches via
  2022-06-23 14:41 ` [bug#56127] [PATCH 2/2] gnu: polybar: Simplify inputs John Kehayias via Guix-patches via
  0 siblings, 2 replies; 7+ messages in thread
From: John Kehayias via Guix-patches via @ 2022-06-21 18:21 UTC (permalink / raw)
  To: 56127

[-- Attachment #1: Type: text/plain, Size: 881 bytes --]

Hi Guix,

Here is a patch to update polybar. There were some slight tweaks needed: new input, remove unneeded native-input, and change where the default configuration file is installed (from /etc) to #$output/etc/xdg.

This last change may look slightly different from the default behavior, but this will put it where it should be found using XDG_CONFIG_DIRS. This was made in the change to polybar that also moved/altered the configuration installation: https://github.com/polybar/polybar/commit/282b0f4e73e9cbb68afd6e168c472e3f422e9a6f#diff-6b4c594394f4751f9012dc3889b278312f0e7275ab48edbe3b02d434e183aa52

I tested that it builds and polybar will find this default configuration file when no config is otherwise found or specified. The default bar looked fine to me. Note that I did test this where I do have XDG_CONFIG_DIRS set for that profile anyway.

Thanks!
John

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-polybar-Update-to-3.6.3.patch --]
[-- Type: text/x-patch; name=0001-gnu-polybar-Update-to-3.6.3.patch, Size: 2648 bytes --]

From 672bbe6f7d622dae75f1202482785540b22a8314 Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
Date: Tue, 21 Jun 2022 14:14:08 -0400
Subject: [PATCH] gnu: polybar: Update to 3.6.3.

* gnu/packages/wm.scm (polybar): Update to 3.6.3.
[phases]: Add patch-config-path to install the default configuration file
where it can be found by polybar.
[inputs]: Add libuv, required to build polybar.
[native-inputs]: Remove python-2, no longer needed.
---
 gnu/packages/wm.scm | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index d816bad871..adbade7ba6 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1469,19 +1469,27 @@ (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
+               ;; Install the default configuration file to where polybar
+               ;; can find it, through XDG_CONFIG_DIRS.
+               (add-after 'unpack 'patch-config-path
+                 (lambda _
+                   (substitute* "CMakeLists.txt"
+                     (("/etc") (string-append #$output "/etc/xdg"))))))))
     (inputs
      (list alsa-lib
            cairo
@@ -1489,6 +1497,7 @@ (define-public polybar
            jsoncpp
            libmpdclient
            libnl
+           libuv
            libxcb
            pulseaudio
            xcb-proto
@@ -1500,9 +1509,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


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3.
  2022-06-21 18:21 [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3 John Kehayias via Guix-patches via
@ 2022-06-22 13:42 ` Josselin Poiret via Guix-patches via
  2022-06-22 14:35   ` John Kehayias via Guix-patches via
  2022-06-23 14:41 ` [bug#56127] [PATCH 2/2] gnu: polybar: Simplify inputs John Kehayias via Guix-patches via
  1 sibling, 1 reply; 7+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2022-06-22 13:42 UTC (permalink / raw)
  To: John Kehayias, 56127

Hello John

John Kehayias via Guix-patches via <guix-patches@gnu.org> writes:

> Hi Guix,
>
> Here is a patch to update polybar. There were some slight tweaks needed: new input, remove unneeded native-input, and change where the default configuration file is installed (from /etc) to #$output/etc/xdg.
>
> This last change may look slightly different from the default behavior, but this will put it where it should be found using XDG_CONFIG_DIRS. This was made in the change to polybar that also moved/altered the configuration installation: https://github.com/polybar/polybar/commit/282b0f4e73e9cbb68afd6e168c472e3f422e9a6f#diff-6b4c594394f4751f9012dc3889b278312f0e7275ab48edbe3b02d434e183aa52
>
> I tested that it builds and polybar will find this default configuration file when no config is otherwise found or specified. The default bar looked fine to me. Note that I did test this where I do have XDG_CONFIG_DIRS set for that profile anyway.

Looks good to me as-is, builds and runs fine, although I'd prefer to
keep the file at /etc/, and patch src/utils/file.cpp to look for
$output/etc/polybar/config.ini.  That way, polybar would work without a
config file even when not installed.  Also, if you have the time, could
you move the native-inputs to the new style as an additional commit?

WDYT?
-- 
Josselin Poiret




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3.
  2022-06-22 13:42 ` Josselin Poiret via Guix-patches via
@ 2022-06-22 14:35   ` John Kehayias via Guix-patches via
  2022-06-23 10:16     ` Josselin Poiret via Guix-patches via
  0 siblings, 1 reply; 7+ messages in thread
From: John Kehayias via Guix-patches via @ 2022-06-22 14:35 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 56127

Hi Josselin,

------- Original Message -------
On Wednesday, June 22nd, 2022 at 9:42 AM, Josselin Poiret <dev@jpoiret.xyz> wrote:


>
> Looks good to me as-is, builds and runs fine, although I'd prefer to
> keep the file at /etc/, and patch src/utils/file.cpp to look for
> $output/etc/polybar/config.ini. That way, polybar would work without a
> config file even when not installed. Also, if you have the time, could
> you move the native-inputs to the new style as an additional commit?
>
> WDYT?

Not sure I understand what you mean by not needing to have polybar installed. Do you mean not having to worry about XDG_CONFIG_DIRS being set up? Running directly from /gnu/store? I can make that change (it was the alternative I thought of too) if that would help useability for a new user without a config.

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

Thanks for taking a look!

John




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3.
  2022-06-22 14:35   ` John Kehayias via Guix-patches via
@ 2022-06-23 10:16     ` Josselin Poiret via Guix-patches via
  2022-06-23 14:40       ` [bug#56127] [PATCH 1/2 v2] " John Kehayias via Guix-patches via
  0 siblings, 1 reply; 7+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2022-06-23 10:16 UTC (permalink / raw)
  To: John Kehayias; +Cc: 56127

Hi John,

John Kehayias <john.kehayias@protonmail.com> writes:

> Not sure I understand what you mean by not needing to have polybar installed. Do you mean not having to worry about XDG_CONFIG_DIRS being set up? Running directly from /gnu/store? I can make that change (it was the alternative I thought of too) if that would help useability for a new user without a config.

Yes, I meant running from store or using `guix shell polybar -- polybar`
(which does not setup XDG_CONFIG_DIRS).

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

Great!

> Thanks for taking a look!

Thank you for your contribution!

Best,
-- 
Josselin Poiret




^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#56127] [PATCH 1/2 v2] gnu: polybar: Update to 3.6.3.
  2022-06-23 10:16     ` Josselin Poiret via Guix-patches via
@ 2022-06-23 14:40       ` John Kehayias via Guix-patches via
  2022-06-23 20:29         ` bug#56127: [PATCH] " Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: John Kehayias via Guix-patches via @ 2022-06-23 14:40 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 56127

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

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

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-polybar-Update-to-3.6.3.patch --]
[-- Type: text/x-patch; name=0001-gnu-polybar-Update-to-3.6.3.patch, Size: 2739 bytes --]

From addc99adfc0013da57dcda43df96fca11eb33d1c Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
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


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#56127] [PATCH 2/2] gnu: polybar: Simplify inputs.
  2022-06-21 18:21 [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3 John Kehayias via Guix-patches via
  2022-06-22 13:42 ` Josselin Poiret via Guix-patches via
@ 2022-06-23 14:41 ` John Kehayias via Guix-patches via
  1 sibling, 0 replies; 7+ messages in thread
From: John Kehayias via Guix-patches via @ 2022-06-23 14:41 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 56127

[-- Attachment #1: Type: text/plain, Size: 13 bytes --]

Empty Message

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0002-gnu-polybar-Simply-inputs.patch --]
[-- Type: text/x-patch; name=0002-gnu-polybar-Simply-inputs.patch, Size: 1090 bytes --]

From 6eda624895edc47c0b879437719b6f89875b48b9 Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
Date: Thu, 23 Jun 2022 10:35:56 -0400
Subject: [PATCH 2/2] gnu: polybar: Simply inputs.

* gnu/packages/wm.scm (polybar)[native-inputs]: Remove labels.
---
 gnu/packages/wm.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 92106045e9..256cdb4089 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1509,9 +1509,9 @@ (define-public polybar
            xcb-util-wm
            xcb-util-xrm))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("python-sphinx" ,python-sphinx) ; for the manual
-       ("python" ,python)))             ; xcb-proto depends on python 3
+     (list pkg-config
+           python-sphinx ; for the manual
+           python))      ; xcb-proto depends on python 3
     (home-page "https://polybar.github.io/")
     (synopsis "Fast and easy-to-use status bar")
     (description "Polybar aims to help users build beautiful and highly
-- 
2.36.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#56127: [PATCH] gnu: polybar: Update to 3.6.3.
  2022-06-23 14:40       ` [bug#56127] [PATCH 1/2 v2] " John Kehayias via Guix-patches via
@ 2022-06-23 20:29         ` Ludovic Courtès
  0 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2022-06-23 20:29 UTC (permalink / raw)
  To: John Kehayias; +Cc: Josselin Poiret, 56127-done

Hi John,

John Kehayias <john.kehayias@protonmail.com> skribis:

> From addc99adfc0013da57dcda43df96fca11eb33d1c Mon Sep 17 00:00:00 2001
> From: John Kehayias <john.kehayias@protonmail.com>
> 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.

Applied together with the patch that removes input labels.

Thank you, and thanks Josselin for reviewing!

Ludo’.




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-06-23 20:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-21 18:21 [bug#56127] [PATCH] gnu: polybar: Update to 3.6.3 John Kehayias via Guix-patches via
2022-06-22 13:42 ` Josselin Poiret via Guix-patches via
2022-06-22 14:35   ` John Kehayias via Guix-patches via
2022-06-23 10:16     ` Josselin Poiret via Guix-patches via
2022-06-23 14:40       ` [bug#56127] [PATCH 1/2 v2] " John Kehayias via Guix-patches via
2022-06-23 20:29         ` bug#56127: [PATCH] " Ludovic Courtès
2022-06-23 14:41 ` [bug#56127] [PATCH 2/2] gnu: polybar: Simplify inputs John Kehayias via Guix-patches via

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).