From 678bdcd0c1902b5ed12a95a3b8a4ee5bd46e4905f256edb4e0271a7d3d133353 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Sat, 7 Sep 2013 13:13:28 +0000 Subject: [PATCH] Accepting request 197800 from home:dimstar:branches:GNOME:Factory Update to 3.9.91.1 - with patch cleanup OBS-URL: https://build.opensuse.org/request/show/197800 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-settings-daemon?expand=0&rev=175 --- gnome-packagekit-fate302445.patch | 133 ---- gnome-settings-daemon-3.9.90.tar.xz | 3 - gnome-settings-daemon-3.9.91.1.tar.xz | 3 + ...-settings-daemon-add-layout-switcher.patch | 66 -- gnome-settings-daemon-apport-monitor.patch | 579 ------------------ gnome-settings-daemon-cups-1.5.patch | 30 - gnome-settings-daemon.changes | 54 ++ gnome-settings-daemon.spec | 26 +- 8 files changed, 66 insertions(+), 828 deletions(-) delete mode 100644 gnome-packagekit-fate302445.patch delete mode 100644 gnome-settings-daemon-3.9.90.tar.xz create mode 100644 gnome-settings-daemon-3.9.91.1.tar.xz delete mode 100644 gnome-settings-daemon-add-layout-switcher.patch delete mode 100644 gnome-settings-daemon-apport-monitor.patch delete mode 100644 gnome-settings-daemon-cups-1.5.patch diff --git a/gnome-packagekit-fate302445.patch b/gnome-packagekit-fate302445.patch deleted file mode 100644 index 3375dda..0000000 --- a/gnome-packagekit-fate302445.patch +++ /dev/null @@ -1,133 +0,0 @@ -diff --git a/data/gnome-settings-daemon.convert b/data/gnome-settings-daemon.convert -index 9ecc65f..5a6efbc 100644 ---- a/data/gnome-settings-daemon.convert -+++ b/data/gnome-settings-daemon.convert -@@ -93,6 +93,9 @@ priority = /apps/gnome_settings_daemon/plugins/smartcard/priority - active = /apps/gnome_settings_daemon/plugins/sound/active - priority = /apps/gnome_settings_daemon/plugins/sound/priority - -+[org.gnome.settings-daemon.plugins.updates] -+asked-to-collect-hardware-info = /apps/gnome-packagekit/updater_asked_to_collect_hardware_information -+ - [org.gnome.settings-daemon.plugins.xrandr] - active = /apps/gnome_settings_daemon/plugins/xrandr/active - default-configuration-file = /apps/gnome_settings_daemon/xrandr/default_configuration_file -diff --git a/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in b/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in -index c09096a..67081e2 100644 ---- a/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in -+++ b/data/org.gnome.settings-daemon.plugins.updates.gschema.xml.in.in -@@ -120,5 +120,10 @@ - <_summary>The filenames on removable media that designate it a software source. - <_description>When removable media is inserted, it is checked to see if it contains any important filenames in the root directory. If the filename matches, then an updates check is performed. This allows post-install disks to be used to update running systems. - -+ -+ false -+ <_summary>Whether the hardware information collection is asked -+ <_description>Whether the hardware information collection is asked -+ - - -diff --git a/plugins/updates/gsd-updates-manager.c b/plugins/updates/gsd-updates-manager.c -index 5c193e9..b1abcc5 100644 ---- a/plugins/updates/gsd-updates-manager.c -+++ b/plugins/updates/gsd-updates-manager.c -@@ -35,6 +35,10 @@ - #include "gsd-updates-common.h" - #include "gnome-settings-profile.h" - -+#define GSD_UPDATES_HARDWARE_SEND_ACTION "gsd-updates hardware info - send " -+#define GSD_UPDATES_HARDWARE_DONT_PROMPT_ACTION "gsd-updates hardware info - don't ask again" -+#define GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT "asked-to-collect-hardware-info" -+ - #define GSD_UPDATES_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_UPDATES_MANAGER, GsdUpdatesManagerPrivate)) - - #define MAX_FAILED_GET_UPDATES 10 /* the maximum number of tries */ -@@ -1308,6 +1312,79 @@ on_bus_gotten (GObject *source_object, - NULL); - } - -+static void -+gsd_updates_libnotify_cb (NotifyNotification *notification, -+ gchar *action, -+ gpointer data) -+{ -+ GsdUpdatesManager *manager = GSD_UPDATES_MANAGER (data); -+ -+ if (g_strcmp0 (action, GSD_UPDATES_HARDWARE_SEND_ACTION ) == 0) { -+ gboolean retval = g_spawn_command_line_async ("/usr/bin/smoltGui", NULL); -+ if (!retval) { -+ g_debug ("Failure launching smoltGui"); -+ } -+ g_debug ("set %s to TRUE because done", GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT); -+ g_settings_set_boolean (manager->priv->settings_gsd, GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT, TRUE); -+ } else if (g_strcmp0 (action, GSD_UPDATES_HARDWARE_DONT_PROMPT_ACTION) == 0) { -+ g_debug ("set %s to TRUE because user said no", GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT); -+ g_settings_set_boolean (manager->priv->settings_gsd, GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT, TRUE); -+ } else { -+ g_warning ("unknown action id: %s", action); -+ } -+ -+} -+ -+static gboolean -+check_for_collect_hardware_information (gpointer *data) -+{ -+ GsdUpdatesManager *manager = GSD_UPDATES_MANAGER (data); -+ gboolean asked_to_collect = FALSE; -+ -+ NotifyNotification *notification; -+ GError *error = NULL; -+ gchar *body, *summary; -+ //gchar *body2; -+ gboolean ret; -+ -+ asked_to_collect = g_settings_get_boolean (manager->priv->settings_gsd, GSD_SETTINGS_HARDWARE_ASKED_TO_COLLECT); -+ -+ if (asked_to_collect) { -+ g_debug ("don't collect hardware info because already done"); -+ return FALSE; -+ } -+ -+ if (! g_file_test ("/var/run/smolt_do_opensuse_run", G_FILE_TEST_EXISTS)) { -+ g_debug ("don't collect hardware info yet until smolt is updated - BNC#450105"); -+ return TRUE; -+ } -+ if (! g_file_test ("/usr/bin/smoltGui", G_FILE_TEST_EXISTS)) { -+ g_debug ("don't collect hardware info because smoltGui is not installed"); -+ return FALSE; -+ } -+ -+ summary = g_strdup_printf ("%s", _("openSUSE Updater")); -+ //body = g_strdup_printf ("%s", _("Driver development is prioritized based on hardware popularity.
Please send your system profile to influence this work.")); -+ body = g_strdup_printf ("%s", _("Driver development is prioritized based on hardware popularity. Please send your system profile to influence this work.")); -+ //body2 = g_markup_escape_text (body, -1); -+ notification = notify_notification_new (summary, body, "help-browser"); -+ notify_notification_set_timeout (notification, NOTIFY_EXPIRES_NEVER); -+ notify_notification_set_urgency (notification, NOTIFY_URGENCY_LOW); -+ notify_notification_add_action (notification, GSD_UPDATES_HARDWARE_SEND_ACTION, -+ _("Send now"), gsd_updates_libnotify_cb, (gpointer)manager, NULL); -+ notify_notification_add_action (notification, GSD_UPDATES_HARDWARE_DONT_PROMPT_ACTION, -+ _("Do not show this again"), gsd_updates_libnotify_cb, (gpointer)manager, NULL); -+ ret = notify_notification_show (notification, &error); -+ if (!ret) { -+ g_warning ("error: %s", error->message); -+ g_error_free (error); -+ } -+ -+ g_free (summary); -+ g_free (body); -+ return FALSE; -+} -+ - gboolean - gsd_updates_manager_start (GsdUpdatesManager *manager, - GError **error) -@@ -1406,6 +1483,8 @@ gsd_updates_manager_start (GsdUpdatesManager *manager, - (GAsyncReadyCallback) on_bus_gotten, - manager); - -+ g_timeout_add_seconds (5 * 60, check_for_collect_hardware_information, manager); -+ - /* success */ - ret = TRUE; - g_debug ("Started updates manager"); diff --git a/gnome-settings-daemon-3.9.90.tar.xz b/gnome-settings-daemon-3.9.90.tar.xz deleted file mode 100644 index c8cda50..0000000 --- a/gnome-settings-daemon-3.9.90.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6cee1816b15afae183b71bfd68cf57f55c7458a468656717774f5621e4b3027c -size 1617572 diff --git a/gnome-settings-daemon-3.9.91.1.tar.xz b/gnome-settings-daemon-3.9.91.1.tar.xz new file mode 100644 index 0000000..a53c58d --- /dev/null +++ b/gnome-settings-daemon-3.9.91.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e51d4e1d0ca7369c35075b9271a3e24cd33ccdd3e5c851f83e3adc2606b7c1b +size 1660080 diff --git a/gnome-settings-daemon-add-layout-switcher.patch b/gnome-settings-daemon-add-layout-switcher.patch deleted file mode 100644 index fae040f..0000000 --- a/gnome-settings-daemon-add-layout-switcher.patch +++ /dev/null @@ -1,66 +0,0 @@ -Index: plugins/keyboard/gsd-keyboard-xkb.c -=================================================================== ---- plugins/keyboard/gsd-keyboard-xkb.c.orig -+++ plugins/keyboard/gsd-keyboard-xkb.c -@@ -317,6 +317,53 @@ show_hide_icon () - } - } - -+static void -+_maybe_add_layout_switcher (GSList *layouts, -+ GSettings *settings_keyboard) -+{ -+ gchar **options; -+ gboolean appended; -+ -+ /* If yes, we need to make sure there's a way to change the layout -+ * Based on xkl_layout_chooser_add_default_switcher_if_necessary() in -+ * plugins/region/gnome-region-panel-xkbltadd.c -+ * (gnome-control-center) */ -+ g_settings_get_strv (settings_keyboard, GKBD_KEYBOARD_CONFIG_KEY_OPTIONS); -+ -+ if (options == NULL) { -+ GPtrArray *options_array; -+ gchar *option; -+ -+ /* nothing in gconf, get the current options from X */ -+ GkbdKeyboardConfig kbd_config; -+ -+ gkbd_keyboard_config_init (&kbd_config, xkl_engine); -+ gkbd_keyboard_config_load_from_x_initial (&kbd_config, NULL); -+ -+ options_array = g_ptr_array_new (); -+ option = kbd_config.options; -+ -+ while (option != NULL) { -+ g_ptr_array_add (options_array, g_strdup (option)); -+ option++; -+ } -+ options = g_ptr_array_free (options_array, FALSE); -+ -+ gkbd_keyboard_config_term (&kbd_config); -+ } -+ -+ appended = FALSE; -+ options = gkbd_keyboard_config_add_default_switch_option_if_necessary (layouts, options, &appended); -+ -+ if (appended) { -+ g_settings_set_strv (settings_keyboard, -+ GKBD_KEYBOARD_CONFIG_KEY_OPTIONS, -+ (const gchar *const*)(options)); -+ } -+ -+ g_strfreev (options); -+} -+ - static gboolean - try_activating_xkb_config_if_new (GkbdKeyboardConfig * - current_sys_kbd_config) -@@ -486,6 +533,7 @@ apply_xkb_settings (void) - (gdm_layout)); - } - -+ _maybe_add_layout_switcher (layouts, settings_keyboard); - g_settings_set_strv (settings_keyboard, - GKBD_KEYBOARD_CONFIG_KEY_LAYOUTS, - (const gchar * diff --git a/gnome-settings-daemon-apport-monitor.patch b/gnome-settings-daemon-apport-monitor.patch deleted file mode 100644 index 7d70b17..0000000 --- a/gnome-settings-daemon-apport-monitor.patch +++ /dev/null @@ -1,579 +0,0 @@ ---- - configure.ac | 1 - data/gnome-settings-daemon.schemas.in | 23 ++ - plugins/Makefile.am | 1 - plugins/apport/Makefile.am | 32 +++ - plugins/apport/apport.gnome-settings-plugin.in | 8 - plugins/apport/gsd-apport-manager.c | 219 +++++++++++++++++++++++++ - plugins/apport/gsd-apport-manager.h | 58 ++++++ - plugins/apport/gsd-apport-plugin.c | 104 +++++++++++ - plugins/apport/gsd-apport-plugin.h | 57 ++++++ - 9 files changed, 503 insertions(+) - -Index: configure.ac -=================================================================== ---- configure.ac.orig -+++ configure.ac -@@ -425,6 +425,7 @@ Makefile - gnome-settings-daemon/Makefile - plugins/Makefile - plugins/a11y-keyboard/Makefile -+plugins/apport/Makefile - plugins/background/Makefile - plugins/clipboard/Makefile - plugins/common/Makefile -Index: data/gnome-settings-daemon.schemas.in -=================================================================== ---- data/gnome-settings-daemon.schemas.in.orig -+++ data/gnome-settings-daemon.schemas.in -@@ -26,6 +26,29 @@ - - - -+ /schemas/apps/gnome_settings_daemon/plugins/apport/active -+ /apps/gnome_settings_daemon/plugins/apport/active -+ gnome-settings-daemon -+ bool -+ TRUE -+ -+ Enable Apport monitoring plugin -+ Set to True to enable the plugin to manage Apport crash reports. -+ -+ -+ -+ /schemas/apps/gnome_settings_daemon/plugins/apport/priority -+ /apps/gnome_settings_daemon/plugins/apport/priority -+ gnome-settings-daemon -+ int -+ 400 -+ -+ -+ -+ -+ -+ -+ - /schemas/apps/gnome_settings_daemon/plugins/background/active - /apps/gnome_settings_daemon/plugins/background/active - gnome-settings-daemon -Index: plugins/Makefile.am -=================================================================== ---- plugins/Makefile.am.orig -+++ plugins/Makefile.am -@@ -2,6 +2,7 @@ NULL = - - enabled_plugins = \ - a11y-keyboard \ -+ apport \ - background \ - clipboard \ - datetime \ -Index: plugins/apport/Makefile.am -=================================================================== ---- /dev/null -+++ plugins/apport/Makefile.am -@@ -0,0 +1,32 @@ -+plugin_LTLIBRARIES = libapport.la -+ -+libapport_la_SOURCES = \ -+ gsd-apport-manager.c \ -+ gsd-apport-manager.h \ -+ gsd-apport-plugin.c \ -+ gsd-apport-plugin.h -+ -+libapport_la_CPPFLAGS = \ -+ -I$(top_srcdir)/gnome-settings-daemon \ -+ -DGNOME_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\" \ -+ $(AM_CPPFLAGS) -+ -+libapport_la_CFLAGS = \ -+ $(SETTINGS_PLUGIN_CFLAGS) \ -+ $(AM_CFLAGS) -+ -+libapport_la_LDFLAGS = $(GSD_PLUGIN_LDFLAGS) -+ -+libapport_la_LIBADD = $(SETTINGS_PLUGIN_LIBS) -+ -+plugin_in_files = apport.gnome-settings-plugin.in -+ -+plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin) -+ -+EXTRA_DIST = $(plugin_in_files) -+ -+CLEANFILES = $(plugin_DATA) -+ -+DISTCLEANFILES = (plugin_DATA) -+ -+@GSD_INTLTOOL_PLUGIN_RULE@ -Index: plugins/apport/apport.gnome-settings-plugin.in -=================================================================== ---- /dev/null -+++ plugins/apport/apport.gnome-settings-plugin.in -@@ -0,0 +1,8 @@ -+[GNOME Settings Plugin] -+Module=apport -+IAge=0 -+_Name=Apport -+_Description=Checks for new Apport crash reports and launches a handling application -+Authors=Nikolay Derkach -+Copyright=Copyright © 2008 Nikolay Derkach -+Website= -Index: plugins/apport/gsd-apport-manager.c -=================================================================== ---- /dev/null -+++ plugins/apport/gsd-apport-manager.c -@@ -0,0 +1,220 @@ -+/* -+ * Copyright (C) 2008 Nikolay Derkach -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ */ -+ -+/* Some code was taken from update-notifier */ -+ -+#include -+#include -+#include -+#include -+#include -+ -+#include "gnome-settings-profile.h" -+#include "gsd-apport-manager.h" -+ -+#define GSD_APPORT_MANAGER_GET_PRIVATE(o) \ -+ (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_APPORT_MANAGER, \ -+ GsdApportManagerPrivate)) -+ -+#define CRASHREPORT_REPORT_APP "apport-gtk" -+#define CRASHREPORT_HELPER "apport-checkreports" -+ -+struct GsdApportManagerPrivate { -+ GFileMonitor *monitor; -+ guint monitor_id; -+ GtkStatusIcon *ti; -+}; -+ -+static void gsd_apport_manager_class_init(GsdApportManagerClass *klass); -+static void gsd_apport_manager_init(GsdApportManager *apport_manager); -+ -+G_DEFINE_TYPE (GsdApportManager, gsd_apport_manager, G_TYPE_OBJECT) -+ -+static gpointer manager_object = NULL; -+ -+ -+static gboolean -+run_apport (void) -+{ -+ char *error_msg; -+ -+ gnome_settings_profile_msg ("fire up the crashreport tool"); -+ return g_spawn_command_line_async (CRASHREPORT_REPORT_APP, NULL); -+} -+ -+static void -+hide_crash_applet (GtkStatusIcon *ti) -+{ -+ gtk_status_icon_set_visible (ti, FALSE); -+} -+ -+static gboolean -+crashreport_check (GtkStatusIcon *ti) -+{ -+ gboolean crashreports_found; -+ static gboolean first_run = TRUE; -+ gboolean visible; -+ int exitcode; -+ -+ gnome_settings_profile_msg ("crashreport_check"); -+ -+ /* don't do anything if no apport-gtk is installed */ -+// if (!g_file_test (CRASHREPORT_REPORT_APP, G_FILE_TEST_IS_EXECUTABLE)) -+// return FALSE; -+ -+ /* check for (new) reports by calling CRASHREPORT_HELPER -+ and checking the return code */ -+ -+ if (!g_spawn_command_line_sync (CRASHREPORT_HELPER, NULL, NULL, -+ &exitcode, NULL)) { -+ g_warning ("Can not run %s\n", CRASHREPORT_HELPER); -+ return FALSE; -+ } -+ /* exitcode == 0: reports found, else no reports */ -+ crashreports_found = !exitcode ? TRUE : FALSE; -+ visible = gtk_status_icon_get_visible (ti); -+ -+ if (crashreports_found && first_run) { -+ gtk_status_icon_set_tooltip (ti, _("Crash report detected")); -+ gtk_status_icon_set_blinking (ti, TRUE); -+ gtk_status_icon_set_visible (ti, TRUE); -+ } -+ -+ /* crashreport found and already visible */ -+ if (crashreports_found && !first_run) { -+ run_apport (); -+ /* we don't care anymore and hide the icon */ -+ crashreports_found = FALSE; -+ } -+ -+ /* no crashreports, but visible */ -+ if (!crashreports_found && visible) { -+ hide_crash_applet (ti); -+ } -+ -+ first_run = FALSE; -+ return TRUE; -+} -+ -+static void -+apport_watchdir_changed (GFileMonitor *monitor, -+ GFile *file, -+ GFile *other_file, -+ GFileMonitorEvent event_type, -+ gpointer user_data) -+{ -+ GtkStatusIcon *ti = (GtkStatusIcon *)user_data; -+ if (event_type == G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED) { -+ gnome_settings_profile_msg ("G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED"); -+ crashreport_check (ti); -+ } -+} -+ -+static gboolean -+button_release_cb (GtkStatusIcon *ti) -+{ -+ run_apport (); -+ hide_crash_applet (ti); -+ return TRUE; -+} -+ -+static gboolean -+trayapplet_create (GtkStatusIcon *ti, const char *name) -+{ -+ /* setup widgets */ -+ ti = gtk_status_icon_new_from_icon_name (name); -+ gtk_status_icon_set_visible (ti, FALSE); -+ -+ g_signal_connect (ti, -+ "activate", -+ G_CALLBACK (button_release_cb), -+ ti); -+ -+ /* Check for crashes for the first time */ -+ crashreport_check (ti); -+ return TRUE; -+} -+ -+gboolean -+gsd_apport_manager_start (GsdApportManager *manager, -+ GError **error) -+{ -+ GFile *file; -+ GFileMonitor *m; -+ -+ gnome_settings_profile_start ("Starting apport manager"); -+ -+ /* crashreport detected icon */ -+ trayapplet_create (manager->priv->ti, "apport"); -+ -+ file = g_file_new_for_path (CRASHREPORT_DIR); -+ m = g_file_monitor_directory (file, 0, NULL, NULL); -+ g_object_unref (file); -+ -+ if (m) { -+ manager->priv->monitor_id = g_signal_connect (m, "changed", G_CALLBACK (apport_watchdir_changed), manager->priv->ti); -+ manager->priv->monitor = m; -+ } else -+ return FALSE; -+ -+ gnome_settings_profile_end (NULL); -+ return TRUE; -+} -+ -+ -+void -+gsd_apport_manager_stop (GsdApportManager *manager) -+{ -+ gnome_settings_profile_start ("Stopping apport manager"); -+ -+ g_signal_handler_disconnect (manager->priv->monitor, manager->priv->monitor_id); -+ g_file_monitor_cancel (manager->priv->monitor); -+ g_object_unref (manager->priv->monitor); -+ -+ gtk_widget_destroy ((GtkWidget *)manager->priv->ti); -+ gnome_settings_profile_end (NULL); -+} -+ -+static void -+gsd_apport_manager_class_init (GsdApportManagerClass *klass) -+{ -+ g_type_class_add_private (klass, sizeof (GsdApportManagerPrivate)); -+} -+ -+ -+static void -+gsd_apport_manager_init (GsdApportManager *manager) -+{ -+ manager->priv = GSD_APPORT_MANAGER_GET_PRIVATE (manager); -+} -+ -+ -+GsdApportManager * -+gsd_apport_manager_new (void) -+{ -+ if (manager_object != NULL) { -+ g_object_ref (manager_object); -+ } else { -+ manager_object = g_object_new (GSD_TYPE_APPORT_MANAGER, NULL); -+ g_object_add_weak_pointer (manager_object, -+ (gpointer *) &manager_object); -+ } -+ -+ return GSD_APPORT_MANAGER (manager_object); -+} -Index: plugins/apport/gsd-apport-manager.h -=================================================================== ---- /dev/null -+++ plugins/apport/gsd-apport-manager.h -@@ -0,0 +1,58 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- -+ * -+ * Copyright (C) 2008 Nikolay Derkach -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ */ -+ -+#ifndef __GSD_APPORT_MANAGER_H -+#define __GSD_APPORT_MANAGER_H -+ -+#include -+#include -+ -+G_BEGIN_DECLS -+ -+#define GSD_TYPE_APPORT_MANAGER (gsd_apport_manager_get_type ()) -+#define GSD_APPORT_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_APPORT_MANAGER, GsdApportManager)) -+#define GSD_APPORT_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_APPORT_MANAGER, GsdApportManagerClass)) -+#define GSD_IS_APPORT_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_APPORT_MANAGER)) -+#define GSD_IS_APPORT_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_APPORT_MANAGER)) -+#define GSD_APPORT_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_APPORT_MANAGER, GsdApportManagerClass)) -+ -+#define CRASHREPORT_DIR "/var/crash/" -+ -+typedef struct GsdApportManagerPrivate GsdApportManagerPrivate; -+ -+typedef struct { -+ GObject parent; -+ GsdApportManagerPrivate *priv; -+} GsdApportManager; -+ -+typedef struct { -+ GObjectClass parent_class; -+} GsdApportManagerClass; -+ -+GType gsd_apport_manager_get_type (void); -+ -+GsdApportManager* gsd_apport_manager_new (void); -+gboolean gsd_apport_manager_start (GsdApportManager *manager, -+ GError **error); -+void gsd_apport_manager_stop (GsdApportManager *manager); -+ -+G_END_DECLS -+ -+#endif /* __GSD_APPORT_MANAGER_H */ -Index: plugins/apport/gsd-apport-plugin.c -=================================================================== ---- /dev/null -+++ plugins/apport/gsd-apport-plugin.c -@@ -0,0 +1,104 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- -+ * -+ * Copyright (C) 2008 Nikolay Derkach -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2, or (at your option) -+ * any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ */ -+ -+#include "config.h" -+ -+#include -+#include -+ -+#include "gnome-settings-plugin.h" -+#include "gsd-apport-plugin.h" -+#include "gsd-apport-manager.h" -+ -+struct GsdApportPluginPrivate { -+ GsdApportManager *manager; -+}; -+ -+#define GSD_APPORT_PLUGIN_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), GSD_TYPE_APPORT_PLUGIN, GsdApportPluginPrivate)) -+ -+GNOME_SETTINGS_PLUGIN_REGISTER (GsdApportPlugin, gsd_apport_plugin) -+ -+static void -+gsd_apport_plugin_init (GsdApportPlugin *plugin) -+{ -+ plugin->priv = GSD_APPORT_PLUGIN_GET_PRIVATE (plugin); -+ -+ g_debug ("GsdApportPlugin initializing"); -+ -+ plugin->priv->manager = gsd_apport_manager_new (); -+} -+ -+static void -+gsd_apport_plugin_finalize (GObject *object) -+{ -+ GsdApportPlugin *plugin; -+ -+ g_return_if_fail (object != NULL); -+ g_return_if_fail (GSD_IS_APPORT_PLUGIN (object)); -+ -+ g_debug ("GsdApportPlugin finalizing"); -+ -+ plugin = GSD_APPORT_PLUGIN (object); -+ -+ g_return_if_fail (plugin->priv != NULL); -+ -+ if (plugin->priv->manager != NULL) { -+ g_object_unref (plugin->priv->manager); -+ } -+ -+ G_OBJECT_CLASS (gsd_apport_plugin_parent_class)->finalize (object); -+} -+ -+static void -+impl_activate (GnomeSettingsPlugin *plugin) -+{ -+ gboolean res; -+ GError *error; -+ -+ g_debug ("Activating apport plugin"); -+ -+ error = NULL; -+ res = gsd_apport_manager_start (GSD_APPORT_PLUGIN (plugin)->priv->manager, &error); -+ if (! res) { -+ g_warning ("Unable to start apport manager: %s", error->message); -+ g_error_free (error); -+ } -+} -+ -+static void -+impl_deactivate (GnomeSettingsPlugin *plugin) -+{ -+ g_debug ("Deactivating apport plugin"); -+ gsd_apport_manager_stop (GSD_APPORT_PLUGIN (plugin)->priv->manager); -+} -+ -+static void -+gsd_apport_plugin_class_init (GsdApportPluginClass *klass) -+{ -+ GObjectClass *object_class = G_OBJECT_CLASS (klass); -+ GnomeSettingsPluginClass *plugin_class = GNOME_SETTINGS_PLUGIN_CLASS (klass); -+ -+ object_class->finalize = gsd_apport_plugin_finalize; -+ -+ plugin_class->activate = impl_activate; -+ plugin_class->deactivate = impl_deactivate; -+ -+ g_type_class_add_private (klass, sizeof (GsdApportPluginPrivate)); -+} -Index: plugins/apport/gsd-apport-plugin.h -=================================================================== ---- /dev/null -+++ plugins/apport/gsd-apport-plugin.h -@@ -0,0 +1,57 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- -+ * -+ * Copyright (C) 2008 Nikolay Derkach -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2, or (at your option) -+ * any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+ * -+ */ -+ -+#ifndef __GSD_APPORT_PLUGIN_H__ -+#define __GSD_APPORT_PLUGIN_H__ -+ -+#include -+#include -+#include -+ -+#include "gnome-settings-plugin.h" -+ -+G_BEGIN_DECLS -+ -+#define GSD_TYPE_APPORT_PLUGIN (gsd_apport_plugin_get_type ()) -+#define GSD_APPORT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_APPORT_PLUGIN, GsdApportPlugin)) -+#define GSD_APPORT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_APPORT_PLUGIN, GsdApportPluginClass)) -+#define GSD_IS_APPORT_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_APPORT_PLUGIN)) -+#define GSD_IS_APPORT_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_APPORT_PLUGIN)) -+#define GSD_APPORT_PLUGIN_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_APPORT_PLUGIN, GsdApportPluginClass)) -+ -+typedef struct GsdApportPluginPrivate GsdApportPluginPrivate; -+ -+typedef struct { -+ GnomeSettingsPlugin parent; -+ GsdApportPluginPrivate *priv; -+} GsdApportPlugin; -+ -+typedef struct { -+ GnomeSettingsPluginClass parent_class; -+} GsdApportPluginClass; -+ -+GType gsd_apport_plugin_get_type (void) G_GNUC_CONST; -+ -+/* All the plugins must implement this function */ -+G_MODULE_EXPORT GType register_gnome_settings_plugin (GTypeModule *module); -+ -+G_END_DECLS -+ -+#endif /* __GSD_APPORT_PLUGIN_H__ */ diff --git a/gnome-settings-daemon-cups-1.5.patch b/gnome-settings-daemon-cups-1.5.patch deleted file mode 100644 index 1e1bf2c..0000000 --- a/gnome-settings-daemon-cups-1.5.patch +++ /dev/null @@ -1,30 +0,0 @@ -commit 6b745854b14feccf1d9950f1e3c124136cebfeaf -Author: Dominique Leuenberger -Date: Tue Aug 20 22:22:18 2013 +0200 - - printer: allow building against cups 1.5 - - https://bugzilla.gnome.org/show_bug.cgi?id=706442 - -diff --git a/plugins/print-notifications/gsd-print-notifications-manager.c b/plugins/print-notifications/gsd-print-notifications-manager.c -index 33eadae..6cd7d21 100644 ---- a/plugins/print-notifications/gsd-print-notifications-manager.c -+++ b/plugins/print-notifications/gsd-print-notifications-manager.c -@@ -62,6 +62,17 @@ - #define ippGetStatusCode(ipp) ipp->request.status.status_code - #define ippGetInteger(attr, element) attr->values[element].integer - #define ippGetString(attr, element, language) attr->values[element].string.text -+#define ippGetName(attr) attr->name -+#define ippGetCount(attr) attr->num_values -+#define ippGetBoolean(attr, index) attr->values[index].boolean -+ -+static ipp_attribute_t * -+ippNextAttribute (ipp_t *ipp) -+{ -+ if (!ipp || !ipp->current) -+ return (NULL); -+ return (ipp->current = ipp->current->next); -+} - #endif - - struct GsdPrintNotificationsManagerPrivate diff --git a/gnome-settings-daemon.changes b/gnome-settings-daemon.changes index f8a6df8..b96f772 100644 --- a/gnome-settings-daemon.changes +++ b/gnome-settings-daemon.changes @@ -1,3 +1,57 @@ +------------------------------------------------------------------- +Fri Sep 6 17:56:00 UTC 2013 - dimstar@opensuse.org + +- Drop gnome-packagekit-fate302445.patch (was marked for rebase): + since smolt was dropped from openSUSE back in October 2012, there + is no need to ever revive this patch. +- Drop gnome-settings-daemon-apport-monitor.patch (was marked for + rebase): the patch was disable prior to GNOME 3.0 back in 2010 + and nobody cared. +- Drop gnome-settings-daemon-add-layout-switcher.patch (was marked + for rebase): Has not been applied since version 3.0.0 and the + upstream bug is marked as fixed. + +------------------------------------------------------------------- +Wed Sep 4 07:13:34 UTC 2013 - dimstar@opensuse.org + +- Update to version 3.9.91.1: + + Datetime: + - Adapt to geoclue 1.99.3 api changes. + + Screensaver: + - Support KDE variant of interface. + - Fix a crash. +- Add pkgconfig(geoclue-2.0) BuildRequires: needed to identify the + geoclue 1.99.3 API presence. + +------------------------------------------------------------------- +Tue Sep 3 06:42:09 UTC 2013 - dimstar@opensuse.org + +- Update to version 3.9.91: + + Datetime: + - Avoid popping up polkit password prompts. + - Display notifications on timezone changes. + - Use reverse geocoding fror country detection. + - Use libgweather timezone info too. + + Power: + - Fix error handling in dbus API, avoiding assertions. + + Printer: + - Allow building against cups 1.5. + + Remote display: + - Disable animations in more situations. + + Rfkill: + - Fix a crash. + + Smartcard: + - Ignore softtoken. + + Updates: + - Add a test application. + - Notify about available offline updates. + + XSettings: + - Keep middle-click paste enabled for now. +- Add pkgconfig(geocode-glib-1.0), pkgconfig(gweather-3.0) and + pkgconfig(polkit-gobject-1.0) BuildRequires: dependencies for + the datetime panel updates. +- Drop gnome-settings-daemon-cups-1.5.patch: fixed upstream. + ------------------------------------------------------------------- Tue Aug 20 19:28:12 UTC 2013 - dimstar@opensuse.org diff --git a/gnome-settings-daemon.spec b/gnome-settings-daemon.spec index c62c02c..3cd9ffe 100644 --- a/gnome-settings-daemon.spec +++ b/gnome-settings-daemon.spec @@ -27,7 +27,7 @@ %define with_smartcard 1 Name: gnome-settings-daemon -Version: 3.9.90 +Version: 3.9.91.1 Release: 0 Summary: Settings daemon for the GNOME desktop License: GPL-2.0+ @@ -36,22 +36,14 @@ Url: http://www.gnome.org Source: http://download.gnome.org/sources/gnome-settings-daemon/3.9/%{name}-%{version}.tar.xz # PATCH-NEEDS-REBASE gnome-settings-daemon-system-proxy-configuration.diff Patch2: gnome-settings-daemon-system-proxy-configuration.diff -# PATCH-NEEDS-REBASE gnome-settings-daemon-apport-monitor.patch bnc439203 jblunck@novell.com -- Add apport monitoring plugin. (was PATCH-FEATURE-UPSTREAM) -Patch8: gnome-settings-daemon-apport-monitor.patch # PATCH-FEATURE-UPSTREAM gnome-settings-daemon-bnc462640-mute-action.patch bnc462640 bgo572365 vuntz@novell.com -- Mute button should always mute sound instead of toggling mute status Patch10: gnome-settings-daemon-bnc462640-mute-action.patch -# PATCH-NEEDS-REBASE PATCH-FIX-UPSTREAM gnome-settings-daemon-add-layout-switcher.patch bgo603806 vuntz@opensuse.org -- Add a layout switching combo if needed; the real fix implies some API change in libgnomekbd (see upstream bug) -Patch13: gnome-settings-daemon-add-layout-switcher.patch -# PATCH-NEEDS-REBASE PATCH-FEATURE-OPENSUSE gnome-packagekit-fate302445.patch fate 302445 -Patch14: gnome-packagekit-fate302445.patch # PATCH-NEEDS-REBASE PATCH-MISSING-TAG -- See http://en.opensuse.org/Packaging/Patches Patch15: gnome-packagekit-BNC383261.patch # PATCH-FIX-OPENSUSE gnome-settings-daemon-stop-reload-proxy-settings.patch bnc689592#c1, bnc#538353 glin@suse.com -- Stop g-s-d poping up the authentication dialog for reloading the proxy settings Patch17: gnome-settings-daemon-stop-reload-proxy-settings.patch # PATCH-FEATURE-UPSTREAM gnome-settings-daemon-notify-idle-resumed.patch bnc#439018 bnc#708182 bgo#575467 hpj@suse.com -- notify user about auto suspend when returning from sleep Patch19: gnome-settings-daemon-notify-idle-resumed.patch -# PATCH-FIX-UPSTREAM gnome-settings-daemon-cups-1.5.patch bgo#706442 dimstar@opensuse.org -- Fix building against CUPS 1.5. -Patch20: gnome-settings-daemon-cups-1.5.patch BuildRequires: cups-devel BuildRequires: fdupes BuildRequires: gnome-common @@ -66,11 +58,14 @@ BuildRequires: polkit BuildRequires: pkgconfig(colord) >= 1.0.2 BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(gconf-2.0) >= 2.6.1 -BuildRequires: pkgconfig(glib-2.0) >= 2.35.3 +BuildRequires: pkgconfig(geoclue-2.0) +BuildRequires: pkgconfig(geocode-glib-1.0) >= 0.99.3 +BuildRequires: pkgconfig(glib-2.0) >= 2.37.7 BuildRequires: pkgconfig(gnome-desktop-3.0) >= 3.9.0 -BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.7.2.1 +BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.9.91 BuildRequires: pkgconfig(gtk+-3.0) >= 3.7.8 BuildRequires: pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(gweather-3.0) >= 3.9.5 %if %{with_ibus} BuildRequires: pkgconfig(ibus-1.0) >= 1.4.99 %endif @@ -88,6 +83,7 @@ BuildRequires: pkgconfig(libwacom) >= 0.7 BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(packagekit-glib2) >= 0.7.4 BuildRequires: pkgconfig(pango) >= 1.20.0 +BuildRequires: pkgconfig(polkit-gobject-1) >= 0.103 BuildRequires: pkgconfig(upower-glib) >= 0.9.11 BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xext) @@ -136,17 +132,11 @@ translation-update-upstream # Disabled because of the non-rebased patches #gnome-patch-translation-prepare #%%patch2 -p0 -#%%patch8 -p0 %patch10 -p0 # PATCH-NEEDS-REBASE -#%%patch13 -p0 -# PATCH-NEEDS-REBASE -#%%patch14 -p0 -# PATCH-NEEDS-REBASE #%%patch15 -p0 %patch17 -p1 %patch19 -p1 -%patch20 -p1 %build autoreconf -f -i @@ -216,6 +206,7 @@ rm -rf %{buildroot} %{_libdir}/gnome-settings-daemon-3.0/libclipboard.so %{_libdir}/gnome-settings-daemon-3.0/libcolor.so %{_libdir}/gnome-settings-daemon-3.0/libcursor.so +%{_libdir}/gnome-settings-daemon-3.0/libdatetime.so %{_libdir}/gnome-settings-daemon-3.0/libgsdwacom.so %{_libdir}/gnome-settings-daemon-3.0/libhousekeeping.so %{_libdir}/gnome-settings-daemon-3.0/libkeyboard.so @@ -239,6 +230,7 @@ rm -rf %{buildroot} %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.peripherals.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.peripherals.wacom.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.color.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.datetime.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.housekeeping.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.keyboard.gschema.xml