* [bug#73410] [PATCH] gnu: waybar: Fix missing tray icons on 0.11.0.
@ 2024-09-21 13:34 Josselin Poiret via Guix-patches via
2024-09-27 3:38 ` bug#73410: " John Kehayias via Guix-patches via
0 siblings, 1 reply; 2+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2024-09-21 13:34 UTC (permalink / raw)
To: 73410; +Cc: Josselin Poiret
From: Josselin Poiret <dev@jpoiret.xyz>
* gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/wm.scm (waybar): Use it.
Change-Id: Ib480b815faf3a331e1fc093dee72bb3099df57c5
---
Hi everyone,
This fixes a bug in the newest release that is now fixed on the main branch
upstream: tray icons do not appear!
Best,
gnu/local.mk | 1 +
.../waybar-0.11.0-fix-tray-icons.patch | 86 +++++++++++++++++++
gnu/packages/wm.scm | 3 +-
3 files changed, 89 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 8e7abc8a47..104fcb01d6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2287,6 +2287,7 @@ dist_patch_DATA = \
%D%/packages/patches/wacomtablet-add-missing-includes.patch \
%D%/packages/patches/wacomtablet-qt5.15.patch \
%D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \
+ %D%/packages/patches/waybar-0.11.0-fix-tray-icons.patch \
%D%/packages/patches/wcstools-extend-makefiles.patch \
%D%/packages/patches/wdl-link-libs-and-fix-jnetlib.patch \
%D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \
diff --git a/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch b/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
new file mode 100644
index 0000000000..5c8c98a661
--- /dev/null
+++ b/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
@@ -0,0 +1,86 @@
+Taken from upstream's merged PR #3604 [1].
+
+[1] https://github.com/Alexays/Waybar/pull/3604
+
+From 0006e4713ae19776528038b3242ded05db884ba5 Mon Sep 17 00:00:00 2001
+From: Aleksei Bavshin <alebastr89@gmail.com>
+Date: Sat, 14 Sep 2024 07:37:37 -0700
+Subject: [PATCH 2/2] fix(tray): revert ustring formatting changes
+
+This reverts commit a4d31ab10d1630cb9104c695d7b777ca12468904.
+---
+ src/modules/sni/item.cpp | 23 +++++++++--------------
+ 1 file changed, 9 insertions(+), 14 deletions(-)
+
+diff --git a/src/modules/sni/item.cpp b/src/modules/sni/item.cpp
+index 8afb39fb3..6c4ec8c06 100644
+--- a/src/modules/sni/item.cpp
++++ b/src/modules/sni/item.cpp
+@@ -104,11 +104,9 @@ void Item::proxyReady(Glib::RefPtr<Gio::AsyncResult>& result) {
+ this->updateImage();
+
+ } catch (const Glib::Error& err) {
+- spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path,
+- std::string(err.what()));
++ spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path, err.what());
+ } catch (const std::exception& err) {
+- spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path,
+- std::string(err.what()));
++ spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path, err.what());
+ }
+ }
+
+@@ -126,15 +124,14 @@ ToolTip get_variant<ToolTip>(const Glib::VariantBase& value) {
+ result.text = get_variant<Glib::ustring>(container.get_child(2));
+ auto description = get_variant<Glib::ustring>(container.get_child(3));
+ if (!description.empty()) {
+- result.text = fmt::format("<b>{}</b>\n{}", std::string(result.text), std::string(description));
++ result.text = fmt::format("<b>{}</b>\n{}", result.text, description);
+ }
+ return result;
+ }
+
+ void Item::setProperty(const Glib::ustring& name, Glib::VariantBase& value) {
+ try {
+- spdlog::trace("Set tray item property: {}.{} = {}", id.empty() ? bus_name : id,
+- std::string(name), get_variant<std::string>(value));
++ spdlog::trace("Set tray item property: {}.{} = {}", id.empty() ? bus_name : id, name, value);
+
+ if (name == "Category") {
+ category = get_variant<std::string>(value);
+@@ -179,12 +176,10 @@ void Item::setProperty(const Glib::ustring& name, Glib::VariantBase& value) {
+ }
+ } catch (const Glib::Error& err) {
+ spdlog::warn("Failed to set tray item property: {}.{}, value = {}, err = {}",
+- id.empty() ? bus_name : id, std::string(name), get_variant<std::string>(value),
+- std::string(err.what()));
++ id.empty() ? bus_name : id, name, value, err.what());
+ } catch (const std::exception& err) {
+ spdlog::warn("Failed to set tray item property: {}.{}, value = {}, err = {}",
+- id.empty() ? bus_name : id, std::string(name), get_variant<std::string>(value),
+- std::string(err.what()));
++ id.empty() ? bus_name : id, name, value, err.what());
+ }
+ }
+
+@@ -226,9 +221,9 @@ void Item::processUpdatedProperties(Glib::RefPtr<Gio::AsyncResult>& _result) {
+
+ this->updateImage();
+ } catch (const Glib::Error& err) {
+- spdlog::warn("Failed to update properties: {}", std::string(err.what()));
++ spdlog::warn("Failed to update properties: {}", err.what());
+ } catch (const std::exception& err) {
+- spdlog::warn("Failed to update properties: {}", std::string(err.what()));
++ spdlog::warn("Failed to update properties: {}", err.what());
+ }
+ update_pending_.clear();
+ }
+@@ -250,7 +245,7 @@ static const std::map<std::string_view, std::set<std::string_view>> signal2props
+
+ void Item::onSignal(const Glib::ustring& sender_name, const Glib::ustring& signal_name,
+ const Glib::VariantContainerBase& arguments) {
+- spdlog::trace("Tray item '{}' got signal {}", id, std::string(signal_name));
++ spdlog::trace("Tray item '{}' got signal {}", id, signal_name);
+ auto changed = signal2props.find(signal_name.raw());
+ if (changed != signal2props.end()) {
+ if (update_pending_.empty()) {
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 4b9d116bda..2e00e0df41 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -2233,7 +2233,8 @@ (define-public waybar
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1bw6d3bf8rm4mgrbcprxxljfxbyabbj2lwabk2z19r8lhfz38myy"))))
+ (base32 "1bw6d3bf8rm4mgrbcprxxljfxbyabbj2lwabk2z19r8lhfz38myy"))
+ (patches (search-patches "waybar-0.11.0-fix-tray-icons.patch"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "--wrap-mode=nodownload")))
base-commit: 9d75215a59629ab224154ef6b843043289291f81
--
2.46.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* bug#73410: [PATCH] gnu: waybar: Fix missing tray icons on 0.11.0.
2024-09-21 13:34 [bug#73410] [PATCH] gnu: waybar: Fix missing tray icons on 0.11.0 Josselin Poiret via Guix-patches via
@ 2024-09-27 3:38 ` John Kehayias via Guix-patches via
0 siblings, 0 replies; 2+ messages in thread
From: John Kehayias via Guix-patches via @ 2024-09-27 3:38 UTC (permalink / raw)
To: Josselin Poiret; +Cc: 73410-done
Hello Josselin!
On Sat, Sep 21, 2024 at 03:34 PM, Josselin Poiret wrote:
> From: Josselin Poiret <dev@jpoiret.xyz>
>
> * gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch: New patch.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/wm.scm (waybar): Use it.
>
> Change-Id: Ib480b815faf3a331e1fc093dee72bb3099df57c5
> ---
> Hi everyone,
>
> This fixes a bug in the newest release that is now fixed on the main branch
> upstream: tray icons do not appear!
>
> Best,
>
I updated, saw no tray icons, remembered seeing your patch, tried it
locally, and took the liberty of pushing as
13b6254abc76193c5b021e8dc73a1c4570d4fc41. I only added a "[source]" to
the changelog.
Thanks!
John
> gnu/local.mk | 1 +
> .../waybar-0.11.0-fix-tray-icons.patch | 86 +++++++++++++++++++
> gnu/packages/wm.scm | 3 +-
> 3 files changed, 89 insertions(+), 1 deletion(-)
> create mode 100644 gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 8e7abc8a47..104fcb01d6 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -2287,6 +2287,7 @@ dist_patch_DATA = \
> %D%/packages/patches/wacomtablet-add-missing-includes.patch \
> %D%/packages/patches/wacomtablet-qt5.15.patch \
> %D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \
> + %D%/packages/patches/waybar-0.11.0-fix-tray-icons.patch \
> %D%/packages/patches/wcstools-extend-makefiles.patch \
> %D%/packages/patches/wdl-link-libs-and-fix-jnetlib.patch \
> %D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \
> diff --git a/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch b/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
> new file mode 100644
> index 0000000000..5c8c98a661
> --- /dev/null
> +++ b/gnu/packages/patches/waybar-0.11.0-fix-tray-icons.patch
> @@ -0,0 +1,86 @@
> +Taken from upstream's merged PR #3604 [1].
> +
> +[1] https://github.com/Alexays/Waybar/pull/3604
> +
> +From 0006e4713ae19776528038b3242ded05db884ba5 Mon Sep 17 00:00:00 2001
> +From: Aleksei Bavshin <alebastr89@gmail.com>
> +Date: Sat, 14 Sep 2024 07:37:37 -0700
> +Subject: [PATCH 2/2] fix(tray): revert ustring formatting changes
> +
> +This reverts commit a4d31ab10d1630cb9104c695d7b777ca12468904.
> +---
> + src/modules/sni/item.cpp | 23 +++++++++--------------
> + 1 file changed, 9 insertions(+), 14 deletions(-)
> +
> +diff --git a/src/modules/sni/item.cpp b/src/modules/sni/item.cpp
> +index 8afb39fb3..6c4ec8c06 100644
> +--- a/src/modules/sni/item.cpp
> ++++ b/src/modules/sni/item.cpp
> +@@ -104,11 +104,9 @@ void Item::proxyReady(Glib::RefPtr<Gio::AsyncResult>& result) {
> + this->updateImage();
> +
> + } catch (const Glib::Error& err) {
> +- spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path,
> +- std::string(err.what()));
> ++ spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path, err.what());
> + } catch (const std::exception& err) {
> +- spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path,
> +- std::string(err.what()));
> ++ spdlog::error("Failed to create DBus Proxy for {} {}: {}", bus_name, object_path, err.what());
> + }
> + }
> +
> +@@ -126,15 +124,14 @@ ToolTip get_variant<ToolTip>(const Glib::VariantBase& value) {
> + result.text = get_variant<Glib::ustring>(container.get_child(2));
> + auto description = get_variant<Glib::ustring>(container.get_child(3));
> + if (!description.empty()) {
> +- result.text = fmt::format("<b>{}</b>\n{}", std::string(result.text), std::string(description));
> ++ result.text = fmt::format("<b>{}</b>\n{}", result.text, description);
> + }
> + return result;
> + }
> +
> + void Item::setProperty(const Glib::ustring& name, Glib::VariantBase& value) {
> + try {
> +- spdlog::trace("Set tray item property: {}.{} = {}", id.empty() ? bus_name : id,
> +- std::string(name), get_variant<std::string>(value));
> ++ spdlog::trace("Set tray item property: {}.{} = {}", id.empty() ? bus_name : id, name, value);
> +
> + if (name == "Category") {
> + category = get_variant<std::string>(value);
> +@@ -179,12 +176,10 @@ void Item::setProperty(const Glib::ustring& name, Glib::VariantBase& value) {
> + }
> + } catch (const Glib::Error& err) {
> + spdlog::warn("Failed to set tray item property: {}.{}, value = {}, err = {}",
> +- id.empty() ? bus_name : id, std::string(name), get_variant<std::string>(value),
> +- std::string(err.what()));
> ++ id.empty() ? bus_name : id, name, value, err.what());
> + } catch (const std::exception& err) {
> + spdlog::warn("Failed to set tray item property: {}.{}, value = {}, err = {}",
> +- id.empty() ? bus_name : id, std::string(name), get_variant<std::string>(value),
> +- std::string(err.what()));
> ++ id.empty() ? bus_name : id, name, value, err.what());
> + }
> + }
> +
> +@@ -226,9 +221,9 @@ void Item::processUpdatedProperties(Glib::RefPtr<Gio::AsyncResult>& _result) {
> +
> + this->updateImage();
> + } catch (const Glib::Error& err) {
> +- spdlog::warn("Failed to update properties: {}", std::string(err.what()));
> ++ spdlog::warn("Failed to update properties: {}", err.what());
> + } catch (const std::exception& err) {
> +- spdlog::warn("Failed to update properties: {}", std::string(err.what()));
> ++ spdlog::warn("Failed to update properties: {}", err.what());
> + }
> + update_pending_.clear();
> + }
> +@@ -250,7 +245,7 @@ static const std::map<std::string_view, std::set<std::string_view>> signal2props
> +
> + void Item::onSignal(const Glib::ustring& sender_name, const Glib::ustring& signal_name,
> + const Glib::VariantContainerBase& arguments) {
> +- spdlog::trace("Tray item '{}' got signal {}", id, std::string(signal_name));
> ++ spdlog::trace("Tray item '{}' got signal {}", id, signal_name);
> + auto changed = signal2props.find(signal_name.raw());
> + if (changed != signal2props.end()) {
> + if (update_pending_.empty()) {
> diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
> index 4b9d116bda..2e00e0df41 100644
> --- a/gnu/packages/wm.scm
> +++ b/gnu/packages/wm.scm
> @@ -2233,7 +2233,8 @@ (define-public waybar
> (commit version)))
> (file-name (git-file-name name version))
> (sha256
> - (base32 "1bw6d3bf8rm4mgrbcprxxljfxbyabbj2lwabk2z19r8lhfz38myy"))))
> + (base32 "1bw6d3bf8rm4mgrbcprxxljfxbyabbj2lwabk2z19r8lhfz38myy"))
> + (patches (search-patches "waybar-0.11.0-fix-tray-icons.patch"))))
> (build-system meson-build-system)
> (arguments
> (list #:configure-flags #~(list "--wrap-mode=nodownload")))
>
> base-commit: 9d75215a59629ab224154ef6b843043289291f81
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-09-27 3:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-21 13:34 [bug#73410] [PATCH] gnu: waybar: Fix missing tray icons on 0.11.0 Josselin Poiret via Guix-patches via
2024-09-27 3:38 ` bug#73410: " 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).