From 582b311842f10861403ff56a29565c9bfbb2d96c Mon Sep 17 00:00:00 2001 From: Martin Kutlak Date: Mon, 8 Oct 2018 15:19:17 +0200 Subject: [PATCH 01/11] New upstream release 2.11.0 Signed-off-by: Martin Kutlak --- .gitignore | 1 + ...-and-e-parameter-into-abrt-hook-ccpp.patch | 133 ------------------ ...-deprecated-g_type_class_add_private.patch | 62 -------- ...ix-missing-argument-error-during-del.patch | 42 ------ ...the-syntax-for-gdb-backtrace-command.patch | 41 ------ abrt.spec | 28 ++-- sources | 2 +- 7 files changed, 16 insertions(+), 293 deletions(-) delete mode 100644 0001-ccpp-add-h-and-e-parameter-into-abrt-hook-ccpp.patch delete mode 100644 0001-gui-Replace-deprecated-g_type_class_add_private.patch delete mode 100644 0001-harvest_vmcore-Fix-missing-argument-error-during-del.patch delete mode 100644 0001-lib-Correct-the-syntax-for-gdb-backtrace-command.patch diff --git a/.gitignore b/.gitignore index 5cb8def..e2076f2 100644 --- a/.gitignore +++ b/.gitignore @@ -62,3 +62,4 @@ abrt-1.1.13.tar.gz /abrt-2.10.8.tar.gz /abrt-2.10.9.tar.gz /abrt-2.10.10.tar.gz +/abrt-2.11.0.tar.gz diff --git a/0001-ccpp-add-h-and-e-parameter-into-abrt-hook-ccpp.patch b/0001-ccpp-add-h-and-e-parameter-into-abrt-hook-ccpp.patch deleted file mode 100644 index 6edf224..0000000 --- a/0001-ccpp-add-h-and-e-parameter-into-abrt-hook-ccpp.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 94dc5d2783133cea27b1ae804d5b8a2da06808c5 Mon Sep 17 00:00:00 2001 -From: Matej Habrnal -Date: Wed, 6 Jun 2018 14:04:09 +0200 -Subject: [PATCH] ccpp: add %h and %e parameter into abrt-hook-ccpp - -Without this commit core_pattern's parameter %h and %e was not -translated at all. - -If there is a white space in executable filename, %e replaced only by -the first part of executable name (till the space). Hence we decided -to get executable name from /proc/PID/exe symlink exist. - -Example: -If 'core_pattern = core.%h.%p.%t.%e' the result was -core.%h.26284.1469805542.sleep not -core.myshostmane.26284.1469805542.sleep with spaces - -Related to #1587891 - -Signed-off-by: Matej Habrnal ---- - src/hooks/abrt-hook-ccpp.c | 36 +++++++++++++++++++---------- - src/hooks/abrt-install-ccpp-hook.in | 2 +- - 2 files changed, 25 insertions(+), 13 deletions(-) - -diff --git a/src/hooks/abrt-hook-ccpp.c b/src/hooks/abrt-hook-ccpp.c -index 1c4e45e5..40117fc8 100644 ---- a/src/hooks/abrt-hook-ccpp.c -+++ b/src/hooks/abrt-hook-ccpp.c -@@ -65,13 +65,13 @@ static struct dump_dir *dd; - * %t - UNIX time of dump - * %P - global pid - * %I - crash thread tid -- * %e - executable filename (can contain white spaces) -+ * %h - hostname -+ * %e - executable filename (can contain white spaces, must be placed at the end) - * %% - output one "%" - */ - /* Hook must be installed with exactly the same sequence of %c specifiers. -- * Last one, %h, may be omitted (we can find it out). - */ --static const char percent_specifiers[] = "%scpugtePi"; -+static const char percent_specifiers[] = "%scpugtPIhe"; - static char *core_basename = (char*) "core"; - - static DIR *open_cwd(pid_t pid) -@@ -146,7 +146,8 @@ static int setfscreatecon_raw(security_context_t context) - } - #endif - --static int open_user_core(uid_t uid, uid_t fsuid, gid_t fsgid, pid_t pid, char **percent_values) -+static int open_user_core(uid_t uid, uid_t fsuid, gid_t fsgid, pid_t pid, -+ char **percent_values, const char *executable_filename) - { - proc_cwd = open_cwd(pid); - if (proc_cwd == NULL) -@@ -196,7 +197,13 @@ static int open_user_core(uid_t uid, uid_t fsuid, gid_t fsgid, pid_t pid, char * - { - const char *val = "%"; - if (specifier_num > 0) /* not %% */ -+ { - val = percent_values[specifier_num - 1]; -+ /* if %e (executable filename), use executable from -+ * /proc/PID/exe symlink if exists */ -+ if (percent_specifiers[specifier_num] == 'e' && executable_filename) -+ val = executable_filename; -+ } - //log_warning("c:'%c'", c); - //log_warning("val:'%s'", val); - -@@ -917,9 +924,9 @@ int main(int argc, char** argv) - - if (argc < 8) - { -- /* percent specifier: %s %c %p %u %g %t %P %T */ -- /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] */ -- error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME GLOBAL_PID GLOBAL_TID", argv[0]); -+ /* percent specifier: %s %c %p %u %g %t %P %I %h %e */ -+ /* argv: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] */ -+ error_msg_and_die("Usage: %s SIGNO CORE_SIZE_LIMIT PID UID GID TIME GLOBAL_PID GLOBAL_TID HOSTNAME BINARY_NAME", argv[0]); - } - - /* Not needed on 2.6.30. -@@ -1016,13 +1023,21 @@ int main(int argc, char** argv) - - snprintf(path, sizeof(path), "%s/last-ccpp", g_settings_dump_location); - -+ char *executable = get_executable_at(pid_proc_fd); -+ const char *last_slash = NULL; -+ if (executable) -+ { -+ last_slash = strrchr(executable, '/'); -+ /* if the last_slash was found, skip it */ -+ if (last_slash) ++last_slash; -+ } -+ - /* Open a fd to compat coredump, if requested and is possible */ - int user_core_fd = -1; - if (setting_MakeCompatCore && ulimit_c != 0) - /* note: checks "user_pwd == NULL" inside; updates core_basename */ -- user_core_fd = open_user_core(uid, fsuid, fsgid, pid, &argv[1]); -+ user_core_fd = open_user_core(uid, fsuid, fsgid, pid, &argv[1], (const char *)last_slash); - -- char *executable = get_executable_at(pid_proc_fd); - if (executable == NULL) - { - /* readlink on /proc/$PID/exe failed, don't create abrt dump dir */ -@@ -1031,9 +1046,6 @@ int main(int argc, char** argv) - return create_user_core(user_core_fd, pid, ulimit_c); - } - -- const char *last_slash = strrchr(executable, '/'); -- /* if the last_slash was found, skip it */ -- if (last_slash) ++last_slash; - - /* ignoring crashes */ - if (executable && is_path_ignored(setting_ignored_paths, executable)) -diff --git a/src/hooks/abrt-install-ccpp-hook.in b/src/hooks/abrt-install-ccpp-hook.in -index 660c2091..f8c0c610 100755 ---- a/src/hooks/abrt-install-ccpp-hook.in -+++ b/src/hooks/abrt-install-ccpp-hook.in -@@ -11,7 +11,7 @@ SAVED_PATTERN_DIR="@VAR_RUN@/abrt" - SAVED_PATTERN_FILE="@VAR_RUN@/abrt/saved_core_pattern" - HOOK_BIN="@libexecdir@/abrt-hook-ccpp" - # Must match percent_specifiers[] order in abrt-hook-ccpp.c: --PATTERN="|$HOOK_BIN %s %c %p %u %g %t %P %I" -+PATTERN="|$HOOK_BIN %s %c %p %u %g %t %P %I %h %e" - - # core_pipe_limit specifies how many dump_helpers can run at the same time - # 0 - means unlimited, but it's not guaranteed that /proc/ of crashing --- -2.19.0 - diff --git a/0001-gui-Replace-deprecated-g_type_class_add_private.patch b/0001-gui-Replace-deprecated-g_type_class_add_private.patch deleted file mode 100644 index c2aa22c..0000000 --- a/0001-gui-Replace-deprecated-g_type_class_add_private.patch +++ /dev/null @@ -1,62 +0,0 @@ -From af51c51636eb0ca318e62d4c712f2ba3e60ed9b0 Mon Sep 17 00:00:00 2001 -From: Martin Kutlak -Date: Tue, 28 Aug 2018 10:26:47 +0200 -Subject: [PATCH] gui: Replace deprecated g_type_class_add_private - -g_type_class_add_private will be deprecated in Glib 2.58 [1]. - -There is a G_DEFINE_TYPE_WITH_PRIVATE macro that can replace -the deprecated function and it is backwards compatible [2]. - -[1] blog.gtk.org/2018/07/11/news-from-glib-2-58 -[2] bassi.io/articles/2013/06/21/the-king-is-dead - -Signed-off-by: Martin Kutlak ---- - src/configuration-gui/abrt-config-widget.c | 9 ++------- - 1 file changed, 2 insertions(+), 7 deletions(-) - -diff --git a/src/configuration-gui/abrt-config-widget.c b/src/configuration-gui/abrt-config-widget.c -index 62910db6..aa3b5c01 100644 ---- a/src/configuration-gui/abrt-config-widget.c -+++ b/src/configuration-gui/abrt-config-widget.c -@@ -27,9 +27,6 @@ - #include "libabrt.h" - #include - --#define ABRT_CONFIG_WIDGET_GET_PRIVATE(o) \ -- (G_TYPE_INSTANCE_GET_PRIVATE((o), TYPE_ABRT_CONFIG_WIDGET, AbrtConfigWidgetPrivate)) -- - #define WID(s) GTK_WIDGET(gtk_builder_get_object(self->priv->builder, s)) - - #define UI_FILE_NAME "abrt-config-widget.glade" -@@ -107,7 +104,7 @@ struct AbrtConfigWidgetPrivate { - AbrtConfigWidgetOption options[_ABRT_OPT_END_]; - }; - --G_DEFINE_TYPE(AbrtConfigWidget, abrt_config_widget, GTK_TYPE_BOX) -+G_DEFINE_TYPE_WITH_PRIVATE(AbrtConfigWidget, abrt_config_widget, GTK_TYPE_BOX) - - enum { - SN_CHANGED, -@@ -214,8 +211,6 @@ abrt_config_widget_class_init(AbrtConfigWidgetClass *klass) - - object_class->finalize = abrt_config_widget_finalize; - -- g_type_class_add_private(klass, sizeof(AbrtConfigWidgetPrivate)); -- - s_signals[SN_CHANGED] = g_signal_new ("changed", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, -@@ -413,7 +408,7 @@ abrt_config_widget_init(AbrtConfigWidget *self) - { - GError *error = NULL; - -- self->priv = ABRT_CONFIG_WIDGET_GET_PRIVATE(self); -+ self->priv = abrt_config_widget_get_instance_private(self); - - self->priv->builder = gtk_builder_new(); - gtk_builder_set_translation_domain(self->priv->builder, GETTEXT_PACKAGE); --- -2.19.0 - diff --git a/0001-harvest_vmcore-Fix-missing-argument-error-during-del.patch b/0001-harvest_vmcore-Fix-missing-argument-error-during-del.patch deleted file mode 100644 index 80ceab8..0000000 --- a/0001-harvest_vmcore-Fix-missing-argument-error-during-del.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 179843d3800f4dd66b143968792a81668a7b172a Mon Sep 17 00:00:00 2001 -From: Jake Daryll Obina -Date: Mon, 25 Jun 2018 11:52:11 +0800 -Subject: [PATCH] harvest_vmcore: Fix missing argument error during - delete_and_close() - -delete_and_close() requires a directory name argument and it is being called -without one. This argument is really not necessary though since the directory -name is already saved in the directory object (can be queried via the directory -object's name attribute), and it is the saved directory that is always deleted -regardless of the argument passed in. - -Signed-off-by: Jake Daryll Obina ---- - src/hooks/abrt_harvest_vmcore.py.in | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/src/hooks/abrt_harvest_vmcore.py.in b/src/hooks/abrt_harvest_vmcore.py.in -index 7d4bba52..66c3ad37 100644 ---- a/src/hooks/abrt_harvest_vmcore.py.in -+++ b/src/hooks/abrt_harvest_vmcore.py.in -@@ -128,13 +128,15 @@ def create_abrtd_info(dest, uuid): - return dd - - --def delete_and_close(dd, dd_dirname): -+def delete_and_close(dd): - """ - Deletes the given dump directory and closes it. - - dd - dump directory object -- dd_dirname - full path to dump directory - """ -+ # Save the directory name as the directory object could be destroyed during -+ # delete(). -+ dd_dirname = dd.name - if not dd.delete() == 0: - sys.stderr.write("Unable to delete '%s'\n" % (dd_dirname)) - return --- -2.19.0 - diff --git a/0001-lib-Correct-the-syntax-for-gdb-backtrace-command.patch b/0001-lib-Correct-the-syntax-for-gdb-backtrace-command.patch deleted file mode 100644 index 4b72a1a..0000000 --- a/0001-lib-Correct-the-syntax-for-gdb-backtrace-command.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 057f8b0395a37765b856737cb25186c52b300389 Mon Sep 17 00:00:00 2001 -From: Martin Kutlak -Date: Tue, 24 Jul 2018 10:17:05 +0200 -Subject: [PATCH] lib: Correct the syntax for gdb backtrace command - -abrt-action-generate-backtrace generates backtraces with error message: -A syntax error in expression, near `full'. - -According to the GDB documentation the correct syntax for backtrace -command is: -backtrace [n] -backtrace full [n] - -- sourceware.org/gdb/onlinedocs/gdb/Backtrace.html - -Signed-off-by: Martin Kutlak ---- - src/lib/hooklib.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/lib/hooklib.c b/src/lib/hooklib.c -index 135c7cde..b66fc119 100644 ---- a/src/lib/hooklib.c -+++ b/src/lib/hooklib.c -@@ -353,11 +353,11 @@ char *get_backtrace(const char *dump_dir_name, unsigned timeout_sec, const char - /* Limit bt depth. With no limit, gdb sometimes OOMs the machine */ - unsigned bt_depth = 1024; - const char *thread_apply_all = "thread apply all -ascending"; -- const char *full = " full"; -+ const char *full = "full "; - char *bt = NULL; - while (1) - { -- args[bt_cmd_index] = xasprintf("%s backtrace %u%s", thread_apply_all, bt_depth, full); -+ args[bt_cmd_index] = xasprintf("%s backtrace %s%u", thread_apply_all, full, bt_depth); - bt = exec_vp(args, /*redirect_stderr:*/ 1, timeout_sec, NULL); - free(args[bt_cmd_index]); - if ((bt && strnlen(bt, 256*1024) < 256*1024) || bt_depth <= 32) --- -2.19.0 - diff --git a/abrt.spec b/abrt.spec index e68abcf..ec33193 100644 --- a/abrt.spec +++ b/abrt.spec @@ -60,19 +60,11 @@ Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.10.10 -Release: 5%{?dist} +Version: 2.11.0 +Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz -# Backported fix for https://bugzilla.redhat.com/show_bug.cgi?id=1629408 -Patch0: 0001-lib-Correct-the-syntax-for-gdb-backtrace-command.patch -# Backport: fix use of deprecated function (breaks build, as -Werror is used) -Patch1: 0001-gui-Replace-deprecated-g_type_class_add_private.patch -# Backport: fix missing argument error in harvest_vmcore -Patch2: 0001-harvest_vmcore-Fix-missing-argument-error-during-del.patch -# Backport: ccpp: add %h and %e parameter into abrt-hook-ccpp -Patch3: 0001-ccpp-add-h-and-e-parameter-into-abrt-hook-ccpp.patch BuildRequires: %{dbus_devel} BuildRequires: gtk3-devel BuildRequires: glib2-devel >= 2.43 @@ -612,10 +604,6 @@ to the shell %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 %build autoconf @@ -1267,6 +1255,18 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Mon Oct 08 2018 Martin Kutlak 2.11.0-1 +- Translation updates +- plugins: Allow abrt-retrace-client to be optional at build time +- daemon: Fix double closed fd race condition +- sosreport: plugin "general" split into two new plugins +- plugins: Replace vfork with posix_spawn +- gui-config: Remove deprecated GTK functions +- abrtd.service: force abrt-dbus to load changes from conf +- spec: Build python*-abrt-addon packages as noarch +- spec: remove duplicated python3-devel +- spec: set PYTHON variable because of ./py-compile + * Sat Sep 15 2018 Adam Williamson - 2.10.10-5 - Backport fix for RHBZ #1629408 (failed gdb backtrace generation) - Backport fix for deprecated function use (broke build) diff --git a/sources b/sources index 6e603ef..455b996 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.10.10.tar.gz) = 1a9183346257bde09d69b2da032472d16661637124635e4959f47d1ec3272b550651f584e6e2c16893b25b906458c86379c3ee6cdbd1cba025bc9a71018048df +SHA512 (abrt-2.11.0.tar.gz) = 1c322fcc1cabda687bc428cfe8e717cc060409996c3c19172426b5718fe3cb18836924f4b0f99adf8adabba984d9d92df96e8f17c9e0d537bfb6cd4c7aac7c33 From 746f3887d614881678f841960c8f88c8c75c104d Mon Sep 17 00:00:00 2001 From: Matej Marusak Date: Tue, 8 Jan 2019 11:19:43 +0100 Subject: [PATCH 02/11] New upstream release Signed-off-by: Matej Marusak --- .gitignore | 1 + abrt.spec | 89 ++++++++++++++++++++++++++++++------------------------ sources | 2 +- 3 files changed, 52 insertions(+), 40 deletions(-) diff --git a/.gitignore b/.gitignore index e2076f2..7bd2baf 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,4 @@ abrt-1.1.13.tar.gz /abrt-2.10.9.tar.gz /abrt-2.10.10.tar.gz /abrt-2.11.0.tar.gz +/abrt-2.11.1.tar.gz diff --git a/abrt.spec b/abrt.spec index ec33193..2d39a36 100644 --- a/abrt.spec +++ b/abrt.spec @@ -25,12 +25,6 @@ # build abrt-atomic subpackage %bcond_without atomic -%ifarch aarch64 -%define have_kexec_tools 0 -%else -%define have_kexec_tools 1 -%endif - # rpmbuild --define 'desktopvendor mystring' %if "x%{desktopvendor}" == "x" %define desktopvendor %(source /etc/os-release; echo ${ID}) @@ -39,12 +33,10 @@ %if 0%{?suse_version} %define dbus_devel dbus-1-devel %define libjson_devel libjson-devel -%define nss_devel mozilla-nss-devel %define shadow_utils pwdutils %else %define dbus_devel dbus-devel %define libjson_devel json-c-devel -%define nss_devel nss-devel %define shadow_utils shadow-utils %endif @@ -55,17 +47,18 @@ %define docdirversion -%{version} %endif -%define libreport_ver 2.9.3 +%define libreport_ver 2.9.7 %define satyr_ver 0.24 Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.11.0 +Version: 2.11.1 Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz BuildRequires: %{dbus_devel} +BuildRequires: hostname BuildRequires: gtk3-devel BuildRequires: glib2-devel >= 2.43 BuildRequires: rpm-devel >= 4.6 @@ -76,7 +69,7 @@ BuildRequires: gettext BuildRequires: libxml2-devel BuildRequires: intltool BuildRequires: libtool -BuildRequires: %{nss_devel} +BuildRequires: libsoup-devel BuildRequires: asciidoc BuildRequires: doxygen BuildRequires: xmlto @@ -187,6 +180,7 @@ Development libraries and headers for %{name}. %package gui-libs Summary: Libraries for %{name}-gui +Requires: %{name}-libs = %{version}-%{release} %description gui-libs Libraries for %{name}-gui. @@ -241,6 +235,7 @@ Requires: python2-libreport %endif # with python2 %endif # with python3 + %description addon-ccpp This package contains %{name}'s C/C++ analyzer plugin. @@ -258,6 +253,7 @@ Requires: %{name} = %{version}-%{release} Requires: xz Requires: tar Requires: p11-kit-trust +Requires: libsoup %description retrace-client This package contains the client application for Retrace server @@ -286,7 +282,6 @@ Requires: abrt-libs = %{version}-%{release} This package contains plugin for collecting Xorg crash information from Xorg log. -%if %{?have_kexec_tools} == 1 %package addon-vmcore Summary: %{name}'s vmcore addon Requires: %{name} = %{version}-%{release} @@ -306,7 +301,6 @@ Requires: util-linux %description addon-vmcore This package contains plugin for collecting kernel crash information from vmcore files. -%endif %package addon-pstoreoops Summary: %{name}'s pstore oops addon @@ -381,7 +375,7 @@ programs in container. %package plugin-sosreport Summary: %{name}'s plugin for building automatic sosreports -Requires: sos +Requires: sos >= 3.6 Requires: %{name} = %{version}-%{release} %description plugin-sosreport @@ -430,9 +424,7 @@ Requires: %{name} = %{version}-%{release} Requires: abrt-tui Requires: abrt-addon-kerneloops Requires: abrt-addon-pstoreoops -%if %{?have_kexec_tools} == 1 Requires: abrt-addon-vmcore -%endif Requires: abrt-addon-ccpp %if %{with python3} Requires: python3-abrt-addon @@ -470,9 +462,7 @@ Summary: Virtual package to make easy default installation on desktop environmen Requires: %{name} = %{version}-%{release} Requires: abrt-addon-kerneloops Requires: abrt-addon-pstoreoops -%if %{?have_kexec_tools} == 1 Requires: abrt-addon-vmcore -%endif Requires: abrt-addon-ccpp %if %{with python3} Requires: python3-abrt-addon @@ -509,6 +499,7 @@ environment. %package atomic Summary: Package to make easy default installation on Atomic hosts. Requires: %{name}-addon-coredump-helper = %{version}-%{release} +Requires: %{name}-libs = %{version}-%{release} Conflicts: %{name}-addon-ccpp %description atomic @@ -627,11 +618,8 @@ CFLAGS="%{optflags} -Werror" %configure \ --enable-suggest-autoreporting \ --enable-authenticated-autoreporting \ %endif -%ifnarch arm armhfp armv7hl armv7l aarch64 +%ifnarch %{arm} --enable-native-unwinder \ -%endif -%if %{?have_kexec_tools} == 0 - --disable-addon-vmcore \ %endif --with-defaultdumplocation=/var/%{var_base_dir}/abrt \ --enable-doxygen-docs \ @@ -642,7 +630,9 @@ make %{?_smp_mflags} %install make install DESTDIR=$RPM_BUILD_ROOT \ +%if %{with python3} PYTHON=%{__python3} \ +%endif # with python3 mandir=%{_mandir} \ dbusabrtdocdir=%{_defaultdocdir}/%{name}-dbus%{docdirversion}/html/ @@ -665,9 +655,9 @@ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/abrt desktop-file-install \ --dir ${RPM_BUILD_ROOT}%{_datadir}/applications \ - src/applet/abrt-applet.desktop + src/applet/org.freedesktop.problems.applet.desktop -ln -sf %{_datadir}/applications/abrt-applet.desktop ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart/ +ln -sf %{_datadir}/applications/org.freedesktop.problems.applet.desktop ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart/ # After everything is installed, remove info dir rm -f %{buildroot}%{_infodir}/dir @@ -718,11 +708,9 @@ chown -R abrt:abrt %{_localstatedir}/cache/abrt-di %journal_catalog_update %endif # with python3 -%if %{?have_kexec_tools} == 1 %post addon-vmcore %systemd_post abrt-vmcore.service %journal_catalog_update -%endif %post addon-pstoreoops %systemd_post abrt-pstoreoops.service @@ -743,10 +731,8 @@ chown -R abrt:abrt %{_localstatedir}/cache/abrt-di %preun addon-xorg %systemd_preun abrt-xorg.service -%if %{?have_kexec_tools} == 1 %preun addon-vmcore %systemd_preun abrt-vmcore.service -%endif %preun addon-pstoreoops %systemd_preun abrt-pstoreoops.service @@ -767,10 +753,8 @@ chown -R abrt:abrt %{_localstatedir}/cache/abrt-di %postun addon-xorg %systemd_postun_with_restart abrt-xorg.service -%if %{?have_kexec_tools} == 1 %postun addon-vmcore %systemd_postun_with_restart abrt-vmcore.service -%endif %postun addon-pstoreoops %systemd_postun_with_restart abrt-pstoreoops.service @@ -874,7 +858,6 @@ service abrt-oops condrestart >/dev/null 2>&1 || : %posttrans addon-xorg service abrt-xorg condrestart >/dev/null 2>&1 || : -%if %{?have_kexec_tools} == 1 %posttrans addon-vmcore service abrt-vmcore condrestart >/dev/null 2>&1 || : # Copy the configuration file to plugin's directory @@ -883,7 +866,6 @@ test -f /etc/abrt/abrt-harvest-vmcore.conf && { mv -b /etc/abrt/abrt-harvest-vmcore.conf /etc/abrt/plugins/vmcore.conf } exit 0 -%endif %posttrans addon-pstoreoops service abrt-pstoreoops condrestart >/dev/null 2>&1 || : @@ -990,8 +972,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_bindir}/abrt-applet %{_bindir}/system-config-abrt #%%{_bindir}/test-report -%{_datadir}/applications/abrt-applet.desktop -%config(noreplace) %{_sysconfdir}/xdg/autostart/abrt-applet.desktop +%{_datadir}/applications/org.freedesktop.problems.applet.desktop +%config(noreplace) %{_sysconfdir}/xdg/autostart/org.freedesktop.problems.applet.desktop +%{_datadir}/dbus-1/services/org.freedesktop.problems.applet.service %{_mandir}/man1/abrt-applet.1* %{_mandir}/man1/system-config-abrt.1* @@ -1098,7 +1081,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man1/abrt-dump-xorg.1* %{_mandir}/man1/abrt-dump-journal-xorg.1* -%if %{?have_kexec_tools} == 1 %files addon-vmcore %config(noreplace) %{_sysconfdir}/libreport/events.d/vmcore_event.conf %{_mandir}/man5/vmcore_event.conf.5* @@ -1116,7 +1098,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man1/abrt-action-check-oops-for-hw-error.1* %{_journalcatalogdir}/abrt_vmcore.catalog %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_vmcore_format.conf -%endif %files addon-pstoreoops %{_unitdir}/abrt-pstoreoops.service @@ -1219,10 +1200,13 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.abrt.xml %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.ccpp.xml %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.oops.xml +%if %{with python2} %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.python.xml -%if %{?have_kexec_tools} == 1 +%endif # with python2 +%if %{with python3} +%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.python3.xml +%endif # with python3 %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.vmcore.xml -%endif %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.xorg.xml %{_datadir}/dbus-1/system-services/org.freedesktop.problems.service %{_datadir}/dbus-1/system-services/com.redhat.problems.configuration.service @@ -1239,7 +1223,7 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man5/abrt-python.5* %files -n python2-abrt-doc -%{python2_sitelib}/problem_examples +%{python_sitelib}/problem_examples %endif # with python2 %if %{with python3} @@ -1255,6 +1239,33 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Tue Jan 08 2019 Matej Marusak 2.11.1-1 +- Translation updates +- a-a-install-debuginfo: Clean cache if we need space +- shellcheck: Use command instead of type +- shellcheck: Check exit code directly with if mycmd +- shellcheck: Suppress shellcheck warning SC1090 +- shellcheck: Use $(...) instead of legacy backticked +- cli: Add a shebang +- applet: Port to GApplication/GNotification +- spec: Add explicit package-version requirement of abrt-libs +- Introduce pylintrc +- augeas: Adjust testsuite to changes in libreport +- signal_is_fatal: generate problem reports for SIGSYS +- plugins: retrace-client: Port to libsoup +- plugins: retrace-client: Fix copy-paste error +- revert: spec: disable addon-vmcore on aarch64 +- spec: turn on --enable-native-unwinder aarch64 +- configure: Replace sphinx-build check with sphinx-build-3 +- a-a-c-o-f-hw-error: Check systemd-journal for MCE logs +- koops: Filter kernel oopses based on logged hostname +- add hostname BR for tests +- add new prepare-data to dist files +- fix tests names for dist target after making templates from them +- fix for MCE events: Bug 1613182 - abrt-cli ignores rsyslog host info and incorrectly assumes that the receiving host had a problem +- dbus: Add configuration for Python3 +- Add . to etc + * Mon Oct 08 2018 Martin Kutlak 2.11.0-1 - Translation updates - plugins: Allow abrt-retrace-client to be optional at build time diff --git a/sources b/sources index 455b996..e43da5f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.11.0.tar.gz) = 1c322fcc1cabda687bc428cfe8e717cc060409996c3c19172426b5718fe3cb18836924f4b0f99adf8adabba984d9d92df96e8f17c9e0d537bfb6cd4c7aac7c33 +SHA512 (abrt-2.11.1.tar.gz) = d2388bb1123e50ef1c8875e2feeeb8ab6830035e13362fe4f30b39207454c866a0c80412deef05e109814f42efc0c2d51eed4ee3fdc468f4b8eb340acff96226 From 09dd0e27177f614d080282b3e4c0cd88199c208f Mon Sep 17 00:00:00 2001 From: Matej Marusak Date: Tue, 8 Jan 2019 14:41:38 +0100 Subject: [PATCH 03/11] Update to work with new glib Signed-off-by: Matej Marusak --- ...bus-task-Use-modern-GLib-type-macros.patch | 299 ++++++++++++++++++ abrt.spec | 8 +- 2 files changed, 306 insertions(+), 1 deletion(-) create mode 100644 0001-dbus-task-Use-modern-GLib-type-macros.patch diff --git a/0001-dbus-task-Use-modern-GLib-type-macros.patch b/0001-dbus-task-Use-modern-GLib-type-macros.patch new file mode 100644 index 0000000..f188eeb --- /dev/null +++ b/0001-dbus-task-Use-modern-GLib-type-macros.patch @@ -0,0 +1,299 @@ +From 21bdee77727417b6b16feed7b466953873319b58 Mon Sep 17 00:00:00 2001 +From: Ernestas Kulik +Date: Tue, 8 Jan 2019 14:26:15 +0100 +Subject: [PATCH] dbus: task: Use modern GLib type macros + +Signed-off-by: Ernestas Kulik +--- + src/dbus/abrt_problems2_task.c | 111 ++++++++++++++++++++++++--------- + src/dbus/abrt_problems2_task.h | 26 +------- + 2 files changed, 82 insertions(+), 55 deletions(-) + +diff --git a/src/dbus/abrt_problems2_task.c b/src/dbus/abrt_problems2_task.c +index f40381f6..cba6b469 100644 +--- a/src/dbus/abrt_problems2_task.c ++++ b/src/dbus/abrt_problems2_task.c +@@ -25,6 +25,15 @@ enum { + + static guint s_signals[SN_LAST_SIGNAL] = { 0 }; + ++struct _AbrtP2TaskPrivate ++{ ++ gint32 p2t_status; ++ GVariant *p2t_details; ++ GVariant *p2t_results; ++ gint32 p2t_code; ++ GCancellable *p2t_cancellable; ++}; ++ + G_DEFINE_TYPE_WITH_PRIVATE(AbrtP2Task, abrt_p2_task, G_TYPE_OBJECT) + + static void abrt_p2_task_finalize(GObject *gobject) +@@ -74,17 +83,24 @@ static void abrt_p2_task_class_init(AbrtP2TaskClass *klass) + + static void abrt_p2_task_init(AbrtP2Task *self) + { +- self->pv = abrt_p2_task_get_instance_private(self); +- self->pv->p2t_details = g_variant_new("a{sv}", NULL); ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(self); ++ ++ pv->p2t_details = g_variant_new("a{sv}", NULL); + } + + static void abrt_p2_task_change_status(AbrtP2Task *task, + AbrtP2TaskStatus status) + { +- if (task->pv->p2t_status == status) ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ if (pv->p2t_status == status) + return; + +- task->pv->p2t_status = status; ++ pv->p2t_status = status; + + g_signal_emit(task, + s_signals[SN_STATUS_CHANGED], +@@ -94,53 +110,77 @@ static void abrt_p2_task_change_status(AbrtP2Task *task, + + AbrtP2TaskStatus abrt_p2_task_status(AbrtP2Task *task) + { +- return task->pv->p2t_status; ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ return pv->p2t_status; + } + + GVariant *abrt_p2_task_details(AbrtP2Task *task) + { +- return g_variant_ref(task->pv->p2t_details); ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ return g_variant_ref(pv->p2t_details); + } + + void abrt_p2_task_add_detail(AbrtP2Task *task, + const char *key, + GVariant *value) + { ++ AbrtP2TaskPrivate *pv; + GVariantDict dict; +- g_variant_dict_init(&dict, task->pv->p2t_details); ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ g_variant_dict_init(&dict, pv->p2t_details); + g_variant_dict_insert(&dict, key, "v", value); + +- if (task->pv->p2t_details) +- g_variant_unref(task->pv->p2t_details); ++ if (pv->p2t_details) ++ g_variant_unref(pv->p2t_details); + +- task->pv->p2t_details = g_variant_dict_end(&dict); ++ pv->p2t_details = g_variant_dict_end(&dict); + } + + void abrt_p2_task_set_response(AbrtP2Task *task, + GVariant *response) + { +- if (task->pv->p2t_results != NULL) ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ if (pv->p2t_results != NULL) + log_warning("Task already has response assigned"); + +- task->pv->p2t_results = response; ++ pv->p2t_results = response; + } + + bool abrt_p2_task_is_cancelled(AbrtP2Task *task) + { +- return (task->pv->p2t_cancellable +- && g_cancellable_is_cancelled(task->pv->p2t_cancellable)) +- || task->pv->p2t_status == ABRT_P2_TASK_STATUS_CANCELED; ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ return (pv->p2t_cancellable ++ && g_cancellable_is_cancelled(pv->p2t_cancellable)) ++ || pv->p2t_status == ABRT_P2_TASK_STATUS_CANCELED; + } + + void abrt_p2_task_cancel(AbrtP2Task *task, + GError **error) + { ++ AbrtP2TaskPrivate *pv; ++ + if (abrt_p2_task_is_cancelled(task)) + return; + +- if (task->pv->p2t_status == ABRT_P2_TASK_STATUS_RUNNING) +- g_cancellable_cancel(task->pv->p2t_cancellable); +- else if (task->pv->p2t_status == ABRT_P2_TASK_STATUS_STOPPED) ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ if (pv->p2t_status == ABRT_P2_TASK_STATUS_RUNNING) ++ g_cancellable_cancel(pv->p2t_cancellable); ++ else if (pv->p2t_status == ABRT_P2_TASK_STATUS_STOPPED) + { + ABRT_P2_TASK_VIRTUAL_CANCEL(task, error); + +@@ -157,8 +197,12 @@ void abrt_p2_task_finish(AbrtP2Task *task, + gint32 *code, + GError **error) + { +- if ( task->pv->p2t_status != ABRT_P2_TASK_STATUS_DONE +- && task->pv->p2t_status != ABRT_P2_TASK_STATUS_FAILED) ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ if ( pv->p2t_status != ABRT_P2_TASK_STATUS_DONE ++ && pv->p2t_status != ABRT_P2_TASK_STATUS_FAILED) + { + g_set_error(error, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, + "Cannot finalize undone task"); +@@ -170,12 +214,12 @@ void abrt_p2_task_finish(AbrtP2Task *task, + if (*error != NULL) + return; + +- if (task->pv->p2t_results) +- *result = g_variant_ref(task->pv->p2t_results); ++ if (pv->p2t_results) ++ *result = g_variant_ref(pv->p2t_results); + else + *result = g_variant_new("a{sv}", NULL); + +- *code = task->pv->p2t_code; ++ *code = pv->p2t_code; + } + + static void abrt_p2_task_finish_gtask(GObject *source_object, +@@ -183,6 +227,7 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, + gpointer user_data) + { + AbrtP2Task *task = ABRT_P2_TASK(source_object); ++ AbrtP2TaskPrivate *pv; + + if (!g_task_is_valid(result, task)) + { +@@ -190,6 +235,8 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, + return; + } + ++ pv = abrt_p2_task_get_instance_private(task); ++ + GError *error = NULL; + const gint32 code = g_task_propagate_int(G_TASK(result), &error); + +@@ -203,7 +250,7 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, + { + log_debug("Task done"); + +- task->pv->p2t_code = code - ABRT_P2_TASK_CODE_DONE; ++ pv->p2t_code = code - ABRT_P2_TASK_CODE_DONE; + abrt_p2_task_change_status(task, ABRT_P2_TASK_STATUS_DONE); + } + else if (abrt_p2_task_is_cancelled(task)) +@@ -263,8 +310,8 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, + abrt_p2_task_change_status(task, ABRT_P2_TASK_STATUS_FAILED); + } + +- g_object_unref(task->pv->p2t_cancellable); +- task->pv->p2t_cancellable = NULL; ++ g_object_unref(pv->p2t_cancellable); ++ pv->p2t_cancellable = NULL; + } + + static void abrt_p2_task_thread(GTask *task, +@@ -289,8 +336,12 @@ void abrt_p2_task_start(AbrtP2Task *task, + GVariant *options, + GError **error) + { +- if ( task->pv->p2t_status != ABRT_P2_TASK_STATUS_NEW +- && task->pv->p2t_status != ABRT_P2_TASK_STATUS_STOPPED) ++ AbrtP2TaskPrivate *pv; ++ ++ pv = abrt_p2_task_get_instance_private(task); ++ ++ if ( pv->p2t_status != ABRT_P2_TASK_STATUS_NEW ++ && pv->p2t_status != ABRT_P2_TASK_STATUS_STOPPED) + { + g_set_error(error, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, + "Cannot start task that is not new or stopped"); +@@ -302,9 +353,9 @@ void abrt_p2_task_start(AbrtP2Task *task, + if (*error != NULL) + return; + +- task->pv->p2t_cancellable = g_cancellable_new(); ++ pv->p2t_cancellable = g_cancellable_new(); + GTask *gtask = g_task_new(task, +- task->pv->p2t_cancellable, ++ pv->p2t_cancellable, + abrt_p2_task_finish_gtask, + NULL); + +diff --git a/src/dbus/abrt_problems2_task.h b/src/dbus/abrt_problems2_task.h +index 71f765d9..717af47b 100644 +--- a/src/dbus/abrt_problems2_task.h ++++ b/src/dbus/abrt_problems2_task.h +@@ -45,21 +45,12 @@ G_BEGIN_DECLS + GType abrt_p2_task_get_type (void); + + #define ABRT_TYPE_P2_TASK (abrt_p2_task_get_type ()) +-#define ABRT_P2_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ABRT_TYPE_P2_TASK, AbrtP2Task)) +-#define ABRT_P2_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ABRT_TYPE_P2_TASK, AbrtP2TaskClass)) +-#define ABRT_IS_P2_TASK(obj)(G_TYPE_CHECK_INSTANCE_TYPE ((obj), ABRT_TYPE_P2_TASK)) +-#define ABRT_IS_P2_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ABRT_TYPE_P2_TASK)) +-#define ABRT_P2_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ABRT_TYPE_P2_TASK, AbrtP2TaskClass)) ++G_DECLARE_DERIVABLE_TYPE(AbrtP2Task, abrt_p2_task, ABRT, P2_TASK, GObject) + + typedef struct _AbrtP2Task AbrtP2Task; + typedef struct _AbrtP2TaskClass AbrtP2TaskClass; + typedef struct _AbrtP2TaskPrivate AbrtP2TaskPrivate; + +-static inline void glib_autoptr_cleanup_AbrtP2Task(AbrtP2Task **task) +-{ +- glib_autoptr_cleanup_GObject((GObject **)task); +-} +- + typedef enum { + ABRT_P2_TASK_STATUS_NEW, + ABRT_P2_TASK_STATUS_RUNNING, +@@ -96,21 +87,6 @@ struct _AbrtP2TaskClass + gpointer padding[12]; + }; + +-struct _AbrtP2TaskPrivate +-{ +- gint32 p2t_status; +- GVariant *p2t_details; +- GVariant *p2t_results; +- gint32 p2t_code; +- GCancellable *p2t_cancellable; +-}; +- +-struct _AbrtP2Task +-{ +- GObject parent_instance; +- AbrtP2TaskPrivate *pv; +-}; +- + AbrtP2TaskStatus abrt_p2_task_status(AbrtP2Task *task); + + /* Returns task details in form of key-value entries. +-- +2.20.1 + diff --git a/abrt.spec b/abrt.spec index 2d39a36..7fb2611 100644 --- a/abrt.spec +++ b/abrt.spec @@ -53,10 +53,13 @@ Summary: Automatic bug detection and reporting tool Name: abrt Version: 2.11.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz +# With new glib it is not possible to build in rawhide +# https://github.com/abrt/abrt/commit/21bdee7 +Patch0: 0001-dbus-task-Use-modern-GLib-type-macros.patch BuildRequires: %{dbus_devel} BuildRequires: hostname BuildRequires: gtk3-devel @@ -1239,6 +1242,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Tue Jan 08 2019 Matej Marusak 2.11.1-2 +- dbus: task: Use modern GLib type macros + * Tue Jan 08 2019 Matej Marusak 2.11.1-1 - Translation updates - a-a-install-debuginfo: Clean cache if we need space From 609473ef014c4957d364a867a73172c2e3db5604 Mon Sep 17 00:00:00 2001 From: Matej Marusak Date: Sat, 12 Jan 2019 12:39:07 +0100 Subject: [PATCH 04/11] Fix use after free in applet Fixes BZ#1665521 Signed-off-by: Matej Marusak --- ...pplet-application-Fix-use-after-free.patch | 38 +++++++++++++++++++ abrt.spec | 6 ++- 2 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 0002-applet-application-Fix-use-after-free.patch diff --git a/0002-applet-application-Fix-use-after-free.patch b/0002-applet-application-Fix-use-after-free.patch new file mode 100644 index 0000000..f68ec6f --- /dev/null +++ b/0002-applet-application-Fix-use-after-free.patch @@ -0,0 +1,38 @@ +From cf78b299371995cbd7607a536f4b1469c09b40cf Mon Sep 17 00:00:00 2001 +From: Ernestas Kulik +Date: Sat, 12 Jan 2019 10:50:24 +0100 +Subject: [PATCH] applet: application: Fix use after free +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +dirlist_name is erroneously freed before it’s used to create a +directory. + +Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1665521 + +Signed-off-by: Ernestas Kulik +--- + src/applet/abrt-applet-application.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/applet/abrt-applet-application.c b/src/applet/abrt-applet-application.c +index 6e7ac00a..4b1d9a3c 100644 +--- a/src/applet/abrt-applet-application.c ++++ b/src/applet/abrt-applet-application.c +@@ -296,10 +296,10 @@ new_dir_exists (GList **new_dirs) + cachedir = g_get_user_cache_dir (); + dirlist_name = concat_path_file (cachedir, "abrt"); + +- g_free (dirlist_name); +- + g_mkdir_with_parents (dirlist_name, 0777); + ++ g_free (dirlist_name); ++ + dirlist_name = concat_path_file (cachedir, "abrt/applet_dirlist"); + fp = fopen (dirlist_name, "r+"); + if (fp == NULL) +-- +2.20.1 + diff --git a/abrt.spec b/abrt.spec index 7fb2611..8ed6b8e 100644 --- a/abrt.spec +++ b/abrt.spec @@ -53,13 +53,14 @@ Summary: Automatic bug detection and reporting tool Name: abrt Version: 2.11.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz # With new glib it is not possible to build in rawhide # https://github.com/abrt/abrt/commit/21bdee7 Patch0: 0001-dbus-task-Use-modern-GLib-type-macros.patch +Patch1: 0002-applet-application-Fix-use-after-free.patch BuildRequires: %{dbus_devel} BuildRequires: hostname BuildRequires: gtk3-devel @@ -597,7 +598,8 @@ A small script which prints a count of detected problems when someone logs in to the shell %prep -%setup -q +%global __scm_apply_git(qp:m:) %{__git} am --exclude doc/design --exclude doc/project/abrt.tex +%autosetup -S git -p 0 %build autoconf From 49589fc28f9856a51569f12f18a6b7e5ff58f47e Mon Sep 17 00:00:00 2001 From: Ernestas Kulik Date: Mon, 14 Jan 2019 08:41:34 +0100 Subject: [PATCH 05/11] Require git for building MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since we’re applying git patches, this is still needed. --- abrt.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/abrt.spec b/abrt.spec index 8ed6b8e..e537633 100644 --- a/abrt.spec +++ b/abrt.spec @@ -61,6 +61,8 @@ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.ta # https://github.com/abrt/abrt/commit/21bdee7 Patch0: 0001-dbus-task-Use-modern-GLib-type-macros.patch Patch1: 0002-applet-application-Fix-use-after-free.patch +# Needed when applying git patches. +BuildRequires: git BuildRequires: %{dbus_devel} BuildRequires: hostname BuildRequires: gtk3-devel From a0a7c14959a6c89de5c65b2a6b103916ca9c73b0 Mon Sep 17 00:00:00 2001 From: Ernestas Kulik Date: Mon, 4 Feb 2019 14:27:10 +0100 Subject: [PATCH 06/11] Update to 2.12.0 Signed-off-by: Ernestas Kulik --- .gitignore | 1 + ...bus-task-Use-modern-GLib-type-macros.patch | 299 ------------------ ...pplet-application-Fix-use-after-free.patch | 38 --- abrt.spec | 19 +- sources | 2 +- 5 files changed, 12 insertions(+), 347 deletions(-) delete mode 100644 0001-dbus-task-Use-modern-GLib-type-macros.patch delete mode 100644 0002-applet-application-Fix-use-after-free.patch diff --git a/.gitignore b/.gitignore index 7bd2baf..16e185b 100644 --- a/.gitignore +++ b/.gitignore @@ -64,3 +64,4 @@ abrt-1.1.13.tar.gz /abrt-2.10.10.tar.gz /abrt-2.11.0.tar.gz /abrt-2.11.1.tar.gz +/abrt-2.12.0.tar.gz diff --git a/0001-dbus-task-Use-modern-GLib-type-macros.patch b/0001-dbus-task-Use-modern-GLib-type-macros.patch deleted file mode 100644 index f188eeb..0000000 --- a/0001-dbus-task-Use-modern-GLib-type-macros.patch +++ /dev/null @@ -1,299 +0,0 @@ -From 21bdee77727417b6b16feed7b466953873319b58 Mon Sep 17 00:00:00 2001 -From: Ernestas Kulik -Date: Tue, 8 Jan 2019 14:26:15 +0100 -Subject: [PATCH] dbus: task: Use modern GLib type macros - -Signed-off-by: Ernestas Kulik ---- - src/dbus/abrt_problems2_task.c | 111 ++++++++++++++++++++++++--------- - src/dbus/abrt_problems2_task.h | 26 +------- - 2 files changed, 82 insertions(+), 55 deletions(-) - -diff --git a/src/dbus/abrt_problems2_task.c b/src/dbus/abrt_problems2_task.c -index f40381f6..cba6b469 100644 ---- a/src/dbus/abrt_problems2_task.c -+++ b/src/dbus/abrt_problems2_task.c -@@ -25,6 +25,15 @@ enum { - - static guint s_signals[SN_LAST_SIGNAL] = { 0 }; - -+struct _AbrtP2TaskPrivate -+{ -+ gint32 p2t_status; -+ GVariant *p2t_details; -+ GVariant *p2t_results; -+ gint32 p2t_code; -+ GCancellable *p2t_cancellable; -+}; -+ - G_DEFINE_TYPE_WITH_PRIVATE(AbrtP2Task, abrt_p2_task, G_TYPE_OBJECT) - - static void abrt_p2_task_finalize(GObject *gobject) -@@ -74,17 +83,24 @@ static void abrt_p2_task_class_init(AbrtP2TaskClass *klass) - - static void abrt_p2_task_init(AbrtP2Task *self) - { -- self->pv = abrt_p2_task_get_instance_private(self); -- self->pv->p2t_details = g_variant_new("a{sv}", NULL); -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(self); -+ -+ pv->p2t_details = g_variant_new("a{sv}", NULL); - } - - static void abrt_p2_task_change_status(AbrtP2Task *task, - AbrtP2TaskStatus status) - { -- if (task->pv->p2t_status == status) -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ if (pv->p2t_status == status) - return; - -- task->pv->p2t_status = status; -+ pv->p2t_status = status; - - g_signal_emit(task, - s_signals[SN_STATUS_CHANGED], -@@ -94,53 +110,77 @@ static void abrt_p2_task_change_status(AbrtP2Task *task, - - AbrtP2TaskStatus abrt_p2_task_status(AbrtP2Task *task) - { -- return task->pv->p2t_status; -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ return pv->p2t_status; - } - - GVariant *abrt_p2_task_details(AbrtP2Task *task) - { -- return g_variant_ref(task->pv->p2t_details); -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ return g_variant_ref(pv->p2t_details); - } - - void abrt_p2_task_add_detail(AbrtP2Task *task, - const char *key, - GVariant *value) - { -+ AbrtP2TaskPrivate *pv; - GVariantDict dict; -- g_variant_dict_init(&dict, task->pv->p2t_details); -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ g_variant_dict_init(&dict, pv->p2t_details); - g_variant_dict_insert(&dict, key, "v", value); - -- if (task->pv->p2t_details) -- g_variant_unref(task->pv->p2t_details); -+ if (pv->p2t_details) -+ g_variant_unref(pv->p2t_details); - -- task->pv->p2t_details = g_variant_dict_end(&dict); -+ pv->p2t_details = g_variant_dict_end(&dict); - } - - void abrt_p2_task_set_response(AbrtP2Task *task, - GVariant *response) - { -- if (task->pv->p2t_results != NULL) -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ if (pv->p2t_results != NULL) - log_warning("Task already has response assigned"); - -- task->pv->p2t_results = response; -+ pv->p2t_results = response; - } - - bool abrt_p2_task_is_cancelled(AbrtP2Task *task) - { -- return (task->pv->p2t_cancellable -- && g_cancellable_is_cancelled(task->pv->p2t_cancellable)) -- || task->pv->p2t_status == ABRT_P2_TASK_STATUS_CANCELED; -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ return (pv->p2t_cancellable -+ && g_cancellable_is_cancelled(pv->p2t_cancellable)) -+ || pv->p2t_status == ABRT_P2_TASK_STATUS_CANCELED; - } - - void abrt_p2_task_cancel(AbrtP2Task *task, - GError **error) - { -+ AbrtP2TaskPrivate *pv; -+ - if (abrt_p2_task_is_cancelled(task)) - return; - -- if (task->pv->p2t_status == ABRT_P2_TASK_STATUS_RUNNING) -- g_cancellable_cancel(task->pv->p2t_cancellable); -- else if (task->pv->p2t_status == ABRT_P2_TASK_STATUS_STOPPED) -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ if (pv->p2t_status == ABRT_P2_TASK_STATUS_RUNNING) -+ g_cancellable_cancel(pv->p2t_cancellable); -+ else if (pv->p2t_status == ABRT_P2_TASK_STATUS_STOPPED) - { - ABRT_P2_TASK_VIRTUAL_CANCEL(task, error); - -@@ -157,8 +197,12 @@ void abrt_p2_task_finish(AbrtP2Task *task, - gint32 *code, - GError **error) - { -- if ( task->pv->p2t_status != ABRT_P2_TASK_STATUS_DONE -- && task->pv->p2t_status != ABRT_P2_TASK_STATUS_FAILED) -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ if ( pv->p2t_status != ABRT_P2_TASK_STATUS_DONE -+ && pv->p2t_status != ABRT_P2_TASK_STATUS_FAILED) - { - g_set_error(error, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, - "Cannot finalize undone task"); -@@ -170,12 +214,12 @@ void abrt_p2_task_finish(AbrtP2Task *task, - if (*error != NULL) - return; - -- if (task->pv->p2t_results) -- *result = g_variant_ref(task->pv->p2t_results); -+ if (pv->p2t_results) -+ *result = g_variant_ref(pv->p2t_results); - else - *result = g_variant_new("a{sv}", NULL); - -- *code = task->pv->p2t_code; -+ *code = pv->p2t_code; - } - - static void abrt_p2_task_finish_gtask(GObject *source_object, -@@ -183,6 +227,7 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, - gpointer user_data) - { - AbrtP2Task *task = ABRT_P2_TASK(source_object); -+ AbrtP2TaskPrivate *pv; - - if (!g_task_is_valid(result, task)) - { -@@ -190,6 +235,8 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, - return; - } - -+ pv = abrt_p2_task_get_instance_private(task); -+ - GError *error = NULL; - const gint32 code = g_task_propagate_int(G_TASK(result), &error); - -@@ -203,7 +250,7 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, - { - log_debug("Task done"); - -- task->pv->p2t_code = code - ABRT_P2_TASK_CODE_DONE; -+ pv->p2t_code = code - ABRT_P2_TASK_CODE_DONE; - abrt_p2_task_change_status(task, ABRT_P2_TASK_STATUS_DONE); - } - else if (abrt_p2_task_is_cancelled(task)) -@@ -263,8 +310,8 @@ static void abrt_p2_task_finish_gtask(GObject *source_object, - abrt_p2_task_change_status(task, ABRT_P2_TASK_STATUS_FAILED); - } - -- g_object_unref(task->pv->p2t_cancellable); -- task->pv->p2t_cancellable = NULL; -+ g_object_unref(pv->p2t_cancellable); -+ pv->p2t_cancellable = NULL; - } - - static void abrt_p2_task_thread(GTask *task, -@@ -289,8 +336,12 @@ void abrt_p2_task_start(AbrtP2Task *task, - GVariant *options, - GError **error) - { -- if ( task->pv->p2t_status != ABRT_P2_TASK_STATUS_NEW -- && task->pv->p2t_status != ABRT_P2_TASK_STATUS_STOPPED) -+ AbrtP2TaskPrivate *pv; -+ -+ pv = abrt_p2_task_get_instance_private(task); -+ -+ if ( pv->p2t_status != ABRT_P2_TASK_STATUS_NEW -+ && pv->p2t_status != ABRT_P2_TASK_STATUS_STOPPED) - { - g_set_error(error, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, - "Cannot start task that is not new or stopped"); -@@ -302,9 +353,9 @@ void abrt_p2_task_start(AbrtP2Task *task, - if (*error != NULL) - return; - -- task->pv->p2t_cancellable = g_cancellable_new(); -+ pv->p2t_cancellable = g_cancellable_new(); - GTask *gtask = g_task_new(task, -- task->pv->p2t_cancellable, -+ pv->p2t_cancellable, - abrt_p2_task_finish_gtask, - NULL); - -diff --git a/src/dbus/abrt_problems2_task.h b/src/dbus/abrt_problems2_task.h -index 71f765d9..717af47b 100644 ---- a/src/dbus/abrt_problems2_task.h -+++ b/src/dbus/abrt_problems2_task.h -@@ -45,21 +45,12 @@ G_BEGIN_DECLS - GType abrt_p2_task_get_type (void); - - #define ABRT_TYPE_P2_TASK (abrt_p2_task_get_type ()) --#define ABRT_P2_TASK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ABRT_TYPE_P2_TASK, AbrtP2Task)) --#define ABRT_P2_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ABRT_TYPE_P2_TASK, AbrtP2TaskClass)) --#define ABRT_IS_P2_TASK(obj)(G_TYPE_CHECK_INSTANCE_TYPE ((obj), ABRT_TYPE_P2_TASK)) --#define ABRT_IS_P2_TASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ABRT_TYPE_P2_TASK)) --#define ABRT_P2_TASK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ABRT_TYPE_P2_TASK, AbrtP2TaskClass)) -+G_DECLARE_DERIVABLE_TYPE(AbrtP2Task, abrt_p2_task, ABRT, P2_TASK, GObject) - - typedef struct _AbrtP2Task AbrtP2Task; - typedef struct _AbrtP2TaskClass AbrtP2TaskClass; - typedef struct _AbrtP2TaskPrivate AbrtP2TaskPrivate; - --static inline void glib_autoptr_cleanup_AbrtP2Task(AbrtP2Task **task) --{ -- glib_autoptr_cleanup_GObject((GObject **)task); --} -- - typedef enum { - ABRT_P2_TASK_STATUS_NEW, - ABRT_P2_TASK_STATUS_RUNNING, -@@ -96,21 +87,6 @@ struct _AbrtP2TaskClass - gpointer padding[12]; - }; - --struct _AbrtP2TaskPrivate --{ -- gint32 p2t_status; -- GVariant *p2t_details; -- GVariant *p2t_results; -- gint32 p2t_code; -- GCancellable *p2t_cancellable; --}; -- --struct _AbrtP2Task --{ -- GObject parent_instance; -- AbrtP2TaskPrivate *pv; --}; -- - AbrtP2TaskStatus abrt_p2_task_status(AbrtP2Task *task); - - /* Returns task details in form of key-value entries. --- -2.20.1 - diff --git a/0002-applet-application-Fix-use-after-free.patch b/0002-applet-application-Fix-use-after-free.patch deleted file mode 100644 index f68ec6f..0000000 --- a/0002-applet-application-Fix-use-after-free.patch +++ /dev/null @@ -1,38 +0,0 @@ -From cf78b299371995cbd7607a536f4b1469c09b40cf Mon Sep 17 00:00:00 2001 -From: Ernestas Kulik -Date: Sat, 12 Jan 2019 10:50:24 +0100 -Subject: [PATCH] applet: application: Fix use after free -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -dirlist_name is erroneously freed before it’s used to create a -directory. - -Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1665521 - -Signed-off-by: Ernestas Kulik ---- - src/applet/abrt-applet-application.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/applet/abrt-applet-application.c b/src/applet/abrt-applet-application.c -index 6e7ac00a..4b1d9a3c 100644 ---- a/src/applet/abrt-applet-application.c -+++ b/src/applet/abrt-applet-application.c -@@ -296,10 +296,10 @@ new_dir_exists (GList **new_dirs) - cachedir = g_get_user_cache_dir (); - dirlist_name = concat_path_file (cachedir, "abrt"); - -- g_free (dirlist_name); -- - g_mkdir_with_parents (dirlist_name, 0777); - -+ g_free (dirlist_name); -+ - dirlist_name = concat_path_file (cachedir, "abrt/applet_dirlist"); - fp = fopen (dirlist_name, "r+"); - if (fp == NULL) --- -2.20.1 - diff --git a/abrt.spec b/abrt.spec index e537633..bdfc58b 100644 --- a/abrt.spec +++ b/abrt.spec @@ -52,15 +52,11 @@ Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.11.1 -Release: 3%{?dist} +Version: 2.12.0 +Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz -# With new glib it is not possible to build in rawhide -# https://github.com/abrt/abrt/commit/21bdee7 -Patch0: 0001-dbus-task-Use-modern-GLib-type-macros.patch -Patch1: 0002-applet-application-Fix-use-after-free.patch # Needed when applying git patches. BuildRequires: git BuildRequires: %{dbus_devel} @@ -604,11 +600,13 @@ to the shell %autosetup -S git -p 0 %build -autoconf - %define var_base_dir spool -CFLAGS="%{optflags} -Werror" %configure \ +./gen-version +autoreconf -if +intltoolize --automake -c -f + +%configure \ %if %{without python2} --without-python2 \ %endif # with python2 @@ -1246,6 +1244,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Mon Feb 4 2019 Ernestas Kulik - 2.12.0-1 +- Update to 2.12.0 + * Tue Jan 08 2019 Matej Marusak 2.11.1-2 - dbus: task: Use modern GLib type macros diff --git a/sources b/sources index e43da5f..9217d6b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.11.1.tar.gz) = d2388bb1123e50ef1c8875e2feeeb8ab6830035e13362fe4f30b39207454c866a0c80412deef05e109814f42efc0c2d51eed4ee3fdc468f4b8eb340acff96226 +SHA512 (abrt-2.12.0.tar.gz) = 3567332399cd9708505a6d05c9388c7da5c14c7432e6fd40e5e76b6bcea8859c17b3b6c52a96ce54740e3682d75d8bf77dbc5fede80bd4fc6f72c60014f9cded From a80913acdd66292c30678f510bba01552731eb96 Mon Sep 17 00:00:00 2001 From: Ernestas Kulik Date: Tue, 5 Feb 2019 16:47:12 +0100 Subject: [PATCH 07/11] Bump dependencies Forgot to do that the first time. Signed-off-by: Ernestas Kulik --- abrt.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/abrt.spec b/abrt.spec index bdfc58b..3730820 100644 --- a/abrt.spec +++ b/abrt.spec @@ -47,13 +47,13 @@ %define docdirversion -%{version} %endif -%define libreport_ver 2.9.7 +%define libreport_ver 2.10.0 %define satyr_ver 0.24 Summary: Automatic bug detection and reporting tool Name: abrt Version: 2.12.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz @@ -62,7 +62,7 @@ BuildRequires: git BuildRequires: %{dbus_devel} BuildRequires: hostname BuildRequires: gtk3-devel -BuildRequires: glib2-devel >= 2.43 +BuildRequires: glib2-devel >= 2.43.4 BuildRequires: rpm-devel >= 4.6 BuildRequires: desktop-file-utils BuildRequires: libnotify-devel @@ -1244,6 +1244,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Tue Feb 5 2019 Ernestas Kulik - 2.12.0-2 +- Bump glib and libreport dependencies + * Mon Feb 4 2019 Ernestas Kulik - 2.12.0-1 - Update to 2.12.0 From ba28be0b0f3382158302ea47d2b7ed49e629fa8d Mon Sep 17 00:00:00 2001 From: Martin Kutlak Date: Wed, 3 Jul 2019 17:45:54 +0200 Subject: [PATCH 08/11] New upstream release version 2.12.1 * Remove gen-version from spec - This is upstream script to generate version. This is not needed in dist-git. [2.12.1] Added - Require dbus-tools for dbus-send command. Changed - ABRT won't process crashes coming from unpackaged applications by default. - Completely removed support for Python2. - Update new ABRT icon. - retrace-client defaults to https. - Updated man pages. - Removed configurations from /usr/share/abrt. - Removed provides for abrt-python packages. Fixed - Gracefully handle exceptions comming from abrt-action-generate-machine-id. - Gracefully handle exceptions comming from abrt-action-install-debuginfo. - Use correct name of environment variable for retrace-server. Signed-off-by: Martin Kutlak --- .gitignore | 1 + abrt.spec | 222 ++++++++++++----------------------------------------- sources | 2 +- 3 files changed, 49 insertions(+), 176 deletions(-) diff --git a/.gitignore b/.gitignore index 16e185b..740a5ff 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,4 @@ abrt-1.1.13.tar.gz /abrt-2.11.0.tar.gz /abrt-2.11.1.tar.gz /abrt-2.12.0.tar.gz +/abrt-2.12.1.tar.gz diff --git a/abrt.spec b/abrt.spec index 3730820..54021a4 100644 --- a/abrt.spec +++ b/abrt.spec @@ -9,13 +9,6 @@ %bcond_with python3 %endif -%if 0%{?rhel} > 7 || 0%{?fedora} > 28 -# Disable python2 build by default -%bcond_with python2 -%else -%bcond_without python2 -%endif - %if 0%{?rhel}%{?suse_version} %bcond_with bodhi %else @@ -52,8 +45,8 @@ Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.12.0 -Release: 2%{?dist} +Version: 2.12.1 +Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz @@ -79,13 +72,6 @@ BuildRequires: libreport-devel >= %{libreport_ver} BuildRequires: satyr-devel >= %{satyr_ver} BuildRequires: augeas BuildRequires: libselinux-devel -%if %{with python2} -BuildRequires: python2-devel -BuildRequires: python2-systemd -BuildRequires: python2-argcomplete -BuildRequires: python2-argh -BuildRequires: python2-humanize -%endif # with python2 %if %{with python3} BuildRequires: python3-devel BuildRequires: python3-systemd @@ -111,11 +97,6 @@ Requires(pre): %{shadow_utils} %if %{with python3} Requires: python3-augeas Requires: python3-dbus -%else -%if %{with python2} -Requires: python2-augeas -Requires: python2-dbus -%endif # with python2 %endif # with python3 %ifarch aarch64 i686 x86_64 Requires: dmidecode @@ -146,13 +127,6 @@ BuildRequires: libreport-web-devel >= %{libreport_ver} BuildRequires: gdb-headless #dbus BuildRequires: polkit-devel -%if %{with python2} -#python2-abrt -BuildRequires: python2-sphinx -BuildRequires: python2-libreport -#python2-abrt-doc -BuildRequires: python2-devel -%endif # with python2 %if %{with python3} #python3-abrt BuildRequires: python3-nose @@ -231,10 +205,6 @@ Requires: %{name}-addon-coredump-helper = %{version}-%{release} Requires: abrt-libs = %{version}-%{release} %if %{with python3} Requires: python3-libreport -%else -%if %{with python2} -Requires: python2-libreport -%endif # with python2 %endif # with python3 @@ -292,11 +262,6 @@ Requires: kexec-tools %if %{with python3} Requires: python3-abrt Requires: python3-augeas -%else -%if %{with python2} -Requires: python2-abrt -Requires: python2-augeas -%endif # with python2 %endif # with python3 Requires: util-linux @@ -325,41 +290,12 @@ Provides: libreport-plugin-bodhi = %{version}-%{release} Search for a new updates in bodhi server. %endif -%if %{with python2} -%package -n python2-abrt-addon -Summary: %{name}'s addon for catching and analyzing Python exceptions -Requires: %{name} = %{version}-%{release} -Requires: python2-systemd -Requires: python2-abrt -# Remove before F30 -Provides: abrt-addon-python = %{version}-%{release} -Provides: abrt-addon-python%{?_isa} = %{version}-%{release} -Obsoletes: abrt-addon-python < 2.10.4 - -%description -n python2-abrt-addon -This package contains python hook and python analyzer plugin for handling -uncaught exception in python programs. - -%package -n python2-abrt-container-addon -Summary: %{name}'s container addon for catching Python 2 exceptions -Conflicts: python2-abrt-addon -Requires: container-exception-logger - -%description -n python2-abrt-container-addon -This package contains python 2 hook and handling uncaught exception in python 2 -programs in container. -%endif # with python2 - %if %{with python3} %package -n python3-abrt-addon Summary: %{name}'s addon for catching and analyzing Python 3 exceptions Requires: %{name} = %{version}-%{release} Requires: python3-systemd Requires: python3-abrt -# Remove before F30 -Provides: abrt-addon-python3 = %{version}-%{release} -Provides: abrt-addon-python3%{?_isa} = %{version}-%{release} -Obsoletes: abrt-addon-python3 < 2.10.4 %description -n python3-abrt-addon This package contains python 3 hook and python analyzer plugin for handling @@ -513,47 +449,12 @@ hosts. Summary: ABRT DBus service Requires: %{name} = %{version}-%{release} Requires: abrt-libs = %{version}-%{release} +Requires: dbus-tools %description dbus ABRT DBus service which provides org.freedesktop.problems API on dbus and uses PolicyKit to authorize to access the problem data. -%if %{with python2} -%package -n python2-abrt -Summary: ABRT Python API -Requires: %{name} = %{version}-%{release} -Requires: %{name}-libs = %{version}-%{release} -Requires: %{name}-dbus = %{version}-%{release} -Requires: python2-dbus -Requires: python2-libreport -%if 0%{?rhel:%{rhel} == 7} -Requires: python-gobject-base -%else -Requires: python2-gobject-base -%endif -%{?python_provide:%python_provide python2-abrt} -# Remove before F30 -Provides: %{name}-python = %{version}-%{release} -Provides: %{name}-python%{?_isa} = %{version}-%{release} -Obsoletes: %{name}-python < 2.10.4 - -%description -n python2-abrt -High-level API for querying, creating and manipulating -problems handled by ABRT in Python. - -%package -n python2-abrt-doc -Summary: ABRT Python API Documentation -BuildArch: noarch -Requires: %{name} = %{version}-%{release} -Requires: python2-abrt = %{version}-%{release} -# Remove before F30 -Provides: %{name}-python-doc = %{version}-%{release} -Obsoletes: %{name}-python-doc < 2.10.4 - -%description -n python2-abrt-doc -Examples and documentation for ABRT Python API. -%endif # with python2 - %if %{with python3} %package -n python3-abrt Summary: ABRT Python 3 API @@ -562,11 +463,6 @@ Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-dbus = %{version}-%{release} Requires: python3-dbus Requires: python3-libreport -%{?python_provide:%python_provide python3-abrt} -# Remove before F30 -Provides: %{name}-python3 = %{version}-%{release} -Provides: %{name}-python3%{?_isa} = %{version}-%{release} -Obsoletes: %{name}-python3 < 2.10.4 Requires: python3-gobject-base %description -n python3-abrt @@ -578,9 +474,6 @@ Summary: ABRT Python API Documentation BuildArch: noarch Requires: %{name} = %{version}-%{release} Requires: python3-%{name} = %{version}-%{release} -# Remove before F30 -Provides: %{name}-python3-doc = %{version}-%{release} -Obsoletes: %{name}-python3-doc < 2.10.4 %description -n python3-abrt-doc Examples and documentation for ABRT Python 3 API. @@ -602,14 +495,10 @@ to the shell %build %define var_base_dir spool -./gen-version autoreconf -if intltoolize --automake -c -f %configure \ -%if %{without python2} - --without-python2 \ -%endif # with python2 %if %{without python3} --without-python3 \ %endif # with python3 @@ -703,11 +592,6 @@ chown -R abrt:abrt %{_localstatedir}/cache/abrt-di %systemd_post abrt-xorg.service %journal_catalog_update -%if %{with python2} -%post -n python2-abrt-addon -%journal_catalog_update -%endif # with python2 - %if %{with python3} %post -n python3-abrt-addon %journal_catalog_update @@ -777,25 +661,15 @@ if [ -f /etc/abrt/plugins/CCpp.conf ]; then mv /etc/abrt/plugins/CCpp.conf /etc/abrt/plugins/CCpp.conf.rpmsave.atomic || exit 1; fi ln -sf /etc/abrt/plugins/CCpp_Atomic.conf /etc/abrt/plugins/CCpp.conf -if [ -f /usr/share/abrt/conf.d/plugins/CCpp.conf ]; then - mv /usr/share/abrt/conf.d/plugins/CCpp.conf /usr/share/abrt/conf.d/plugins/CCpp.conf.rpmsave.atomic || exit 1; -fi -ln -sf /usr/share/abrt/conf.d/plugins/CCpp_Atomic.conf /usr/share/abrt/conf.d/plugins/CCpp.conf %systemd_post abrt-coredump-helper.service %preun atomic if [ -L /etc/abrt/plugins/CCpp.conf ]; then rm /etc/abrt/plugins/CCpp.conf fi -if [ -L /usr/share/abrt/conf.d/plugins/CCpp.conf ]; then - rm /usr/share/abrt/conf.d/plugins/CCpp.conf -fi if [ -f /etc/abrt/plugins/CCpp.conf.rpmsave.atomic ]; then mv /etc/abrt/plugins/CCpp.conf.rpmsave.atomic /etc/abrt/plugins/CCpp.conf || exit 1 fi -if [ -f /usr/share/abrt/conf.d/plugins/CCpp.conf.rpmsave.atomic ]; then - mv /usr/share/abrt/conf.d/plugins/CCpp.conf.rpmsave.atomic /usr/share/abrt/conf.d/plugins/CCpp.conf || exit 1 -fi %postun atomic %systemd_postun_with_restart abrt-coredump-helper.service @@ -905,12 +779,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_bindir}/abrt-action-analyze-xorg %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.problems.daemon.conf %config(noreplace) %{_sysconfdir}/%{name}/abrt-action-save-package-data.conf -%{_datadir}/%{name}/conf.d/abrt-action-save-package-data.conf %config(noreplace) %{_sysconfdir}/%{name}/plugins/xorg.conf -%{_datadir}/%{name}/conf.d/plugins/xorg.conf %{_mandir}/man5/abrt-xorg.conf.5* %config(noreplace) %{_sysconfdir}/%{name}/gpg_keys.conf -%{_datadir}/%{name}/conf.d/gpg_keys.conf %{_mandir}/man5/gpg_keys.conf.5* %config(noreplace) %{_sysconfdir}/libreport/events.d/abrt_event.conf %{_mandir}/man5/abrt_event.conf.5* @@ -937,13 +808,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %files libs %{_libdir}/libabrt.so.* %config(noreplace) %{_sysconfdir}/%{name}/abrt.conf -%{_datadir}/%{name}/conf.d/abrt.conf %{_mandir}/man5/abrt.conf.5* %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/plugins -%dir %{_datadir}/%{name} -%dir %{_datadir}/%{name}/conf.d -%dir %{_datadir}/%{name}/conf.d/plugins # filesystem package should own /usr/share/augeas/lenses directory %{_datadir}/augeas/lenses/abrt.aug @@ -971,8 +838,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %dir %{_datadir}/%{name} # all glade, gtkbuilder and py files for gui %{_datadir}/icons/hicolor/*/apps/* -%{_datadir}/icons/hicolor/*/status/* -%{_datadir}/%{name}/icons/hicolor/*/status/* %{_datadir}/%{name}/ui/* %{_bindir}/abrt-applet %{_bindir}/system-config-abrt @@ -990,7 +855,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %files addon-ccpp %dir %attr(0775, abrt, abrt) %{_localstatedir}/cache/abrt-di %config(noreplace) %{_sysconfdir}/%{name}/plugins/CCpp.conf -%{_datadir}/%{name}/conf.d/plugins/CCpp.conf %{_mandir}/man5/abrt-CCpp.conf.5* %{_libexecdir}/abrt-gdb-exploitable %{_journalcatalogdir}/abrt_ccpp.catalog @@ -1062,7 +926,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_koops_format.conf %{_mandir}/man5/koops_event.conf.5* %config(noreplace) %{_sysconfdir}/%{name}/plugins/oops.conf -%{_datadir}/%{name}/conf.d/plugins/oops.conf %{_unitdir}/abrt-oops.service %dir %{_localstatedir}/lib/abrt @@ -1090,7 +953,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/libreport/events.d/vmcore_event.conf %{_mandir}/man5/vmcore_event.conf.5* %config(noreplace) %{_sysconfdir}/%{name}/plugins/vmcore.conf -%{_datadir}/%{name}/conf.d/plugins/vmcore.conf %{_datadir}/libreport/events/analyze_VMcore.xml %{_unitdir}/abrt-vmcore.service %{_sbindir}/abrt-harvest-vmcore @@ -1111,30 +973,12 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man1/abrt-harvest-pstoreoops.1* %{_mandir}/man1/abrt-merge-pstoreoops.1* -%if %{with python2} -%files -n python2-abrt-addon -%config(noreplace) %{_sysconfdir}/%{name}/plugins/python.conf -%{_datadir}/%{name}/conf.d/plugins/python.conf -%{_mandir}/man5/abrt-python.conf.5* -%config(noreplace) %{_sysconfdir}/libreport/events.d/python_event.conf -%{_journalcatalogdir}/abrt_python.catalog -%config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_python_format.conf -%{_mandir}/man5/python_event.conf.5* -%{python2_sitearch}/abrt.pth -%{python2_sitearch}/abrt_exception_handler.* - -%files -n python2-abrt-container-addon -%{python2_sitearch}/abrt_container.pth -%{python2_sitearch}/abrt_exception_handler_container.* -%endif # with python2 - %if %{with python3} %files -n python3-abrt-addon %config(noreplace) %{_sysconfdir}/%{name}/plugins/python3.conf -%{_datadir}/%{name}/conf.d/plugins/python3.conf -%{_mandir}/man5/abrt-python3.conf.5* +%{_mandir}/man5/python3-abrt.conf.5* %config(noreplace) %{_sysconfdir}/libreport/events.d/python3_event.conf -%{_journalcatalogdir}/abrt_python3.catalog +%{_journalcatalogdir}/python3_abrt.catalog %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_python3_format.conf %{_mandir}/man5/python3_event.conf.5* %{python3_sitearch}/abrt3.pth @@ -1174,7 +1018,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %files atomic %config(noreplace) %{_sysconfdir}/%{name}/plugins/CCpp_Atomic.conf %{_unitdir}/abrt-coredump-helper.service -%{_datadir}/%{name}/conf.d/plugins/CCpp_Atomic.conf %config(noreplace) %{_sysconfdir}/%{name}/abrt-action-save-package-data.conf %{_bindir}/abrt-action-save-package-data %{_mandir}/man1/abrt-action-save-package-data.1* @@ -1205,9 +1048,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.abrt.xml %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.ccpp.xml %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.oops.xml -%if %{with python2} -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.python.xml -%endif # with python2 %if %{with python3} %{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.python3.xml %endif # with python3 @@ -1222,19 +1062,10 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_defaultdocdir}/%{name}-dbus%{docdirversion}/html/*.css %config(noreplace) %{_sysconfdir}/libreport/events.d/abrt_dbus_event.conf -%if %{with python2} -%files -n python2-abrt -%{python2_sitearch}/problem/ -%{_mandir}/man5/abrt-python.5* - -%files -n python2-abrt-doc -%{python_sitelib}/problem_examples -%endif # with python2 - %if %{with python3} %files -n python3-abrt %{python3_sitearch}/problem/ -%{_mandir}/man5/abrt-python3.5* +%{_mandir}/man5/python3-abrt.5* %files -n python3-abrt-doc %{python3_sitelib}/problem_examples @@ -1244,6 +1075,47 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Wed Jul 03 2019 Martin Kutlak 2.12.1-1 +- Translation updates +- Rename all abrt-python to python3-abrt +- spec: Get rid of python provides +- hooks: abrt-hook-ccpp: Rename CreateCoreBacktrace setting +- Update icon +- non-fatal-mce: prepare oops1.test from template before using it +- meaningful-logs: check relative counts of lines instead of absolute +- oops-processing: fixed oops1.test handling. reworked so each oops has its own phase +- dumpoops: make sure hostname matches in oops_full_hostname.test +- Revert "applet: Add systemd service unit" +- a-a-analyze-c: Fix segfault when saving function name +- Fix grammar in implementation docs +- doc: Update man pages and mention locations of config files +- augeas,build,spec: Remove references to default configs +- daemon,lib: Update default config according to abrt.conf +- plugins: abrt-action-install-debuginfo: Replace uses of exit() +- plugins: abrt-action-install-debuginfo: Catch BrokenPipeError +- plugins: abrt-action-install-debuginfo: Remove unused imports +- daemon: Check return value after reading from channel +- spec: Require dbus-tools +- daemon: Don't process crashes from unpackaged apps by default +- plugins: abrt-action-install-debuginfo: Remove duplicate code +- plugins: abrt-action-install-debuginfo: Remove variable +- plugins: abrt-action-install-debuginfo: Remove comment +- plugins: abrt-action-install-debuginfo: Remove dead assignment +- doc: Fix spelling mistake in path to cache +- doc: Update man page for abrt-handle-upload +- doc: Update man page and help for a-a-install-debuginfo +- Nuke Python 2 support +- plugins: Catch unhandled exception in a-a-g-machine-id +- plugins: retrace-client: Bail out if we can’t get a config +- plugins: retrace-client: Default to HTTPS in RETRACE_SERVER_URI +- plugins: analyze_RetraceServer: Fix default RETRACE_SERVER_URI +- plugins: Fix name of env variable for retrace server +- configure.ac: Add dependency on libcap +- dbus: entry: Don’t claim truncation when there was none +- applet: Add systemd service unit +- spec: Remove obsolete scriptlets +- Makefile.am: Use correct locale when getting date + * Tue Feb 5 2019 Ernestas Kulik - 2.12.0-2 - Bump glib and libreport dependencies diff --git a/sources b/sources index 9217d6b..7f2ac7a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.12.0.tar.gz) = 3567332399cd9708505a6d05c9388c7da5c14c7432e6fd40e5e76b6bcea8859c17b3b6c52a96ce54740e3682d75d8bf77dbc5fede80bd4fc6f72c60014f9cded +SHA512 (abrt-2.12.1.tar.gz) = e5a8ceed76c152523932bfa626e20ce110ecd7d1c87b421ef99986c4782f537b1e4af6d93d73abca7187a7d67592a4b820bd3bcc93f02bc7ee025054eacb5738 From 2e900184c438bb0713ed515e5090f1e6bade632e Mon Sep 17 00:00:00 2001 From: Ernestas Kulik Date: Thu, 1 Aug 2019 14:13:10 +0200 Subject: [PATCH 09/11] Update to 2.12.2 Signed-off-by: Ernestas Kulik --- .gitignore | 1 + abrt.spec | 35 ++++++++++++++++------------------- sources | 2 +- 3 files changed, 18 insertions(+), 20 deletions(-) diff --git a/.gitignore b/.gitignore index 740a5ff..2b791ec 100644 --- a/.gitignore +++ b/.gitignore @@ -66,3 +66,4 @@ abrt-1.1.13.tar.gz /abrt-2.11.1.tar.gz /abrt-2.12.0.tar.gz /abrt-2.12.1.tar.gz +/abrt-2.12.2.tar.gz diff --git a/abrt.spec b/abrt.spec index 54021a4..e369643 100644 --- a/abrt.spec +++ b/abrt.spec @@ -45,7 +45,7 @@ Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.12.1 +Version: 2.12.2 Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ @@ -334,28 +334,21 @@ Requires: %{name} = %{version}-%{release} Requires: libreport-cli >= %{libreport_ver} Requires: abrt-libs = %{version}-%{release} Requires: abrt-dbus - -%description tui -This package contains a simple command line client for processing abrt reports -in command line environment. - %if %{with python3} -%package cli-ng -Summary: %{name}'s improved command line interface -Requires: %{name} = %{version}-%{release} -Requires: libreport-cli >= %{libreport_ver} -Requires: abrt-libs = %{version}-%{release} -Requires: abrt-dbus Requires: python3-abrt Requires: abrt-addon-ccpp Requires: python3-argh Requires: python3-argcomplete Requires: python3-humanize -%description cli-ng -New generation command line interface for ABRT +Provides: %{name}-cli-ng = %{version}-%{release} +Obsoletes: %{name}-cli-ng < 2.12.2 %endif # with python3 +%description tui +This package contains a simple command line client for processing abrt reports +in command line environment. + %package cli Summary: Virtual package to make easy default installation on non-graphical environments Requires: %{name} = %{version}-%{release} @@ -509,7 +502,6 @@ intltoolize --automake -c -f --without-atomic \ %endif %if 0%{?rhel} - --enable-suggest-autoreporting \ --enable-authenticated-autoreporting \ %endif %ifnarch %{arm} @@ -552,6 +544,10 @@ desktop-file-install \ src/applet/org.freedesktop.problems.applet.desktop ln -sf %{_datadir}/applications/org.freedesktop.problems.applet.desktop ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart/ +%if %{with python3} +ln -sf %{_bindir}/abrt %{buildroot}%{_bindir}/abrt-cli +ln -sf %{_mandir}/man1/abrt.1 %{buildroot}%{_mandir}/man1/abrt-cli.1 +%endif # After everything is installed, remove info dir rm -f %{buildroot}%{_infodir}/dir @@ -1001,15 +997,13 @@ killall abrt-dbus >/dev/null 2>&1 || : %files cli %files tui -%{_bindir}/abrt-cli -%{_mandir}/man1/abrt-cli.1* - %if %{with python3} -%files cli-ng %config(noreplace) %{_sysconfdir}/bash_completion.d/abrt.bash_completion %{_bindir}/abrt +%{_bindir}/abrt-cli %{python3_sitearch}/abrtcli/ %{_mandir}/man1/abrt.1* +%{_mandir}/man1/abrt-cli.1* %endif # with python3 %files desktop @@ -1075,6 +1069,9 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Thu Aug 01 2019 Ernestas Kulik 2.12.2-1 +- Remove old CLI and move cli-ng subpackage files into tui subpackage + * Wed Jul 03 2019 Martin Kutlak 2.12.1-1 - Translation updates - Rename all abrt-python to python3-abrt diff --git a/sources b/sources index 7f2ac7a..8be0927 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.12.1.tar.gz) = e5a8ceed76c152523932bfa626e20ce110ecd7d1c87b421ef99986c4782f537b1e4af6d93d73abca7187a7d67592a4b820bd3bcc93f02bc7ee025054eacb5738 +SHA512 (abrt-2.12.2.tar.gz) = 8a6c1d718cce43a94de1d397d8a6bc9c24bb100081c9e4d4e9fb0441356991e3e8d7da066212ebbee8774e3a416c0e41e17713ced5ffb0c1f63588527e7dc983 From 2a9e14ca2d845bd07d7054a4019b62401368e55e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= Date: Fri, 11 Oct 2019 16:32:47 +0200 Subject: [PATCH 10/11] New upstream release 2.13.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matěj Grabovský --- .gitignore | 1 + abrt.spec | 178 ++++++++++++++++++++++++++--------------------------- sources | 2 +- 3 files changed, 88 insertions(+), 93 deletions(-) diff --git a/.gitignore b/.gitignore index 2b791ec..6268042 100644 --- a/.gitignore +++ b/.gitignore @@ -67,3 +67,4 @@ abrt-1.1.13.tar.gz /abrt-2.12.0.tar.gz /abrt-2.12.1.tar.gz /abrt-2.12.2.tar.gz +/abrt-2.13.0.tar.gz diff --git a/abrt.spec b/abrt.spec index e369643..e18ddea 100644 --- a/abrt.spec +++ b/abrt.spec @@ -18,6 +18,9 @@ # build abrt-atomic subpackage %bcond_without atomic +# build abrt-retrace-client by default +%bcond_without retrace + # rpmbuild --define 'desktopvendor mystring' %if "x%{desktopvendor}" == "x" %define desktopvendor %(source /etc/os-release; echo ${ID}) @@ -45,7 +48,7 @@ Summary: Automatic bug detection and reporting tool Name: abrt -Version: 2.12.2 +Version: 2.13.0 Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ @@ -76,9 +79,6 @@ BuildRequires: libselinux-devel BuildRequires: python3-devel BuildRequires: python3-systemd BuildRequires: python3-argcomplete -BuildRequires: python3-argh -BuildRequires: python3-humanize -BuildRequires: python3-devel %endif # with python3 Requires: libreport >= %{libreport_ver} @@ -184,28 +184,23 @@ Requires: abrt-gui-libs = %{version}-%{release} %description gui GTK+ wizard for convenient bug reporting. -%package addon-coredump-helper -Summary: %{name}'s /proc/sys/kernel/core_pattern helper -Requires: abrt-libs = %{version}-%{release} - -%description addon-coredump-helper -This package contains hook for C/C++ crashed programs. - %package addon-ccpp Summary: %{name}'s C/C++ addon Requires: cpio Requires: gdb-headless Requires: elfutils %if 0%{!?rhel:1} +%if %{with retrace} # abrt-action-perform-ccpp-analysis wants to run analyze_RetraceServer: Requires: %{name}-retrace-client %endif +%endif Requires: %{name} = %{version}-%{release} -Requires: %{name}-addon-coredump-helper = %{version}-%{release} Requires: abrt-libs = %{version}-%{release} %if %{with python3} Requires: python3-libreport %endif # with python3 +Obsoletes: abrt-addon-coredump-helper <= 2.12.2 %description addon-ccpp @@ -219,6 +214,7 @@ Requires: abrt-libs = %{version}-%{release} %description addon-upload-watch This package contains hook for uploaded problems. +%if %{with retrace} %package retrace-client Summary: %{name}'s retrace client Requires: %{name} = %{version}-%{release} @@ -230,6 +226,7 @@ Requires: libsoup %description retrace-client This package contains the client application for Retrace server which is able to analyze C/C++ crashes remotely. +%endif %package addon-kerneloops Summary: %{name}'s kerneloops addon @@ -293,6 +290,7 @@ Search for a new updates in bodhi server. %if %{with python3} %package -n python3-abrt-addon Summary: %{name}'s addon for catching and analyzing Python 3 exceptions +BuildArch: noarch Requires: %{name} = %{version}-%{release} Requires: python3-systemd Requires: python3-abrt @@ -337,9 +335,7 @@ Requires: abrt-dbus %if %{with python3} Requires: python3-abrt Requires: abrt-addon-ccpp -Requires: python3-argh Requires: python3-argcomplete -Requires: python3-humanize Provides: %{name}-cli-ng = %{version}-%{release} Obsoletes: %{name}-cli-ng < 2.12.2 @@ -365,7 +361,9 @@ Requires: abrt-addon-xorg Requires: libreport-rhel >= %{libreport_ver} Requires: libreport-plugin-rhtsupport >= %{libreport_ver} %else +%if %{with retrace} Requires: abrt-retrace-client +%endif %if %{with bodhi} Requires: abrt-plugin-bodhi %endif @@ -406,7 +404,9 @@ Requires: gnome-abrt Requires: libreport-rhel >= %{libreport_ver} Requires: libreport-plugin-rhtsupport >= %{libreport_ver} %else +%if %{with retrace} Requires: abrt-retrace-client +%endif %if %{with bodhi} Requires: abrt-plugin-bodhi %endif @@ -429,7 +429,6 @@ environment. %if %{with atomic} %package atomic Summary: Package to make easy default installation on Atomic hosts. -Requires: %{name}-addon-coredump-helper = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} Conflicts: %{name}-addon-ccpp @@ -486,12 +485,11 @@ to the shell %autosetup -S git -p 0 %build -%define var_base_dir spool +autoconf -autoreconf -if -intltoolize --automake -c -f +%define default_dump_dir %{_localstatedir}/spool/abrt -%configure \ +CFLAGS="%{optflags} -Werror" %configure \ %if %{without python3} --without-python3 \ %endif # with python3 @@ -501,25 +499,27 @@ intltoolize --automake -c -f %if %{without atomic} --without-atomic \ %endif +%if %{without retrace} + --without-retrace \ +%endif %if 0%{?rhel} --enable-authenticated-autoreporting \ %endif %ifnarch %{arm} --enable-native-unwinder \ %endif - --with-defaultdumplocation=/var/%{var_base_dir}/abrt \ + --with-defaultdumplocation=%{default_dump_dir} \ --enable-doxygen-docs \ --enable-dump-time-unwind \ --disable-silent-rules -make %{?_smp_mflags} +%make_build %install -make install DESTDIR=$RPM_BUILD_ROOT \ +%make_install \ %if %{with python3} PYTHON=%{__python3} \ %endif # with python3 - mandir=%{_mandir} \ dbusabrtdocdir=%{_defaultdocdir}/%{name}-dbus%{docdirversion}/html/ %find_lang %{name} @@ -529,21 +529,21 @@ make install DESTDIR=$RPM_BUILD_ROOT \ # for those which needs to be byte-compiled with different # version (python2/python3). # rpm can do this work and use the appropriate python version. -find $RPM_BUILD_ROOT -name "*.py[co]" -delete +find %{buildroot} -name "*.py[co]" -delete # remove all .la and .a files -find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f -mkdir -p $RPM_BUILD_ROOT/var/cache/abrt-di -mkdir -p $RPM_BUILD_ROOT/var/run/abrt -mkdir -p $RPM_BUILD_ROOT/var/%{var_base_dir}/abrt -mkdir -p $RPM_BUILD_ROOT/var/spool/abrt-upload -mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/abrt +find %{buildroot} -name '*.la' -or -name '*.a' | xargs rm -f +mkdir -p %{buildroot}%{_localstatedir}/cache/abrt-di +mkdir -p %{buildroot}%{_localstatedir}/lib/abrt +mkdir -p %{buildroot}%{_localstatedir}/run/abrt +mkdir -p %{buildroot}%{_localstatedir}/spool/abrt-upload +mkdir -p %{buildroot}%{default_dump_dir} desktop-file-install \ - --dir ${RPM_BUILD_ROOT}%{_datadir}/applications \ + --dir %{buildroot}%{_datadir}/applications \ src/applet/org.freedesktop.problems.applet.desktop -ln -sf %{_datadir}/applications/org.freedesktop.problems.applet.desktop ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart/ +ln -sf %{_datadir}/applications/org.freedesktop.problems.applet.desktop %{buildroot}%{_sysconfdir}/xdg/autostart/ %if %{with python3} ln -sf %{_bindir}/abrt %{buildroot}%{_bindir}/abrt-cli ln -sf %{_mandir}/man1/abrt.1 %{buildroot}%{_mandir}/man1/abrt-cli.1 @@ -576,7 +576,6 @@ exit 0 # because /cache/abrt-di/* was created under root with root:root # so 2.x fails when it tries to extract debuginfo there.. chown -R abrt:abrt %{_localstatedir}/cache/abrt-di -%systemd_post abrt-ccpp.service %systemd_post abrt-journal-core.service %journal_catalog_update @@ -656,8 +655,6 @@ touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : if [ -f /etc/abrt/plugins/CCpp.conf ]; then mv /etc/abrt/plugins/CCpp.conf /etc/abrt/plugins/CCpp.conf.rpmsave.atomic || exit 1; fi -ln -sf /etc/abrt/plugins/CCpp_Atomic.conf /etc/abrt/plugins/CCpp.conf -%systemd_post abrt-coredump-helper.service %preun atomic if [ -L /etc/abrt/plugins/CCpp.conf ]; then @@ -666,9 +663,6 @@ fi if [ -f /etc/abrt/plugins/CCpp.conf.rpmsave.atomic ]; then mv /etc/abrt/plugins/CCpp.conf.rpmsave.atomic /etc/abrt/plugins/CCpp.conf || exit 1 fi - -%postun atomic -%systemd_postun_with_restart abrt-coredump-helper.service %endif # with atomic %if 0%{?fedora} > 27 || 0%{?rhel} > 7 @@ -694,29 +688,11 @@ fi service abrtd condrestart >/dev/null 2>&1 || : %posttrans addon-ccpp -# Migrate from abrt-ccpp.service to abrt-journal-core.service -# 'systemctl preset abrt-ccpp.service abrt-journal-core.service' -# is done only for installation by %systemd_post macro but not for package -# upgrade. Following lines affect changes in Fedora preset files in case of -# package upgrade and also starts abrt-journal-core.service and stops -# abrt-ccpp.service if abrt-ccpp.service is running. -# All this has to be done only once because some users want to use -# abrt-ccpp.service instead of the default abrt-journal-core.service. -# Hence we introduced a %{_localstatedir}/lib/abrt/abrt-migrated file to -# mark the migration was done. -if test ! -f %{_localstatedir}/lib/abrt/abrt-migrated ; then - systemctl --no-reload preset abrt-ccpp.service >/dev/null 2>&1 || : - systemctl --no-reload preset abrt-journal-core.service >/dev/null 2>&1 || : - if service abrt-ccpp status >/dev/null 2>&1 ; then - systemctl stop abrt-ccpp >/dev/null 2>&1 || : - systemctl start abrt-journal-core >/dev/null 2>&1 || : - fi - touch %{_localstatedir}/lib/abrt/abrt-migrated +# Regenerate core_backtraces because of missing crash threads +abrtdir=$(grep "^\s*DumpLocation\b" /etc/abrt/abrt.conf | tail -1 | cut -d'=' -f2 | tr -d ' ') +if test -z "$abrtdir"; then + abrtdir=%{default_dump_dir} fi -systemctl try-restart abrt-journal-core >/dev/null 2>&1 || : -systemctl try-restart abrt-ccpp >/dev/null 2>&1 || : -# Regenerate core_bactraces because of missing crash threads -abrtdir=$(grep "DumpLocation" /etc/abrt/abrt.conf | cut -d'=' -f2 | tr -d ' ') if test -d "$abrtdir"; then for DD in `find "$abrtdir" -mindepth 1 -maxdepth 1 -type d` do @@ -774,16 +750,14 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_bindir}/abrt-action-analyze-python %{_bindir}/abrt-action-analyze-xorg %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.problems.daemon.conf +%config(noreplace) %{_sysconfdir}/%{name}/abrt.conf %config(noreplace) %{_sysconfdir}/%{name}/abrt-action-save-package-data.conf -%config(noreplace) %{_sysconfdir}/%{name}/plugins/xorg.conf -%{_mandir}/man5/abrt-xorg.conf.5* %config(noreplace) %{_sysconfdir}/%{name}/gpg_keys.conf -%{_mandir}/man5/gpg_keys.conf.5* %config(noreplace) %{_sysconfdir}/libreport/events.d/abrt_event.conf %{_mandir}/man5/abrt_event.conf.5* %config(noreplace) %{_sysconfdir}/libreport/events.d/smart_event.conf %{_mandir}/man5/smart_event.conf.5* -%dir %attr(0751, root, abrt) %{_localstatedir}/%{var_base_dir}/%{name} +%dir %attr(0751, root, abrt) %{default_dump_dir} %dir %attr(0700, abrt, abrt) %{_localstatedir}/spool/%{name}-upload # abrtd runs as root %dir %attr(0755, root, root) %{_localstatedir}/run/%{name} @@ -797,16 +771,16 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man1/abrt-action-analyze-python.1* %{_mandir}/man1/abrt-action-analyze-xorg.1* %{_mandir}/man1/abrt-auto-reporting.1* -%{_mandir}/man8/abrtd.8* +%{_mandir}/man5/abrt.conf.5* %{_mandir}/man5/abrt-action-save-package-data.conf.5* -# {_mandir}/man5/pyhook.conf.5* +%{_mandir}/man5/gpg_keys.conf.5* +%{_mandir}/man8/abrtd.8* %files libs %{_libdir}/libabrt.so.* -%config(noreplace) %{_sysconfdir}/%{name}/abrt.conf -%{_mandir}/man5/abrt.conf.5* %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/plugins +%dir %{_datadir}/%{name} # filesystem package should own /usr/share/augeas/lenses directory %{_datadir}/augeas/lenses/abrt.aug @@ -844,19 +818,12 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man1/abrt-applet.1* %{_mandir}/man1/system-config-abrt.1* -%files addon-coredump-helper -%{_libexecdir}/abrt-hook-ccpp -%{_sbindir}/abrt-install-ccpp-hook - %files addon-ccpp %dir %attr(0775, abrt, abrt) %{_localstatedir}/cache/abrt-di %config(noreplace) %{_sysconfdir}/%{name}/plugins/CCpp.conf %{_mandir}/man5/abrt-CCpp.conf.5* %{_libexecdir}/abrt-gdb-exploitable -%{_journalcatalogdir}/abrt_ccpp.catalog -%config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_ccpp_format.conf %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_journal_ccpp_format.conf -%{_unitdir}/abrt-ccpp.service %{_unitdir}/abrt-journal-core.service %dir %{_localstatedir}/lib/abrt @@ -884,6 +851,7 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man5/vimrc_event.conf.5* %{_datadir}/libreport/events/analyze_CCpp.xml %{_datadir}/libreport/events/analyze_LocalGDB.xml +%{_datadir}/libreport/events/analyze_RetraceServer.xml %{_datadir}/libreport/events/collect_xsession_errors.xml %{_datadir}/libreport/events/collect_GConf.xml %{_datadir}/libreport/events/collect_vimrc_user.xml @@ -895,7 +863,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man*/abrt-action-generate-core-backtrace.* %{_mandir}/man*/abrt-action-analyze-backtrace.* %{_mandir}/man*/abrt-action-list-dsos.* -%{_mandir}/man*/abrt-install-ccpp-hook.* %{_mandir}/man*/abrt-action-install-debuginfo.* %{_mandir}/man*/abrt-action-analyze-ccpp-local.* %{_mandir}/man*/abrt-action-analyze-core.* @@ -909,12 +876,13 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_mandir}/man*/abrt-upload-watch.* +%if %{with retrace} %files retrace-client %{_bindir}/abrt-retrace-client %{_mandir}/man1/abrt-retrace-client.1* %config(noreplace) %{_sysconfdir}/libreport/events.d/ccpp_retrace_event.conf %{_mandir}/man5/ccpp_retrace_event.conf.5* -%{_datadir}/libreport/events/analyze_RetraceServer.xml +%endif %files addon-kerneloops %config(noreplace) %{_sysconfdir}/libreport/events.d/koops_event.conf @@ -938,12 +906,14 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/libreport/events.d/xorg_event.conf %{_journalcatalogdir}/abrt_xorg.catalog %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_xorg_format.conf -%{_mandir}/man5/xorg_event.conf.5* +%config(noreplace) %{_sysconfdir}/%{name}/plugins/xorg.conf %{_unitdir}/abrt-xorg.service %{_bindir}/abrt-dump-xorg %{_bindir}/abrt-dump-journal-xorg %{_mandir}/man1/abrt-dump-xorg.1* %{_mandir}/man1/abrt-dump-journal-xorg.1* +%{_mandir}/man5/abrt-xorg.conf.5* +%{_mandir}/man5/xorg_event.conf.5* %files addon-vmcore %config(noreplace) %{_sysconfdir}/libreport/events.d/vmcore_event.conf @@ -1010,8 +980,6 @@ killall abrt-dbus >/dev/null 2>&1 || : %if %{with atomic} %files atomic -%config(noreplace) %{_sysconfdir}/%{name}/plugins/CCpp_Atomic.conf -%{_unitdir}/abrt-coredump-helper.service %config(noreplace) %{_sysconfdir}/%{name}/abrt-action-save-package-data.conf %{_bindir}/abrt-action-save-package-data %{_mandir}/man1/abrt-action-save-package-data.1* @@ -1030,25 +998,13 @@ killall abrt-dbus >/dev/null 2>&1 || : %files dbus %{_sbindir}/abrt-dbus -%{_sbindir}/abrt-configuration %{_mandir}/man8/abrt-dbus.8* -%{_mandir}/man8/abrt-configuration.8* %config(noreplace) %{_sysconfdir}/dbus-1/system.d/dbus-abrt.conf %{_datadir}/dbus-1/interfaces/org.freedesktop.Problems2.xml %{_datadir}/dbus-1/interfaces/org.freedesktop.Problems2.Entry.xml %{_datadir}/dbus-1/interfaces/org.freedesktop.Problems2.Session.xml %{_datadir}/dbus-1/interfaces/org.freedesktop.Problems2.Task.xml -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.xml -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.abrt.xml -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.ccpp.xml -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.oops.xml -%if %{with python3} -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.python3.xml -%endif # with python3 -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.vmcore.xml -%{_datadir}/dbus-1/interfaces/com.redhat.problems.configuration.xorg.xml %{_datadir}/dbus-1/system-services/org.freedesktop.problems.service -%{_datadir}/dbus-1/system-services/com.redhat.problems.configuration.service %{_datadir}/polkit-1/actions/abrt_polkit.policy %dir %{_defaultdocdir}/%{name}-dbus%{docdirversion}/ %dir %{_defaultdocdir}/%{name}-dbus%{docdirversion}/html/ @@ -1069,6 +1025,44 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/profile.d/abrt-console-notification.sh %changelog +* Fri Oct 11 2019 Matěj Grabovský 2.13.0-1 +- cli: Use format argument in info command +- cli: Make pretty and format mutually exclusive +- cli: Set PYTHONPATH for tests +- cli: Rework commands +- Remove abrt-hook-ccpp +- spec: Use macros where appropriate +- tests: Use Augeas consistently +- spec: Move config files to corresponding subpackages +- build,spec: Empty config files in /etc/abrt/ +- doc: Update man pages and comments in config files +- plugins: Update in-code defaults +- doc: Correct alignment of heading underlines +- a-dump-journal-core: Purge commented code +- dbus: Remove D-Bus configuration service +- Partly revert removal of default configs +- cli: Tweak problem matching +- plugins: Add satyr flags when building +- cli: Fix warning +- cli: Fix file name +- cli: Use decorator for MATCH positional argument +- cli: match: Iterate dict instead of calling keys() +- cli: Make pylint happier about imports +- cli: Drop unused variables +- cli: utils: Use consistent return +- cli: Improve i18n +- cli: Drop humanize import +- Drop uses of bind_textdomain_codeset() +- gitignore: Update path to generated file after cli-ng move +- tests: runner: Use systemctl instead of service +- autogen.sh: Use autoreconf + +* Thu Oct 03 2019 Miro Hrončok - 2.12.2-3 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Sat Aug 17 2019 Miro Hrončok - 2.12.2-2 +- Rebuilt for Python 3.8 + * Thu Aug 01 2019 Ernestas Kulik 2.12.2-1 - Remove old CLI and move cli-ng subpackage files into tui subpackage diff --git a/sources b/sources index 8be0927..76c1515 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (abrt-2.12.2.tar.gz) = 8a6c1d718cce43a94de1d397d8a6bc9c24bb100081c9e4d4e9fb0441356991e3e8d7da066212ebbee8774e3a416c0e41e17713ced5ffb0c1f63588527e7dc983 +SHA512 (abrt-2.13.0.tar.gz) = 936c83293dcb71051b8dd89e84718cf0f76c7d7998b414a2c41d43b8e2a4dc6718f42d8fd47186bd15bac3ea06081f411ab3a7ed3729343da9e6e91edb046568 From bdb580f2ca2b1d1872518ae7a1be6bc517010a44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= Date: Wed, 16 Oct 2019 14:02:50 +0200 Subject: [PATCH 11/11] Use correct paths for installed Python modules This patch is pulled from upstream. --- ...-correct-paths-for-installed-modules.patch | 96 +++++++++++++++++++ abrt.spec | 20 ++-- 2 files changed, 107 insertions(+), 9 deletions(-) create mode 100644 0001-python-Use-correct-paths-for-installed-modules.patch diff --git a/0001-python-Use-correct-paths-for-installed-modules.patch b/0001-python-Use-correct-paths-for-installed-modules.patch new file mode 100644 index 0000000..d12bb22 --- /dev/null +++ b/0001-python-Use-correct-paths-for-installed-modules.patch @@ -0,0 +1,96 @@ +From 57c0042ead87249bed5964eeec45b97543674060 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Mat=C4=9Bj=20Grabovsk=C3=BD?= +Date: Wed, 16 Oct 2019 11:27:54 +0200 +Subject: [PATCH] python: Use correct paths for installed modules + +Non-compiled (without C bits) Python modules should be installed into +architecture-independent directory (/usr/lib/python3.x/site-packages +in the case of Fedora). + +This commit fixes both +* the spec file, where %{python3_sitelib} should be used rather than + %{python3_sitearch} which is to be used for compiled extensions; and +* the automake scripts, where $(pythondir) should be used in place of + $(pyexecdir) for the same reason. + +This is a follow-up to 20dcf7fb4. +--- + abrt.spec.in | 14 +++++++------- + src/cli/abrtcli/Makefile.am | 2 +- + src/cli/abrtcli/cli/Makefile.am | 2 +- + src/hooks/Makefile.am | 2 +- + 4 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/abrt.spec.in b/abrt.spec.in +index 1c6c48ad..fe0b2278 100644 +--- a/abrt.spec.in ++++ b/abrt.spec.in +@@ -935,14 +935,14 @@ killall abrt-dbus >/dev/null 2>&1 || : + %{_journalcatalogdir}/python3_abrt.catalog + %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_python3_format.conf + %{_mandir}/man5/python3_event.conf.5* +-%{python3_sitearch}/abrt3.pth +-%{python3_sitearch}/abrt_exception_handler3.py +-%{python3_sitearch}/__pycache__/abrt_exception_handler3.* ++%{python3_sitelib}/abrt3.pth ++%{python3_sitelib}/abrt_exception_handler3.py ++%{python3_sitelib}/__pycache__/abrt_exception_handler3.* + + %files -n python3-abrt-container-addon +-%{python3_sitearch}/abrt3_container.pth +-%{python3_sitearch}/abrt_exception_handler3_container.py +-%{python3_sitearch}/__pycache__/abrt_exception_handler3_container.* ++%{python3_sitelib}/abrt3_container.pth ++%{python3_sitelib}/abrt_exception_handler3_container.py ++%{python3_sitelib}/__pycache__/abrt_exception_handler3_container.* + %endif # with python3 + + %files plugin-sosreport +@@ -959,7 +959,7 @@ killall abrt-dbus >/dev/null 2>&1 || : + %config(noreplace) %{_sysconfdir}/bash_completion.d/abrt.bash_completion + %{_bindir}/abrt + %{_bindir}/abrt-cli +-%{python3_sitearch}/abrtcli/ ++%{python3_sitelib}/abrtcli/ + %{_mandir}/man1/abrt.1* + %{_mandir}/man1/abrt-cli.1* + %endif # with python3 +diff --git a/src/cli/abrtcli/Makefile.am b/src/cli/abrtcli/Makefile.am +index d11355a2..a599d0b5 100644 +--- a/src/cli/abrtcli/Makefile.am ++++ b/src/cli/abrtcli/Makefile.am +@@ -9,7 +9,7 @@ PYFILES= \ + utils.py + + abrtcli_PYTHON = $(PYFILES) +-abrtclidir = $(pyexecdir)/abrtcli ++abrtclidir = $(pythondir)/abrtcli + + config.py: config.py.in + sed -e s,\@LOCALE_DIR\@,$(localedir),g \ +diff --git a/src/cli/abrtcli/cli/Makefile.am b/src/cli/abrtcli/cli/Makefile.am +index 17ff216b..c796074d 100644 +--- a/src/cli/abrtcli/cli/Makefile.am ++++ b/src/cli/abrtcli/cli/Makefile.am +@@ -10,4 +10,4 @@ abrtclicommands_PYTHON = \ + retrace.py \ + status.py + +-abrtclicommandsdir = $(pyexecdir)/abrtcli/cli ++abrtclicommandsdir = $(pythondir)/abrtcli/cli +diff --git a/src/hooks/Makefile.am b/src/hooks/Makefile.am +index 6e35887f..bdef0329 100644 +--- a/src/hooks/Makefile.am ++++ b/src/hooks/Makefile.am +@@ -35,7 +35,7 @@ EXTRA_DIST = \ + ALL_DEPENDENCES = + + if BUILD_PYTHON3 +-py3hookdir = $(pyexecdir) ++py3hookdir = $(pythondir) + dist_pluginsconf_DATA += python3.conf + ALL_DEPENDENCES += abrt_exception_handler3.py + +-- +2.21.0 + diff --git a/abrt.spec b/abrt.spec index e18ddea..5018e24 100644 --- a/abrt.spec +++ b/abrt.spec @@ -53,8 +53,10 @@ Release: 1%{?dist} License: GPLv2+ URL: https://abrt.readthedocs.org/ Source: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz -# Needed when applying git patches. -BuildRequires: git + +Patch0: 0001-python-Use-correct-paths-for-installed-modules.patch + +BuildRequires: git-core BuildRequires: %{dbus_devel} BuildRequires: hostname BuildRequires: gtk3-devel @@ -947,14 +949,14 @@ killall abrt-dbus >/dev/null 2>&1 || : %{_journalcatalogdir}/python3_abrt.catalog %config(noreplace) %{_sysconfdir}/libreport/plugins/catalog_python3_format.conf %{_mandir}/man5/python3_event.conf.5* -%{python3_sitearch}/abrt3.pth -%{python3_sitearch}/abrt_exception_handler3.py -%{python3_sitearch}/__pycache__/abrt_exception_handler3.* +%{python3_sitelib}/abrt3.pth +%{python3_sitelib}/abrt_exception_handler3.py +%{python3_sitelib}/__pycache__/abrt_exception_handler3.* %files -n python3-abrt-container-addon -%{python3_sitearch}/abrt3_container.pth -%{python3_sitearch}/abrt_exception_handler3_container.py -%{python3_sitearch}/__pycache__/abrt_exception_handler3_container.* +%{python3_sitelib}/abrt3_container.pth +%{python3_sitelib}/abrt_exception_handler3_container.py +%{python3_sitelib}/__pycache__/abrt_exception_handler3_container.* %endif # with python3 %files plugin-sosreport @@ -971,7 +973,7 @@ killall abrt-dbus >/dev/null 2>&1 || : %config(noreplace) %{_sysconfdir}/bash_completion.d/abrt.bash_completion %{_bindir}/abrt %{_bindir}/abrt-cli -%{python3_sitearch}/abrtcli/ +%{python3_sitelib}/abrtcli/ %{_mandir}/man1/abrt.1* %{_mandir}/man1/abrt-cli.1* %endif # with python3