From 7839ea4b71e91ed74ea15dca66285734c5a06234 Mon Sep 17 00:00:00 2001 From: Jiri Moskovcak Date: Mar 30 2011 15:32:20 +0000 Subject: fixed the gnome-shell/applet compatibility, updated blacklist (mono-core), fixed #692064 --- diff --git a/abrt.spec b/abrt.spec index ba9233a..50ee0be 100644 --- a/abrt.spec +++ b/abrt.spec @@ -16,7 +16,7 @@ %if "0%{?_buildid}" != "0" %define pkg_release 0.%{?_buildid}%{?dist} %else -%define pkg_release 2%{?dist} +%define pkg_release 3%{?dist} %endif Summary: Automatic bug detection and reporting tool @@ -30,7 +30,7 @@ Source: https://fedorahosted.org/released/%{name}/%{name}-%{version}.tar.gz Source1: abrt.init Source2: abrt-ccpp.init Patch0: remove_libreport_python.patch -Patch1: settings_warning.patch +Patch1: blacklist.patch Patch2: notify_persistence.patch Patch3: notify_init_name.patch Patch4: hash_not_in_bz.patch @@ -39,6 +39,7 @@ Patch6: cli_analyze_action_select.patch Patch7: a-a-a-backtrace_better_error_handling.patch Patch8: a-a-a_better2.patch Patch9: g_prgname.patch +Patch10: settings_warning.patch BuildRequires: dbus-devel BuildRequires: gtk2-devel BuildRequires: curl-devel @@ -273,8 +274,7 @@ generation service over a network using HTTP protocol. %prep %setup -q %patch0 -p1 -b .libreport_py -# FIXME remove when settings check is implemented -%patch1 -p1 -b .warning +%patch1 -p1 -b .blacklist %patch2 -p1 -b .persistence %patch3 -p1 -b .notify_progname %patch4 -p1 -b .bz_hash @@ -283,6 +283,8 @@ generation service over a network using HTTP protocol. %patch7 -p1 -b .error_handling %patch8 -p1 -b .error_handling2 %patch9 -p1 -b .prgname +# FIXME remove when settings check is implemented +%patch10 -p1 -b .warning %build autoconf @@ -343,6 +345,10 @@ fi %endif %post addon-ccpp +# this is required for transition from 1.1.x to 2.x +# 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 #if [ $1 -eq 1 ]; then /sbin/chkconfig --add abrt-ccpp #fi @@ -592,6 +598,11 @@ fi %{_infodir}/abrt-retrace-server* %changelog +* Wed Mar 30 2011 Jiri Moskovcak 2.0.0-3 +- fixed notification persistence in gnome3 (again) +- fixed wrong group:user on /var/cache/abrt-di afte rupdate from abrt 1.x #692064 +- added mono-core to blacklist + * Tue Mar 29 2011 Jiri Moskovcak 2.0.0-2 - use %ghost on files in /var/run and /var/lock rhbz#656542 - fixed notification persistence in gnome3 diff --git a/blacklist.patch b/blacklist.patch index cccc80b..cc5c51c 100644 --- a/blacklist.patch +++ b/blacklist.patch @@ -1,22 +1,21 @@ ---- abrt-1.1.10/src/Daemon/abrt.conf 2010-07-27 16:16:45.376241759 +0200 -+++ abrt-1.1.10_rhel6/src/Daemon/abrt.conf 2010-07-27 16:16:32.988241693 +0200 -@@ -16,7 +16,7 @@ - - # Blacklisted executable paths (shell patterns) - # --BlackListedPaths = /usr/share/doc/*, */example* -+BlackListedPaths = /usr/share/doc/*, */example*, /usr/bin/nspluginviewer, /usr/lib/xulrunner-*/plugin-container - - # Which database plugin to use - # ---- abrt-1.1.10/src/Daemon/abrt.conf 2010-07-26 14:00:36.914502040 +0200 -+++ abrt-1.1.10_/src/Daemon/abrt.conf 2010-07-26 14:01:07.597502575 +0200 -@@ -8,7 +8,7 @@ +diff -urp abrt-2.0.0/src/daemon/abrt.conf abrt-2.0.0_/src/daemon/abrt.conf +--- abrt-2.0.0/src/daemon/abrt.conf 2011-03-23 18:11:00.000000000 +0100 ++++ abrt-2.0.0_/src/daemon/abrt.conf 2011-03-30 15:40:51.160618948 +0200 +@@ -8,7 +8,7 @@ OpenGPGCheck = yes # Blacklisted packages # --BlackList = nspluginwrapper, valgrind, strace +-BlackList = nspluginwrapper,valgrind,strace +BlackList = nspluginwrapper, valgrind, strace, mono-core # Process crashes in executables which do not belong to any package? # +@@ -16,7 +16,7 @@ ProcessUnpackaged = no + + # Blacklisted executable paths (shell patterns) + # +-BlackListedPaths = /usr/share/doc/*,*/example* ++BlackListedPaths = /usr/share/doc/*, */example*, /usr/bin/nspluginviewer, /usr/lib/xulrunner-*/plugin-container + + # Enable this if you want abrtd to auto-unpack crashdump tarballs which appear + # in this directory (for example, uploaded via ftp, scp etc). diff --git a/notify_persistence.patch b/notify_persistence.patch index 96196f5..e3cee74 100644 --- a/notify_persistence.patch +++ b/notify_persistence.patch @@ -83,3 +83,71 @@ index 78719ef..0ba9499 100644 free(buf); GError *err = NULL; notify_notification_show(notification, &err); +commit 74eefaaaf84fbb3504881c337e9ee84c5aa4d14c +Author: Jiri Moskovcak +Date: Wed Mar 30 16:01:17 2011 +0200 + + applet: postpone the applet initialization as much as possible related#trac#127 + + - seems like server_has_persistence() returns false when it's called + at the time of applet start, my guess is that the notifyd service setup + is not finished at this time, so I moved applet init to the time of + the first crash, where all the desktop/notifyd thing should be ready + +diff --git a/src/applet/applet.c b/src/applet/applet.c +index a49725b..eee3d10 100644 +--- a/src/applet/applet.c ++++ b/src/applet/applet.c +@@ -26,9 +26,16 @@ + #include "abrt_dbus.h" + #include "applet_gtk.h" + +- ++//This variable is not used anywhere, remove or change to "abrt" and use it ++const char * app_name = "abrt-gui"; + static struct applet* applet = NULL; + ++/* Initialize GUI stuff. */ ++static void init_applet() ++{ ++ if (applet == NULL) ++ applet = applet_new(app_name); ++} + + static void Crash(DBusMessage* signal) + { +@@ -76,6 +83,7 @@ static void Crash(DBusMessage* signal) + const char* message = _("A crash in the %s package has been detected"); + if (package_name[0] == '\0') + message = _("A crash has been detected"); ++ init_applet(); + //applet->AddEvent(uid, package_name); + set_icon_tooltip(applet, message, package_name); + show_icon(applet); +@@ -118,6 +126,7 @@ static void QuotaExceeded(DBusMessage* signal) + + //if (m_pSessionDBus->has_name("com.redhat.abrt.gui")) + // return; ++ init_applet(); + show_icon(applet); + show_msg_notification(applet, "%s", str); + } +@@ -198,7 +207,6 @@ static void die_if_dbus_error(bool error_flag, DBusError* err, const char* msg) + + int main(int argc, char** argv) + { +- const char * app_name = "abrt-gui"; + /* I18n */ + setlocale(LC_ALL, ""); + #if ENABLE_NLS +@@ -255,10 +263,6 @@ int main(int argc, char** argv) + dbus_bus_add_match(system_conn, "type='signal',path='/com/redhat/abrt'", &err); + die_if_dbus_error(false, &err, "Can't add dbus match"); + +- /* Initialize GUI stuff. +- * Note: inside CApplet ctor, libnotify hooks session dbus +- * to glib main loop */ +- applet = applet_new(app_name); + /* dbus_abrt cannot handle more than one bus, and we don't really need to. + * The only thing we want to do is to announce ourself on session dbus */ + DBusConnection* session_conn = dbus_bus_get(DBUS_BUS_SESSION, &err);