- Add tray-fix.patch "Fix std::bad_casts in tray module"

* see https://github.com/Alexays/Waybar/pull/3604

OBS-URL: https://build.opensuse.org/package/show/X11:Wayland/waybar?expand=0&rev=136
This commit is contained in:
Soc Virnyl Estela 2024-09-23 11:13:37 +00:00 committed by Git OBS Bridge
commit 48a305ac7f
9 changed files with 1684 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

119
tray-fix.patch Normal file
View File

@ -0,0 +1,119 @@
From f60c291b82181b6e871b4807625fbcc7818d3c36 Mon Sep 17 00:00:00 2001
From: Aleksei Bavshin <alebastr89@gmail.com>
Date: Sat, 14 Sep 2024 07:36:23 -0700
Subject: [PATCH 1/2] chore: update fmt wrap to 11.0.2
---
subprojects/fmt.wrap | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/subprojects/fmt.wrap b/subprojects/fmt.wrap
index 42b615963..fd508477f 100644
--- a/subprojects/fmt.wrap
+++ b/subprojects/fmt.wrap
@@ -1,13 +1,13 @@
[wrap-file]
-directory = fmt-11.0.1
-source_url = https://github.com/fmtlib/fmt/archive/11.0.1.tar.gz
-source_filename = fmt-11.0.1.tar.gz
-source_hash = 7d009f7f89ac84c0a83f79ed602463d092fbf66763766a907c97fd02b100f5e9
-patch_filename = fmt_11.0.1-1_patch.zip
-patch_url = https://wrapdb.mesonbuild.com/v2/fmt_11.0.1-1/get_patch
-patch_hash = 0a8b93d1ee6d84a82d3872a9bfb4c3977d8a53f7f484d42d1f7ed63ed496d549
-source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/fmt_11.0.1-1/fmt-11.0.1.tar.gz
-wrapdb_version = 11.0.1-1
+directory = fmt-11.0.2
+source_url = https://github.com/fmtlib/fmt/archive/11.0.2.tar.gz
+source_filename = fmt-11.0.2.tar.gz
+source_hash = 6cb1e6d37bdcb756dbbe59be438790db409cdb4868c66e888d5df9f13f7c027f
+patch_filename = fmt_11.0.2-1_patch.zip
+patch_url = https://wrapdb.mesonbuild.com/v2/fmt_11.0.2-1/get_patch
+patch_hash = 90c9e3b8e8f29713d40ca949f6f93ad115d78d7fb921064112bc6179e6427c5e
+source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/fmt_11.0.2-1/fmt-11.0.2.tar.gz
+wrapdb_version = 11.0.2-1
[provide]
fmt = fmt_dep
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()) {

3
waybar-0.10.3.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:50a9ae85d3dcfef04e4bc4e0f3470f187964e4466c156e5558850cea84a3df5c
size 301886

3
waybar-0.10.4.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ad1ead64aec35bc589207ea1edce90e848620d578985967d44a850a66b5ef829
size 309411

3
waybar-0.11.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6a0e9f0f7f2eff503951958cbb16dc39041c0b67e86c35154e8507677c61be9d
size 317607

1405
waybar.changes Normal file

File diff suppressed because it is too large Load Diff

2
waybar.rpmlintrc Normal file
View File

@ -0,0 +1,2 @@
# Ignore error that causes other errors such as bsc#1205950
addFilter("branding-requires-unversioned waybar-branding")

125
waybar.spec Normal file
View File

@ -0,0 +1,125 @@
#
# spec file for package waybar
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: waybar
Version: 0.11.0
Release: 0
Summary: Customizable Wayland bar for Sway and Wlroots based compositors
License: MIT
Group: System/GUI/Other
URL: https://github.com/Alexays/Waybar
Source0: https://github.com/Alexays/Waybar/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: waybar.rpmlintrc
Patch1: https://github.com/Alexays/Waybar/pull/3604.patch#/tray-fix.patch
BuildRequires: cmake
%if 0%{?sle_version} >= 150400
BuildRequires: gcc13-c++
%else
BuildRequires: gcc-c++ >= 8
%endif
BuildRequires: gtk-layer-shell-devel
BuildRequires: meson
BuildRequires: ninja
BuildRequires: pkgconfig
# test dependency
BuildRequires: pkgconfig(catch2) >= 3.0
BuildRequires: sndio-devel >= 1.7.0
# optional: mpris module
BuildRequires: pkgconfig(playerctl)
# optional: man pages
BuildRequires: scdoc
# optional: tray module
BuildRequires: pkgconfig(dbusmenu-gtk3-0.4)
BuildRequires: pkgconfig(fmt)
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(gtkmm-3.0)
BuildRequires: pkgconfig(jsoncpp)
BuildRequires: pkgconfig(libinput)
BuildRequires: pkgconfig(upower-glib)
# optional: mpd module
BuildRequires: pkgconfig(libmpdclient)
# optional: network
BuildRequires: pkgconfig(libnl-3.0)
BuildRequires: pkgconfig(libnl-genl-3.0)
# optional: audio
BuildRequires: pkgconfig(libevdev)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(sigc++-2.0)
BuildRequires: pkgconfig(spdlog)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(wireplumber-0.5)
BuildRequires: pkgconfig(xkbregistry)
# requires branding
# NOTE: unversioned branding is required to avoid issues like bsc#1205950
Requires: %{name}-branding
# optional: sway integration
Recommends: sway
# Default configurations require Fontawesome 6
Recommends: fontawesome-fonts
%description
A customizable Wayland bar for Sway and Wlroots based compositors.
It comes with modules for pipewire, alsa, backlight, and bluetooth.
Other modules can be found in the manpages of Waybar.
%package branding-upstream
Summary: Upstream branding of %{name}
Group: System/GUI/Other
Requires: %{name} = %{version}
Supplements: (%{name} and branding-upstream)
Conflicts: %{name}-branding
Provides: %{name}-branding = %{version}
BuildArch: noarch
#BRAND: /etc/xdg/waybar/config contains upstream config
#BRAND: /etc/xdg/waybar/style.css contains upstream style
%description branding-upstream
This package provides the upstream look and feel for sway.
%prep
%autosetup -p1 -n Waybar-%{version}
%build
%if 0%{?sle_version} >= 150400
export CXX=g++-13
%endif
%meson -Dcava=disabled -Dtests=enabled
%meson_build
%install
%meson_install
%check
%meson_test
%files
%{_bindir}/waybar
%{_mandir}/man?/%{name}*
%{_prefix}/lib/systemd/user/waybar.service
%files branding-upstream
%dir %{_sysconfdir}/xdg/waybar
%config(noreplace) %{_sysconfdir}/xdg/waybar/config.jsonc
%config(noreplace) %{_sysconfdir}/xdg/waybar/style.css
%changelog