diff --git a/0001-Handle-WITH_SENTRY-correctly.patch b/0001-Handle-WITH_SENTRY-correctly.patch new file mode 100644 index 0000000..c8169b9 --- /dev/null +++ b/0001-Handle-WITH_SENTRY-correctly.patch @@ -0,0 +1,50 @@ +From 2e3e56c5ec62a817409d3c47bc0ccd716e288d9a Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Wed, 23 Nov 2022 10:22:22 +0100 +Subject: [PATCH 1/2] Handle WITH_SENTRY correctly + +cmakedefine01 always defines the macro, so #ifdef is always true. +Use #if instead. +--- + src/backtracegenerator.cpp | 2 +- + src/bugzillaintegration/reportinterface.cpp | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/backtracegenerator.cpp b/src/backtracegenerator.cpp +index 0fd38646..4101f00c 100644 +--- a/src/backtracegenerator.cpp ++++ b/src/backtracegenerator.cpp +@@ -190,7 +190,7 @@ void BacktraceGenerator::setBackendPrepared() + if (!m_tempDirectory->isValid()) { + qCWarning(DRKONQI_LOG) << "Failed to create temporary directory for generator!"; + } else { +-#ifdef WITH_SENTRY ++#if WITH_SENTRY + m_proc->setEnv(QStringLiteral("DRKONQI_WITH_SENTRY"), QStringLiteral("1")); + #endif + m_proc->setEnv(QStringLiteral("DRKONQI_TMP_DIR"), m_tempDirectory->path()); +diff --git a/src/bugzillaintegration/reportinterface.cpp b/src/bugzillaintegration/reportinterface.cpp +index 6951a75b..c4ce4ea6 100644 +--- a/src/bugzillaintegration/reportinterface.cpp ++++ b/src/bugzillaintegration/reportinterface.cpp +@@ -330,7 +330,7 @@ Bugzilla::NewBug ReportInterface::newBugReportTemplate() const + + void ReportInterface::sendCrashEvent() + { +-#ifdef WITH_SENTRY ++#if WITH_SENTRY + if (DrKonqi::debuggerManager()->backtraceGenerator()->state() == BacktraceGenerator::Loaded) { + m_sentryBeacon.sendEvent(); + return; +@@ -350,7 +350,7 @@ void ReportInterface::sendCrashEvent() + + void ReportInterface::sendCrashComment() + { +-#ifdef WITH_SENTRY ++#if WITH_SENTRY + m_sentryBeacon.sendUserFeedback(m_reportTitle + QLatin1Char('\n') + m_reportDetailText + QLatin1Char('\n') + DrKonqi::kdeBugzillaURL() + + QLatin1String("show_bug.cgi?id=%1").arg(QString::number(m_sentReport))); + #endif +-- +2.39.1 + diff --git a/0002-Make-python-distro-and-psutil-modules-in-the-gdb-pre.patch b/0002-Make-python-distro-and-psutil-modules-in-the-gdb-pre.patch new file mode 100644 index 0000000..a359c64 --- /dev/null +++ b/0002-Make-python-distro-and-psutil-modules-in-the-gdb-pre.patch @@ -0,0 +1,54 @@ +From 188c0e8297f65f7bf222dde86bd472f6fadeab4d Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Wed, 23 Nov 2022 10:23:37 +0100 +Subject: [PATCH 2/2] Make python distro and psutil modules in the gdb preable + optional + +Those are only used if sentry is enabled. The other modules are part of python +itself. If they are missing, disable sentry support. +--- + src/data/gdb/preamble.py | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/data/gdb/preamble.py b/src/data/gdb/preamble.py +index 114a5ad9..1f7595e5 100644 +--- a/src/data/gdb/preamble.py ++++ b/src/data/gdb/preamble.py +@@ -6,7 +6,6 @@ import gdb + from gdb.FrameDecorator import FrameDecorator + + from datetime import datetime +-import distro + import uuid + import os + import json +@@ -15,11 +14,11 @@ import signal + import re + import binascii + import platform +-import psutil + import multiprocessing + from pathlib import Path + + if os.getenv('DRKONQI_WITH_SENTRY'): ++ # Initialize sentry reports for exceptions in this script + try: + import sentry_sdk + sentry_sdk.init( +@@ -31,6 +30,13 @@ if os.getenv('DRKONQI_WITH_SENTRY'): + except ImportError: + print("python sentry-sdk not installed :(") + ++ try: ++ import distro ++ import psutil ++ except ImportError: ++ print("python distro and/or psutil modules missing, disabling sentry") ++ del os.environ['DRKONQI_WITH_SENTRY'] ++ + def mangle_path(path): + if not path: + return path +-- +2.39.1 + diff --git a/drkonqi-5.26.5.tar.xz b/drkonqi-5.26.5.tar.xz deleted file mode 100644 index ae3ffd0..0000000 --- a/drkonqi-5.26.5.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:07f0c9fe9d03f3b6c6b86930f01f57ec04a0143596d237ca6af2f343353ad4eb -size 507664 diff --git a/drkonqi-5.26.5.tar.xz.sig b/drkonqi-5.26.5.tar.xz.sig deleted file mode 100644 index 7c16946..0000000 --- a/drkonqi-5.26.5.tar.xz.sig +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCgAdFiEE4KPrIC+OV1KOE+cv11dEg7tXsY0FAmO0bQAACgkQ11dEg7tX -sY0UzxAAux9efsV3M9JCdMmwQvyGvBTufLGo68pQq0hD2k3r0DRmov9AoBybSKLh -8837AmSfoknsl/nZUdp/cV8ssCnrWu+pdn320cIS2QAmcmeUHuj5nKoVtw04kQIV -GMe7xFPW2td0N354ECS90Yu6y+SS7ODcXgFWWb9AHDsyrOip4g+WPmsa96RJ7lfF -YuzzQAADo4dQWLxlA+48Rr4K1zaSMdQZeCCLBxS9c8G19ppdqNcinGZHXX2y82DI -EWVMB225t21XrlEsG1Kw1bdluipjrcT5/Q5XvXlwQNya2wb8dR3OTfzpAIvhXJQK -PSqI2Y+WO3L8WrlinAALlZBTDmt0U3eGT4YFJ3DbN3xE4iXotlEih0NkbFNzTve8 -kONNG2wuvSjS0P7bzAROz06hwTf/U+4JcaTGN2P1aaySFQpbHw0QTBlN9Oz692hP -QLHVmgSTREOO3vQt7ZTuPOrNTXeSydt2906l85Vx70PWrWTJIFE+5GnF5G/MtEan -itKLfReM3veIAb85+Y+Ccd6xMCNOXaxT3KF4XFtYHQgZRWuBBAxUKQoCpOoak4jK -d0iWGKE7HqgEo9voe7wC4Rh65QkUyb/RhLgolQWtmO7xaRA0aszPnP28Upf5kPi8 -TqVJZQikEmkgFuGnGPko/xUuOcs+sVos4LQxKuRzRa/AiiEhD94= -=SvHW ------END PGP SIGNATURE----- diff --git a/drkonqi-5.27.0.tar.xz b/drkonqi-5.27.0.tar.xz new file mode 100644 index 0000000..cd0a0b8 --- /dev/null +++ b/drkonqi-5.27.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fb601f1d73fcb035dad59579147e29cd5b671cba22d69c0d7d523c2b3dab104 +size 852672 diff --git a/drkonqi-5.27.0.tar.xz.sig b/drkonqi-5.27.0.tar.xz.sig new file mode 100644 index 0000000..d2c1f56 --- /dev/null +++ b/drkonqi-5.27.0.tar.xz.sig @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEE4KPrIC+OV1KOE+cv11dEg7tXsY0FAmPk3/kACgkQ11dEg7tX +sY1GaQ//W41TBCnj6vh31NhtXHnjhPuvlX9J9qwtpwDjzqMpiRuqmcW4siKZuLdI +0X9uznnxXRo3R4tu7Un1Hd7RPL8KU8aNJXjJMiL9+K58fREyMUSRM29owwhCCoVb +ytDvEKfAdylXUfq0GIs91zYKHui21ZNdyAsLPPkQQ30D/A7CE06f3mqTjMvXDhDl +YruVK/csp2ipygacT5fChlr+6whssJh2evbt7C8z3yfxjPtrLR/Jk3rYWf90nykB +E0ESCL/pFKXl+dvPd4CXs2fn+4iScRUyHrt9XBDoUmr0hh1oAJI9moeCD+y0pDNC +NTRnvOS1LOYZcVCF1+uhyn69cJKuIdQXMR0PmBbV1aKiIr4le+G355O72c6K+6LX +iPudkGAlOcvR/LzDkTXzg3V6yZrl7DQY3DJ+mc5n0rn06mgXAJegVfweVchwcJmp +Sd6lXhUuTQGxvjnm4PL+QgQ+CQj85ocYfpfmGOIhRkSwDoQuyNYh7VChRS5IkH90 +oPBsRi8xDyOgryA/tgPWexALt4l/lF0SFmd4c6kPR41ptWz6Kq+vI+GAa4kHfTKj +WXkUfc1adPrDSDEh1VQxXNwf5XtlfcLF9B0Efa4SJ+D6Z/cP7+xvfVm6q5dDC8Ln +O6Q2PL9iNlPUCP5q/w1YSSbCngVvvLd/V/d+9MM3XygvERlS1t0= +=w3/J +-----END PGP SIGNATURE----- diff --git a/drkonqi5.changes b/drkonqi5.changes index 781045b..7a8454b 100644 --- a/drkonqi5.changes +++ b/drkonqi5.changes @@ -1,3 +1,39 @@ +------------------------------------------------------------------- +Thu Feb 9 14:19:36 UTC 2023 - Fabian Vogt + +- Update to 5.27.0 + * New bugfix release + * For more details please see: + * https://kde.org/announcements/plasma/5/5.27.0 +- No code changes since 5.26.90 + +------------------------------------------------------------------- +Tue Jan 31 08:36:48 UTC 2023 - Fabian Vogt + +- Add patch to actually disable sentry: + * 0001-Handle-WITH_SENTRY-correctly.patch +- Add patch to avoid unnecessary dependencies of the gdb script: + * 0002-Make-python-distro-and-psutil-modules-in-the-gdb-pre.patch + +------------------------------------------------------------------- +Thu Jan 19 14:42:33 UTC 2023 - Fabian Vogt + +- Update to 5.26.90 + * New feature release + * For more details please see: + * https://kde.org/announcements/plasma/5/5.26.90 +- Changes since 5.26.5: + * pass the bug id not the attachment id to the gui (kde#462432) + * remove pointless todo + * check telemetrymode + * Use qdbus to query for the hostname + * allow using debuginfod for symbol resolution with gdb12 (kde#454063) + * add some a11y annotations + * do not submit to sentry when the bugzilla url is overridden + * Install po folder + * Port away from deprecated KDeclarative::setupEngine +- Avoid try-restarting a template unit in %postun + ------------------------------------------------------------------- Wed Jan 4 14:06:18 UTC 2023 - Fabian Vogt diff --git a/drkonqi5.spec b/drkonqi5.spec index 3239f16..0efd964 100644 --- a/drkonqi5.spec +++ b/drkonqi5.spec @@ -23,19 +23,20 @@ Name: drkonqi5 %{!?_plasma5_bugfix: %define _plasma5_bugfix %{version}} # Latest ABI-stable Plasma (e.g. 5.8 in KF5, but 5.9.1 in KUF) %{!?_plasma5_version: %define _plasma5_version %(echo %{_plasma5_bugfix} | awk -F. '{print $1"."$2}')} -Version: 5.26.5 +Version: 5.27.0 Release: 0 Summary: Helper for debugging and reporting crashes License: GPL-2.0-or-later Group: Development/Tools/Debuggers URL: http://www.kde.org/ -Source: https://download.kde.org/stable/plasma/%{version}/drkonqi-%{version}.tar.xz +Source: drkonqi-%{version}.tar.xz %if %{with released} -Source1: https://download.kde.org/stable/plasma/%{version}/drkonqi-%{version}.tar.xz.sig +Source1: drkonqi-%{version}.tar.xz.sig Source2: plasma.keyring %endif -# PATCHES 100-199 are from upstream 5.16 branch -# PATCHES 200-299 and above are from upstream master/5.17+ branch +# PATCH-FIX-UPSTREAM https://invent.kde.org/plasma/drkonqi/-/merge_requests/84 +Patch1: 0001-Handle-WITH_SENTRY-correctly.patch +Patch2: 0002-Make-python-distro-and-psutil-modules-in-the-gdb-pre.patch BuildRequires: extra-cmake-modules >= %{kf5_version} BuildRequires: cmake(KF5Completion) >= %{kf5_version} BuildRequires: cmake(KF5Config) >= %{kf5_version} @@ -89,24 +90,30 @@ The KDE Crash Handler gives the user feedback if a program has crashed. %lang_package %prep -%setup -q -n drkonqi-%{version} +%autosetup -p1 -n drkonqi-%{version} %build %if 0%{?suse_version} < 1550 export CXX=g++-10 %endif - %cmake_kf5 -d build -- -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir} + # Turn off sentry unconditionally. It needs qdbus -> -qt5 fixing + # before it can be used. + %{cmake_kf5 -d build -- \ +%if 0%{?suse_version} >= 1550 + -DWITH_GDB12=ON \ +%endif + -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir} \ + -DWITH_SENTRY=OFF} + %cmake_build %install - %kf5_makeinstall -C build +%kf5_makeinstall -C build - %if %{with released} - %{kf5_find_lang} - %endif +%{kf5_find_lang} - install -p -D -m755 src/doc/examples/installdbgsymbols_suse.sh \ - %{buildroot}%{_kf5_bindir}/installdbgsymbols.sh +install -p -D -m755 src/doc/examples/installdbgsymbols_suse.sh \ +%{buildroot}%{_kf5_bindir}/installdbgsymbols.sh %pre %service_add_pre drkonqi-coredump-processor@.service @@ -121,7 +128,7 @@ The KDE Crash Handler gives the user feedback if a program has crashed. %postun %{systemd_user_postun drkonqi-coredump-cleanup.service drkonqi-coredump-cleanup.timer drkonqi-coredump-launcher.socket} -%service_del_postun drkonqi-coredump-processor@.service +%service_del_postun -n drkonqi-coredump-processor@.service %files %license LICENSES/* @@ -144,8 +151,6 @@ The KDE Crash Handler gives the user feedback if a program has crashed. %{_libexecdir}/drkonqi-coredump-processor %{_kf5_applicationsdir}/org.kde.drkonqi.coredump.gui.desktop -%if %{with released} %files lang -f %{name}.lang -%endif %changelog