diff --git a/0001-Search-in-usr-local-sbin-usr-sbin-sbin-as-fallback.patch b/0001-Search-in-usr-local-sbin-usr-sbin-sbin-as-fallback.patch new file mode 100644 index 0000000..05d3917 --- /dev/null +++ b/0001-Search-in-usr-local-sbin-usr-sbin-sbin-as-fallback.patch @@ -0,0 +1,48 @@ +From da706d27bb4663e584725926ed144b6089bc6c3e Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Tue, 8 Feb 2022 18:55:49 +0100 +Subject: [PATCH 1/2] Search in /usr/local/sbin:/usr/sbin:/sbin as fallback + +Utilities such as lspci default to /usr/(local/)sbin/ as install location, +but that's not in $PATH for regular user sessions. It still works without +supeuser privileges, so just look there as well as a fallback. + +BUG: 449792 +--- + src/CommandOutputContext.cpp | 6 ++++++ + src/CommandOutputContext.h | 2 +- + 2 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/CommandOutputContext.cpp b/src/CommandOutputContext.cpp +index 4808b45..ec3cd3d 100644 +--- a/src/CommandOutputContext.cpp ++++ b/src/CommandOutputContext.cpp +@@ -19,6 +19,12 @@ CommandOutputContext::CommandOutputContext(const QString &executable, const QStr + , m_executablePath(QStandardPaths::findExecutable(m_executableName)) + , m_arguments(arguments) + { ++ // Various utilities are installed in sbin, but work without elevated privileges ++ if (m_executablePath.isEmpty()) { ++ m_executablePath = ++ QStandardPaths::findExecutable(m_executableName, {QStringLiteral("/usr/local/sbin"), QStringLiteral("/usr/sbin"), QStringLiteral("/sbin")}); ++ } ++ + metaObject()->invokeMethod(this, &CommandOutputContext::load); + } + +diff --git a/src/CommandOutputContext.h b/src/CommandOutputContext.h +index 13fc528..c818b42 100644 +--- a/src/CommandOutputContext.h ++++ b/src/CommandOutputContext.h +@@ -44,7 +44,7 @@ private: + void setReady(); + + const QString m_executableName; +- const QString m_executablePath; ++ QString m_executablePath; + const QStringList m_arguments; + + QStringList m_originalLines; +-- +2.33.1 + diff --git a/0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch b/0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch new file mode 100644 index 0000000..a0bdb0f --- /dev/null +++ b/0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch @@ -0,0 +1,31 @@ +From 63940ad9bb5eb3bd8c0eefcf20c4b14d68f9c5c2 Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Tue, 8 Feb 2022 19:06:23 +0100 +Subject: [PATCH 2/2] Look for binaries in Mesa-demos path as well + +eglinfo is not in $PATH (yet, boo#1195695) +--- + src/CommandOutputContext.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/CommandOutputContext.cpp b/src/CommandOutputContext.cpp +index ec3cd3d..96e11ce 100644 +--- a/src/CommandOutputContext.cpp ++++ b/src/CommandOutputContext.cpp +@@ -25,6 +25,13 @@ CommandOutputContext::CommandOutputContext(const QString &executable, const QStr + QStandardPaths::findExecutable(m_executableName, {QStringLiteral("/usr/local/sbin"), QStringLiteral("/usr/sbin"), QStringLiteral("/sbin")}); + } + ++ // boo#1195695 ++ if (m_executablePath.isEmpty()) { ++ m_executablePath = ++ QStandardPaths::findExecutable(m_executableName, ++ {QStringLiteral("/usr/lib64/mesa-demos/egl/opengl"), QStringLiteral("/usr/lib/mesa-demos/egl/opengl")}); ++ } ++ + metaObject()->invokeMethod(this, &CommandOutputContext::load); + } + +-- +2.33.1 + diff --git a/kinfocenter5.changes b/kinfocenter5.changes index c643713..337c142 100644 --- a/kinfocenter5.changes +++ b/kinfocenter5.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Wed Feb 9 16:09:01 UTC 2022 - Fabian Vogt + +- Change patch to also search in /sbin: + * Add 0001-Search-in-usr-local-sbin-usr-sbin-sbin-as-fallback.patch + * Drop 0001-Search-in-usr-local-sbin-usr-sbin-as-fallback.patch + * Rebase 0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch + +------------------------------------------------------------------- +Tue Feb 8 18:09:01 UTC 2022 - Fabian Vogt + +- Add patch to actually find lscpi (kde#449792, boo#1195696): + * 0001-Search-in-usr-local-sbin-usr-sbin-as-fallback.patch +- ... and eglinfo (boo1195695): + * 0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch +- Suggest Mesa-demo for eglinfo + ------------------------------------------------------------------- Sat Feb 5 19:50:56 UTC 2022 - Fabian Vogt diff --git a/kinfocenter5.spec b/kinfocenter5.spec index 76e0686..6a57052 100644 --- a/kinfocenter5.spec +++ b/kinfocenter5.spec @@ -38,6 +38,10 @@ Source: kinfocenter-%{version}.tar.xz Source1: kinfocenter-%{version}.tar.xz.sig Source2: plasma.keyring %endif +# PATCH-FIX-UPSTREAM +Patch1: 0001-Search-in-usr-local-sbin-usr-sbin-sbin-as-fallback.patch +# PATCH-FIX-OPENSUSE +Patch100: 0002-Look-for-binaries-in-Mesa-demos-path-as-well.patch BuildRequires: extra-cmake-modules >= %{kf5_version} BuildRequires: systemsettings5 BuildRequires: update-desktop-files @@ -75,8 +79,11 @@ Requires: (/usr/bin/vulkaninfo if libvulkan1) # Plasma Wayland and X11 sessions are always installed Requires: /usr/bin/wayland-info Requires: /usr/bin/xdpyinfo -# Not packaged yet? +# Note: Not available as /usr/bin/eglinfo yet (boo#1195695) Recommends: /usr/bin/eglinfo +# Mesa-demos includes it, but as a whole it's too fat, +# so don't pull it in by default. +Suggests: Mesa-demo %description KDE Utility that provides information about a computer system.