forked from pool/kinfocenter5
Plasma 5.23 Beta. Tested on TW Live, seems to work.
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kinfocenter5?expand=0&rev=327
This commit is contained in:
parent
5ed3149f78
commit
f44cf641e4
@ -1,67 +0,0 @@
|
||||
From f497e7757d33cf363a75f7e723cb0d8f3a78b52f Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Vogt <fabian@ritter-vogt.de>
|
||||
Date: Thu, 17 Jun 2021 20:07:50 +0200
|
||||
Subject: [PATCH 1/2] Handle libpci errors gracefully
|
||||
|
||||
libpci expects that the error callback does not return, but pci_warning
|
||||
previously did. Throwing exceptions through C code without -fexceptions is not
|
||||
safe, so resort to plain setjmp/longjmp.
|
||||
|
||||
Also format the message properly.
|
||||
---
|
||||
Modules/pci/kpci.cpp | 21 ++++++++++++++++-----
|
||||
1 file changed, 16 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/Modules/pci/kpci.cpp b/Modules/pci/kpci.cpp
|
||||
index 528252d..886cc8f 100644
|
||||
--- a/Modules/pci/kpci.cpp
|
||||
+++ b/Modules/pci/kpci.cpp
|
||||
@@ -15,6 +15,7 @@
|
||||
extern "C" {
|
||||
#include <pci/pci.h>
|
||||
}
|
||||
+#include <csetjmp>
|
||||
#include <unistd.h>
|
||||
#include <sys/types.h> //getuid
|
||||
#include <ctype.h> //isxdigit
|
||||
@@ -698,12 +699,18 @@ static QTreeWidgetItem* addCaps(QTreeWidgetItem *parent, QTreeWidgetItem *after,
|
||||
return after;
|
||||
}//addCaps
|
||||
|
||||
-static void pci_warning(char *msg, ...)
|
||||
+static jmp_buf pci_error_jmp_buf;
|
||||
+
|
||||
+// This callback must not return, but we don't want to call exit.
|
||||
+// Exceptions across C code aren't safe, so the only option is longjmp.
|
||||
+static void pci_error(char *msg, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, msg);
|
||||
- qWarning(msg, args);
|
||||
+ qWarning() << QString::vasprintf(msg, args);
|
||||
va_end(args);
|
||||
+
|
||||
+ longjmp(pci_error_jmp_buf, 1);
|
||||
}
|
||||
|
||||
bool GetInfo_PCIUtils(QTreeWidget* tree) {
|
||||
@@ -721,9 +728,13 @@ bool GetInfo_PCIUtils(QTreeWidget* tree) {
|
||||
if (PCIAccess==nullptr) {
|
||||
return false;
|
||||
}//if
|
||||
- // Use warnings for errors, they are decidely not fatal for us!
|
||||
- // https://bugs.kde.org/show_bug.cgi?id=382979
|
||||
- PCIAccess->error = pci_warning;
|
||||
+
|
||||
+ if (setjmp(pci_error_jmp_buf)) {
|
||||
+ // Got a fatal error. Cleanup might be unsafe, just return.
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ PCIAccess->error = pci_error;
|
||||
|
||||
pci_init(PCIAccess);
|
||||
pci_scan_bus(PCIAccess);
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,37 +0,0 @@
|
||||
From b3cffbad3503572e942ee41c168e245a651375cf Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Vogt <fabian@ritter-vogt.de>
|
||||
Date: Thu, 17 Jun 2021 17:46:15 +0200
|
||||
Subject: [PATCH 2/2] Enable the PCI module everywhere
|
||||
|
||||
Not sure why it's disabled on non-BSD ARM, it works fine here on Linux too.
|
||||
---
|
||||
Modules/CMakeLists.txt | 13 +------------
|
||||
1 file changed, 1 insertion(+), 12 deletions(-)
|
||||
|
||||
diff --git a/Modules/CMakeLists.txt b/Modules/CMakeLists.txt
|
||||
index 020b430..859a00c 100644
|
||||
--- a/Modules/CMakeLists.txt
|
||||
+++ b/Modules/CMakeLists.txt
|
||||
@@ -40,18 +40,7 @@ set_package_properties(PCIUTILS PROPERTIES DESCRIPTION "PciUtils is a library fo
|
||||
PURPOSE "View PCI details in kinfocenter."
|
||||
)
|
||||
|
||||
-# PCI module doesn't work on Linux arm64, nor on MacOS, but does on
|
||||
-# FreeBSD arm64, so this is a bit of a tangle of what-is-supported.
|
||||
-set(_want_pci ON)
|
||||
-if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
|
||||
- if (${CMAKE_SYSTEM} MATCHES "FreeBSD")
|
||||
- message(STATUS "FreeBSD arm64 pci support enabled.")
|
||||
- else()
|
||||
- set(_want_pci OFF)
|
||||
- endif()
|
||||
-endif()
|
||||
-
|
||||
-if(_want_pci)
|
||||
+if(PCIUTILS_FOUND)
|
||||
add_subdirectory( pci )
|
||||
endif()
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:951e42305ce4aaf709fca5e211e9fc4f2ddbbdba2417192f755a190fe325b9df
|
||||
size 1170716
|
@ -1,11 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAmEuFHgACgkQ7JTRj38F
|
||||
mX5gjQgApJU9eywk8G6Sc86aVLX+5yRv9pr9Wk1chzzZdWEnOMIzgYA9tqE6Mo9L
|
||||
Yuf6cpRHmgCkPv9oYqczY8mUInj//6oUmnlebkWl6H+6KflBDtqz74G72FO09FSf
|
||||
P3CjNk8Fk14LkPoNSyeYNvYl4hFFr9NHtHjtb6cwny/0KcU7OvId4FgD7UnX6nkP
|
||||
fHbAsfnImgKOyfH+QxtWYIEovphhInjB1e9hbiJ9P2FQzbe6BtGDaSBjP9bHuYlS
|
||||
Dy1JM3L6YucIgMYrRaqduAqJILH8SQVxFBWgBA2JNt7ThLVK5qwxuhbrO967oRe/
|
||||
7tSZubZg9tGPU0MxvbHRh4DGp0nOQQ==
|
||||
=JZRN
|
||||
-----END PGP SIGNATURE-----
|
3
kinfocenter-5.22.90.tar.xz
Normal file
3
kinfocenter-5.22.90.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8431acad7ef37c702e0c1feb8c39a049b7e2f9d07517ce8280d9d5015c70d925
|
||||
size 1156180
|
11
kinfocenter-5.22.90.tar.xz.sig
Normal file
11
kinfocenter-5.22.90.tar.xz.sig
Normal file
@ -0,0 +1,11 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCgAdFiEELR1bBYg1d4fenuIl7JTRj38FmX4FAmFDAoMACgkQ7JTRj38F
|
||||
mX4NVgf+LU+lpAq20HE1R3hO+Unw+0M+G425+7NAmSpIHQ16lAOOaORPm7Hms2mg
|
||||
+RVov5pdf/e8bOzJeswJdtFXigr/pqEFy0BhbiYdJa+/DihAOUp9ZR75RmxNTMle
|
||||
QxAYSl9vtxiTLxxZN3bO/uM6jivpdn8//+fyjX7+gsWdFR38oBunfjACgMlEj6mT
|
||||
Mmf/oMHQZeNH/BrRyf4wJLqjePUfgPAODUUzT2ZBOI0SzhMia68/Cr1589DIZMcg
|
||||
hrUmBD00ENB5G33wM8Jtra4p5TvJyt7xfh39UlfQ39tQ+fEzYQ2OoiL0GtM4FEDt
|
||||
Z08upcGBnVs0P6PHV8175sdCnsyZvA==
|
||||
=jeia
|
||||
-----END PGP SIGNATURE-----
|
@ -1,3 +1,17 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 16 13:04:50 UTC 2021 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
- Update to 5.22.90
|
||||
* New feature release
|
||||
* For more details please see:
|
||||
* https://kde.org/announcements/plasma/5/5.22.90
|
||||
- Too many changes to list here
|
||||
- Drop patches, now upstream:
|
||||
* 0001-Handle-libpci-errors-gracefully.patch
|
||||
* 0002-Enable-the-PCI-module-everywhere.patch
|
||||
- Drop patch, now longer necessary:
|
||||
* plasma-session-name.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 31 19:08:40 UTC 2021 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
||||
|
||||
%bcond_without lang
|
||||
Name: kinfocenter5
|
||||
Version: 5.22.5
|
||||
Version: 5.22.90
|
||||
Release: 0
|
||||
# Full Plasma 5 version (e.g. 5.8.95)
|
||||
%{!?_plasma5_bugfix: %define _plasma5_bugfix %{version}}
|
||||
@ -33,16 +33,11 @@ Summary: Utility that provides information about a computer system
|
||||
License: GPL-2.0-or-later
|
||||
Group: System/GUI/KDE
|
||||
URL: http://www.kde.org/
|
||||
Source: https://download.kde.org/stable/plasma/%{version}/kinfocenter-%{version}.tar.xz
|
||||
Source: https://download.kde.org/unstable/plasma/%{version}/kinfocenter-%{version}.tar.xz
|
||||
%if %{with lang}
|
||||
Source1: https://download.kde.org/stable/plasma/%{version}/kinfocenter-%{version}.tar.xz.sig
|
||||
Source1: https://download.kde.org/unstable/plasma/%{version}/kinfocenter-%{version}.tar.xz.sig
|
||||
Source2: plasma.keyring
|
||||
%endif
|
||||
# PATCH-FIX-OPENSUSE plasma-session-name.patch
|
||||
Patch0: plasma-session-name.patch
|
||||
# PATCH-FIX-UPSTREAM
|
||||
Patch1: 0001-Handle-libpci-errors-gracefully.patch
|
||||
Patch2: 0002-Enable-the-PCI-module-everywhere.patch
|
||||
BuildRequires: extra-cmake-modules >= 1.2.0
|
||||
BuildRequires: kf5-filesystem
|
||||
BuildRequires: libraw1394-devel
|
||||
@ -111,7 +106,6 @@ KDE Utility that provides information about a computer system.
|
||||
%license LICENSES/*.txt
|
||||
%{_kf5_bindir}/kinfocenter
|
||||
%dir %{_kf5_plugindir}/
|
||||
%{_kf5_plugindir}/kcm_about_distro.so
|
||||
%{_kf5_plugindir}/kcm_devinfo.so
|
||||
%{_kf5_plugindir}/kcm_info.so
|
||||
%{_kf5_plugindir}/kcm_memory.so
|
||||
@ -120,19 +114,29 @@ KDE Utility that provides information about a computer system.
|
||||
%{_kf5_plugindir}/kcm_usb.so
|
||||
%{_kf5_plugindir}/kcm_view1394.so
|
||||
%dir %{_kf5_plugindir}/kcms/
|
||||
%{_kf5_plugindir}/kcms/kcm_about-distro.so
|
||||
%{_kf5_plugindir}/kcms/kcm_energyinfo.so
|
||||
%{_kf5_plugindir}/kcms/kcm_nic.so
|
||||
%{_kf5_plugindir}/kcms/kcm_samba.so
|
||||
%{_kf5_plugindir}/kcms/kcm_vulkan.so
|
||||
%{_kf5_plugindir}/kcms/kcm_cpu.so
|
||||
%{_kf5_plugindir}/kcms/kcm_interrupts.so
|
||||
%{_kf5_plugindir}/kcms/kcm_wayland.so
|
||||
%{_kf5_applicationsdir}/org.kde.kinfocenter.desktop
|
||||
%dir %{_kf5_htmldir}/en
|
||||
%dir %{_kf5_htmldir}
|
||||
%dir %{_kf5_htmldir}/en/
|
||||
%doc %{_kf5_htmldir}/en/kinfocenter/
|
||||
%{_kf5_sharedir}/kpackage/
|
||||
%dir %{_kf5_sharedir}/kinfocenter/
|
||||
%{_kf5_sharedir}/kinfocenter/categories/
|
||||
%{_kf5_servicesdir}/
|
||||
%{_kf5_servicetypesdir}/
|
||||
%{_kf5_configdir}/menus/kinfocenter.menu
|
||||
%{_kf5_sharedir}/desktop-directories/
|
||||
%{_kf5_appstreamdir}/org.kde.kinfocenter.appdata.xml
|
||||
%dir %{_kf5_qmldir}/org/
|
||||
%dir %{_kf5_qmldir}/org/kde/
|
||||
%{_kf5_qmldir}/org/kde/kinfocenter/
|
||||
|
||||
%if %{with lang}
|
||||
%files lang -f %{name}.lang
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/Modules/about-distro/src/PlasmaEntry.cpp b/Modules/about-distro/src/PlasmaEntry.cpp
|
||||
index 6deb095..1e7f4c9 100644
|
||||
--- a/Modules/about-distro/src/PlasmaEntry.cpp
|
||||
+++ b/Modules/about-distro/src/PlasmaEntry.cpp
|
||||
@@ -22,7 +22,7 @@ PlasmaEntry::PlasmaEntry()
|
||||
QString PlasmaEntry::plasmaVersion()
|
||||
{
|
||||
const QStringList &filePaths = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation,
|
||||
- QStringLiteral("xsessions/plasma.desktop"));
|
||||
+ QStringLiteral("xsessions/plasma5.desktop"));
|
||||
|
||||
if (filePaths.length() < 1) {
|
||||
return QString();
|
Loading…
Reference in New Issue
Block a user