diff --git a/gnome-packagekit-BNC383261.patch b/gnome-packagekit-BNC383261.patch new file mode 100644 index 0000000..fb3c95b --- /dev/null +++ b/gnome-packagekit-BNC383261.patch @@ -0,0 +1,189 @@ +Index: gnome-packagekit-2.91.4/src/gpk-check-update.c +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-check-update.c ++++ gnome-packagekit-2.91.4/src/gpk-check-update.c +@@ -453,6 +453,11 @@ gpk_check_update_show_error (GpkCheckUpd + g_object_unref (cupdate->priv->error_code); + cupdate->priv->error_code = g_object_ref (error_code); + ++ if (error_enum == PK_ERROR_ENUM_DEP_RESOLUTION_FAILED) { ++ gpk_error_dialog_modal_yast (NULL, title, message, pk_error_get_details (error_code)); ++ goto out; ++ } ++ + /* do the bubble */ + g_debug ("title=%s, message=%s", title, message); + notification = notify_notification_new (title, message, NULL); +Index: gnome-packagekit-2.91.4/src/gpk-dbus-task.c +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-dbus-task.c ++++ gnome-packagekit-2.91.4/src/gpk-dbus-task.c +@@ -336,7 +336,7 @@ gpk_dbus_task_error_msg (GpkDbusTask *dt + + /* hide the main window */ + window = gpk_modal_dialog_get_window (dtask->priv->dialog); +- gpk_error_dialog_modal_with_time (window, title, message, details, dtask->priv->timestamp); ++ gpk_error_dialog_modal_with_time (window, title, message, details, dtask->priv->timestamp, FALSE); + } + + /** +Index: gnome-packagekit-2.91.4/src/gpk-error.c +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-error.c ++++ gnome-packagekit-2.91.4/src/gpk-error.c +@@ -31,6 +31,32 @@ + #include "gpk-common.h" + #include "gpk-error.h" + ++static gboolean ++gpk_error_dialog_run_yast (gpointer unused) ++{ ++ gboolean retval; ++ GError *error = NULL; ++ ++ PkControl *control = pk_control_new (); ++ if (!pk_control_suggest_daemon_quit(control, NULL, &error)) ++ g_debug ("Failure calling pk_control_suggest_daemon_quit:%s", error->message); ++ g_object_unref (control); ++ ++ retval = g_spawn_command_line_async ("gnomesu -- /sbin/yast2 online_update", NULL); ++ if (!retval) ++ g_debug ("Failure launching yast2 online_update"); ++ return FALSE; ++} ++ ++static void ++gpk_error_dialog_yast_cb (GtkButton *button, gpointer data) ++{ ++ g_debug ("user wants to try YaST..."); ++ /* we want to make sure and finish up outstanding stuff before we launch yast so we can release the libzypp lock */ ++ g_timeout_add_seconds (2, gpk_error_dialog_run_yast, NULL); ++ gtk_main_quit (); ++} ++ + /** + * gpk_error_dialog_expanded_cb: + **/ +@@ -59,13 +85,15 @@ gpk_error_dialog_expanded_cb (GObject *o + * Shows a modal error, and blocks until the user clicks close + **/ + gboolean +-gpk_error_dialog_modal_with_time (GtkWindow *window, const gchar *title, const gchar *message, const gchar *details, guint timestamp) ++gpk_error_dialog_modal_with_time (GtkWindow *window, const gchar *title, const gchar *message, const gchar *details, guint timestamp, gboolean prompt_yast) + { + GtkWidget *widget; ++ GtkWidget *button; + GtkBuilder *builder; + GtkTextBuffer *buffer = NULL; + guint retval; + GError *error = NULL; ++ gchar *full_message; + + g_return_val_if_fail (message != NULL, FALSE); + +@@ -108,8 +136,22 @@ gpk_error_dialog_modal_with_time (GtkWin + gtk_label_set_label (GTK_LABEL (widget), title); + + /* message */ ++ if (prompt_yast) { ++ g_debug ("DEP_RES failed - will ask if they want to try yast"); ++ full_message = g_strconcat (message, "\n\n", _("To try and manually resolve problems use the YaST \"Online Update\" module"), NULL); ++ button = gtk_button_new_with_label(_("Start YaST and install updates manually")); ++ g_signal_connect (button, "clicked", G_CALLBACK (gpk_error_dialog_yast_cb), NULL); ++ /* add to box */ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_error")); ++ widget = gtk_dialog_get_action_area (GTK_DIALOG(widget)); ++ gtk_box_pack_start (GTK_BOX (widget), button, TRUE, TRUE, 0); ++ gtk_widget_show (button); ++ } ++ else ++ full_message = g_strdup (message); + widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_message")); +- gtk_label_set_markup (GTK_LABEL (widget), message); ++ gtk_label_set_markup (GTK_LABEL (widget), full_message); ++ g_free (full_message); + + /* show text in the expander */ + if (details == NULL || details[0] == '\0') { +@@ -153,7 +195,13 @@ out_build: + gboolean + gpk_error_dialog_modal (GtkWindow *window, const gchar *title, const gchar *message, const gchar *details) + { +- return gpk_error_dialog_modal_with_time (window, title, message, details, 0); ++ return gpk_error_dialog_modal_with_time (window, title, message, details, 0, FALSE); ++} ++ ++gboolean ++gpk_error_dialog_modal_yast (GtkWindow *window, const gchar *title, const gchar *message, const gchar *details) ++{ ++ return gpk_error_dialog_modal_with_time (window, title, message, details, 0, TRUE); + } + + /** +Index: gnome-packagekit-2.91.4/src/gpk-error.h +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-error.h ++++ gnome-packagekit-2.91.4/src/gpk-error.h +@@ -37,7 +37,12 @@ gboolean gpk_error_dialog_modal_with_ti + const gchar *title, + const gchar *message, + const gchar *details, +- guint timestamp); ++ guint timestamp, ++ gboolean prompt_yast); ++gboolean gpk_error_dialog_modal_yast (GtkWindow *window, ++ const gchar *title, ++ const gchar *message, ++ const gchar *details); + + G_END_DECLS + +Index: gnome-packagekit-2.91.4/src/gpk-update-viewer.c +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-update-viewer.c ++++ gnome-packagekit-2.91.4/src/gpk-update-viewer.c +@@ -461,8 +461,12 @@ gpk_update_viewer_update_packages_cb (Pk + CA_PROP_EVENT_DESCRIPTION, _("Failed to update"), NULL); + + window = GTK_WINDOW(gtk_builder_get_object (builder, "dialog_updates")); +- gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), +- gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ if (pk_error_get_code (error_code) == PK_ERROR_ENUM_DEP_RESOLUTION_FAILED) { ++ gpk_error_dialog_modal_yast (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ } else ++ gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); + + /* re-enable the package list */ + gpk_update_viewer_packages_set_sensitive (TRUE); +@@ -2108,8 +2112,12 @@ gpk_update_viewer_get_details_cb (PkClie + g_warning ("failed to get details: %s, %s", pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code)); + + window = GTK_WINDOW(gtk_builder_get_object (builder, "dialog_updates")); +- gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), +- gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ if (pk_error_get_code (error_code) == PK_ERROR_ENUM_DEP_RESOLUTION_FAILED) { ++ gpk_error_dialog_modal_yast (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ } else ++ gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); + goto out; + } + +@@ -3020,8 +3028,12 @@ gpk_update_viewer_get_distro_upgrades_cb + g_warning ("failed to get list of distro upgrades: %s, %s", pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code)); + + window = GTK_WINDOW(gtk_builder_get_object (builder, "dialog_updates")); +- gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), +- gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ if (pk_error_get_code (error_code) == PK_ERROR_ENUM_DEP_RESOLUTION_FAILED) { ++ gpk_error_dialog_modal_yast (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); ++ } else ++ gpk_error_dialog_modal (window, gpk_error_enum_to_localised_text (pk_error_get_code (error_code)), ++ gpk_error_enum_to_localised_message (pk_error_get_code (error_code)), pk_error_get_details (error_code)); + goto out; + } + diff --git a/gnome-packagekit-fate302445.patch b/gnome-packagekit-fate302445.patch new file mode 100644 index 0000000..3b08d3f --- /dev/null +++ b/gnome-packagekit-fate302445.patch @@ -0,0 +1,120 @@ +Index: gnome-packagekit-2.91.4/src/gpk-update-icon.c +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-update-icon.c ++++ gnome-packagekit-2.91.4/src/gpk-update-icon.c +@@ -48,6 +48,78 @@ static GpkFirmware *firmware = NULL; + static GpkHardware *hardware = NULL; + static guint timer_id = 0; + static gboolean timed_exit = FALSE; ++static GSettings *settings = NULL; ++ ++#define GPK_UPDATE_HARDWARE_SEND_ACTION "gpk-update-icon hardware info - send " ++#define GPK_UPDATE_HARDWARE_DONT_PROMPT_ACTION "gpk-update-icon hardware info - don't ask again" ++ ++static void ++gpk_update_libnotify_cb (NotifyNotification *notification, gchar *action, gpointer data) ++{ ++ if (g_strcmp0 (action, GPK_UPDATE_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", GPK_SETTINGS_HARDWARE_ASKED_TO_COLLECT); ++ g_settings_set_boolean (settings, GPK_SETTINGS_HARDWARE_ASKED_TO_COLLECT, TRUE); ++ } else if (g_strcmp0 (action, GPK_UPDATE_HARDWARE_DONT_PROMPT_ACTION) == 0) { ++ g_debug ("set %s to TRUE because user said no", GPK_SETTINGS_HARDWARE_ASKED_TO_COLLECT); ++ g_settings_set_boolean (settings, GPK_SETTINGS_HARDWARE_ASKED_TO_COLLECT, TRUE); ++ } else { ++ g_warning ("unknown action id: %s", action); ++ } ++ ++} ++ ++static gboolean ++check_for_collect_hardware_information (gpointer 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 (settings, GPK_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, GPK_UPDATE_HARDWARE_SEND_ACTION, ++ _("Send now"), gpk_update_libnotify_cb, NULL, NULL); ++ notify_notification_add_action (notification, GPK_UPDATE_HARDWARE_DONT_PROMPT_ACTION, ++ _("Do not show this again"), gpk_update_libnotify_cb, NULL, 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; ++} + + /** + * gpk_icon_timed_exit_cb: +@@ -70,11 +142,14 @@ gpk_icon_startup_cb (GtkApplication *app + watch = gpk_watch_new (); + firmware = gpk_firmware_new (); + hardware = gpk_hardware_new (); ++ settings = g_settings_new (GPK_SETTINGS_SCHEMA); + + /* Only timeout if we have specified iton the command line */ + if (timed_exit) { + timer_id = g_timeout_add_seconds (120, (GSourceFunc) gpk_icon_timed_exit_cb, application); + g_source_set_name_by_id (timer_id, "[GpkUpdateIcon] timed exit"); ++ } else { ++ g_timeout_add_seconds (5 * 60, check_for_collect_hardware_information, NULL); + } + } + +Index: gnome-packagekit-2.91.4/data/org.gnome.packagekit.gschema.migrate +=================================================================== +--- gnome-packagekit-2.91.4.orig/data/org.gnome.packagekit.gschema.migrate ++++ gnome-packagekit-2.91.4/data/org.gnome.packagekit.gschema.migrate +@@ -45,4 +45,4 @@ dbus-default-interaction = /apps/gnome-p + dbus-enforced-interaction = /apps/gnome-packagekit/dbus_enforced_interaction + install-root = /apps/gnome-packagekit/install_root + media-repo-filenames = /apps/gnome-packagekit/media_repo_filenames +- ++updater-asked-to-collect-hardware-information = /apps/gnome-packagekit/updater_asked_to_collect_hardware_information +Index: gnome-packagekit-2.91.4/src/gpk-common.h +=================================================================== +--- gnome-packagekit-2.91.4.orig/src/gpk-common.h ++++ gnome-packagekit-2.91.4/src/gpk-common.h +@@ -53,6 +53,7 @@ G_BEGIN_DECLS + #define GPK_SETTINGS_FREQUENCY_GET_UPDATES "frequency-get-updates" + #define GPK_SETTINGS_FREQUENCY_GET_UPGRADES "frequency-get-upgrades" + #define GPK_SETTINGS_FREQUENCY_REFRESH_CACHE "frequency-refresh-cache" ++#define GPK_SETTINGS_HARDWARE_ASKED_TO_COLLECT "updater-asked-to-collect-hardware-information" + #define GPK_SETTINGS_IGNORED_DBUS_REQUESTS "ignored-dbus-requests" + #define GPK_SETTINGS_IGNORED_DEVICES "ignored-devices" + #define GPK_SETTINGS_IGNORED_MESSAGES "ignored-messages" diff --git a/gnome-settings-daemon-2.32.1.tar.bz2 b/gnome-settings-daemon-2.32.1.tar.bz2 deleted file mode 100644 index 36aece8..0000000 --- a/gnome-settings-daemon-2.32.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0074b3fec3ad6e3ab91a05dc20906b06101ea8bca0cd2caf394a5cc141b05e86 -size 1331850 diff --git a/gnome-settings-daemon-3.0.1.tar.bz2 b/gnome-settings-daemon-3.0.1.tar.bz2 new file mode 100644 index 0000000..97a0a74 --- /dev/null +++ b/gnome-settings-daemon-3.0.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51cdd0842b907e95c79d4e2b26f554e26fc626f7c2e6c3a14e3fc7954ca91117 +size 1595713 diff --git a/gnome-settings-daemon-add-layout-switcher.patch b/gnome-settings-daemon-add-layout-switcher.patch index f2d0759..fae040f 100644 --- a/gnome-settings-daemon-add-layout-switcher.patch +++ b/gnome-settings-daemon-add-layout-switcher.patch @@ -2,43 +2,41 @@ Index: plugins/keyboard/gsd-keyboard-xkb.c =================================================================== --- plugins/keyboard/gsd-keyboard-xkb.c.orig +++ plugins/keyboard/gsd-keyboard-xkb.c -@@ -361,6 +361,57 @@ show_hide_icon () +@@ -317,6 +317,53 @@ show_hide_icon () } } +static void +_maybe_add_layout_switcher (GSList *layouts, -+ GConfClient *conf_client) ++ GSettings *settings_keyboard) +{ -+ GSList *options; -+ gboolean appended; ++ 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 -+ * capplets/keyboard/gnome-keyboard-properties-xkbltadd.c ++ * plugins/region/gnome-region-panel-xkbltadd.c + * (gnome-control-center) */ -+ options = gconf_client_get_list (conf_client, -+ GKBD_KEYBOARD_CONFIG_KEY_OPTIONS, -+ GCONF_VALUE_STRING, -+ NULL); ++ g_settings_get_strv (settings_keyboard, GKBD_KEYBOARD_CONFIG_KEY_OPTIONS); + + if (options == NULL) { -+ GSList *option; ++ GPtrArray *options_array; ++ gchar *option; + + /* nothing in gconf, get the current options from X */ + GkbdKeyboardConfig kbd_config; + -+ gkbd_keyboard_config_init (&kbd_config, -+ conf_client, -+ xkl_engine); ++ gkbd_keyboard_config_init (&kbd_config, xkl_engine); + gkbd_keyboard_config_load_from_x_initial (&kbd_config, NULL); + -+ for (option = kbd_config.options; option != NULL; option = option->next) { -+ options = g_slist_prepend (options, -+ g_strdup (option->data)); -+ } ++ options_array = g_ptr_array_new (); ++ option = kbd_config.options; + -+ options = g_slist_reverse (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); + } @@ -47,24 +45,22 @@ Index: plugins/keyboard/gsd-keyboard-xkb.c + options = gkbd_keyboard_config_add_default_switch_option_if_necessary (layouts, options, &appended); + + if (appended) { -+ gconf_client_set_list (conf_client, -+ GKBD_KEYBOARD_CONFIG_KEY_OPTIONS, -+ GCONF_VALUE_STRING, options, -+ NULL); ++ g_settings_set_strv (settings_keyboard, ++ GKBD_KEYBOARD_CONFIG_KEY_OPTIONS, ++ (const gchar *const*)(options)); + } + -+ g_slist_foreach (options, (GFunc) g_free, NULL); -+ g_slist_free (options); ++ g_strfreev (options); +} + static gboolean try_activating_xkb_config_if_new (GkbdKeyboardConfig * current_sys_kbd_config) -@@ -542,6 +593,7 @@ apply_xkb_settings (void) - g_slist_free (free_layouts); +@@ -486,6 +533,7 @@ apply_xkb_settings (void) + (gdm_layout)); } -+ _maybe_add_layout_switcher (layouts, conf_client); - gconf_client_set_list (conf_client, - GKBD_KEYBOARD_CONFIG_KEY_LAYOUTS, - GCONF_VALUE_STRING, layouts, ++ _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-bnc427745-force-dpi.patch b/gnome-settings-daemon-bnc427745-force-dpi.patch deleted file mode 100644 index 303a2aa..0000000 --- a/gnome-settings-daemon-bnc427745-force-dpi.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: plugins/xsettings/gsd-xsettings-manager.c -=================================================================== ---- plugins/xsettings/gsd-xsettings-manager.c.orig 2009-09-21 20:24:02.000000000 +1000 -+++ plugins/xsettings/gsd-xsettings-manager.c 2010-01-13 16:44:52.000000000 +1100 -@@ -281,6 +281,7 @@ get_dpi_from_gconf_or_x_server (GConfCli - gconf_value_free (value); - } else { - dpi = get_dpi_from_x_server (); -+ dpi = DPI_FALLBACK; - } - - return dpi; diff --git a/gnome-settings-daemon.changes b/gnome-settings-daemon.changes index 538a4c4..4c42c93 100644 --- a/gnome-settings-daemon.changes +++ b/gnome-settings-daemon.changes @@ -1,3 +1,189 @@ +------------------------------------------------------------------- +Mon May 2 16:40:38 CEST 2011 - vuntz@opensuse.org + +- Drop temporary rpmlintrc as bnc#690496 got fixed. + +------------------------------------------------------------------- +Thu Apr 28 09:49:09 UTC 2011 - fcrozat@novell.com + +- Update to version 3.0.1: + + Media-keys: Fix possible crash when sound device is removed. + + Updates: Fix firmware auto-installation. + + Updated translations. + +------------------------------------------------------------------- +Thu Apr 28 11:06:18 CEST 2011 - vuntz@opensuse.org + +- Pass --enable-gconf-bridge to build the gconf bridge (that + mirrors settings between gsettings and gconf). +- Add nautilus Recommends, as the housekeeping plugin uses a dbus + service provided by nautilus to empty the trash. This is + optional at runtime, though, so don't make it a Requires. + +------------------------------------------------------------------- +Wed Apr 6 13:16:57 UTC 2011 - fcrozat@novell.com + +- Update to version 3.0.0.1: + + Keyboard: Fix crash showing the keyboard layout in fallback + mode. + + Updated translations. + +------------------------------------------------------------------- +Wed Apr 6 09:31:43 UTC 2011 - fcrozat@novell.com + +- Update to version 3.0.0: + + Common: + - Change default inactive sleep on battery to suspend. + + Keyboard: + - Clarify actual units used for repeat rate (bgo#646241) + + Printers: + - Cancel CUPS' subscription policy + - Make CUPS' subscriptions expirable + - Remove old subscriptions + + XSettings: + - Try a few times to start the xsettings manager (bgo#634988) + + Updated translations. +- Changes from version 2.91.92: + + Common: + - Update priority of a few plugins + - gdk_display_get_device_manager() retval handling + (bgo#685020). + - Improve CUPS detection (bgo#644063) + - Make sure G_LOG_DOMAIN is set to the plugin name for each + plugin. + - Make sure we mop up stray idle handlers. + - Simplify input helper. + - Launch a custom script on input devices (bgo#635486) + + Daemon: + - Fix possible crasher on exit (bgo#639347) + + Media keys: + - Update gvc copy/paste from control-center + - Make volume go up to 11 (bgo#631030) + - Simplify volume keys handling (bgo#640963) + + Mouse: + - Fix possible memory leak + - Implement touchpad motion settings (bgo#642474) + - Fix shape handling in locate-pointer (bgo#645092) + - Handle touchpad handedness changing + - Don't apply any settings if XInput isn't present + - Separate device dependent calls + - Remove duplicated calls on start + - Remove unused supports_xinput_devices() call + - Make sure syndaemon is killed when touchpad disappears + - Hook up input device customisation script + - Fix double-free when handling one-button touchpad + - Fix crash in GHashTable usage + + Power: + - Set the default display off time to be same as session idle + time. + + Updates: + - g_get_real_time() returns microseconds, not seconds since the + epoch. + - Ensure te user gets the updates notification if it's never + been shown. + - Ensure the user gets notified of normal updates at the + correct interval. +- Changes from version 2.91.91: + + Automount: + - Fix crash when unlocking the screen saver + - Don't queue volumes when session is inactive + + Housekeeping: + - Use nautilus's D-Bus API to empty the trash + + Media keys: + - Add magnifier in/out keybindings + - Fix larger text/smaller text keybindings + + Mouse: + - Make locate pointer feature work with GTK+ 3 + + Printers: + - Use new CUPS D-Bus API + + Updates: + - Use auto-download updates when possible + + XSettings: + - Also accept .gtk-module for GTK+ modules + - Don't set Xft.lcdfilter, it's broken + - Use "text-scaling-factor" key instead of DPI +- Changes from version 2.91.90: + + A11Y Settings: + - Add new plugin + + Automount: + - Look if the session is active before automounting + new volumes + - Disable automounting while screen is locked + + Background: + - Stop pending fades if new ones initiated + + Date & Time: + - Add Debian support to NTP service activation (bgo#641598) + - Fix gsd_datetime_check_tz_name() never working (bgo#674999) + + Keyboard: + - Update for new libgnomekbd API + - Match shell behaviour for visibility + - Explicitly calling gtk_widget_show_all for kbd layout + + Media keys: + - Fix crash when keybindings change + - Add more Universal Access keybindings (bgo#641279) + + Mouse: + - Use event driven mode for syndaemon (bgo#639623) + - Use syndaemon -K to ignore Ctrl+C and other combos + (bgo#639487) + + Print notification: + - Go back to using name in notifications + - Check that cups is recent enough + + Updates: + - Add an updates plugin to integrate with PackageKit + + XSettings: + - Fix memleak, using wrong unref function + + Updated translations +- Changes from version 2.91.9: + + Date & Time: + - Use a single polkit action for this + + Housekeeping: + - Fix an untranslatable string + + Keybindings: + - Rename Accessibility keybindings to 'Universal Access' + - Mark Accessibility keybindings as system + + Keyboard: + - Don't create kbd indicators in the shell + - Remove $GDM_KEYBOARD_LAYOUT handling + - Fix control-center invocation + + Media keys: + - Prevent volume underflow + - Use symbolic icons for OSD + + Print notification: + - New plugin for print notifications + - Appearance and wording tweaks + + XSettings: + - Initialize gtk-modules setting + - Support GTK/AutoMnemonics setting + + Updated translations +- Changes from version 2.91.8: + + Connect to the right GnomeRRScreen signal +- Changes from version 2.91.7: + + Adapt to new gnome-desktop API + + Remove unused macros + + Updated translations +- Changes from version 2.91.6.2: + + Fix a crasher with GTK+ 2.91.7 +- Changes from version 2.91.6.1: + + Suppress warnings due to gdk_error_trap_pop + + Fix build with GTK+ 2.91.7 +- Drop gnome-settings-daemon-bnc427745-force-dpi.patch: fixed + upstream as the DPI from the X server is not used anymore. +- Disable gnome-settings-daemon-add-layout-switcher.patch: this + needs to be rebased. +- Move gnome-packagekit-BNC383261.patch and + gnome-packagekit-fate302445.patch from gnome-packagekit to here, + since the code moved to the update plugin. They need to be + rebased, though. +- Add BuildRequires : cups-devel, pkgconfig(gudev-1.0), + pkgconfig(packagekit-glib2), pkgconfig(upower-glib). +- Set libexecdir to %_libexecdir/gnome-settings-daemon-3.0 to + ensure upgrade from g-s-d 2.x works fine. +- Update temporary rpmlintrc since the action is now named + configure instead of configurentp. +- Add support for source service checkout, with %BUILD_FROM_VCS: + + Add gnome-common BuildRequires. + + Add call to ./autogen.sh. + ------------------------------------------------------------------- Sun Feb 13 16:15:25 CET 2011 - vuntz@opensuse.org @@ -8,6 +194,138 @@ Sun Feb 13 16:15:25 CET 2011 - vuntz@opensuse.org - Pass %{?no_lang_C} to %find_lang so that english documentation can be packaged with the program, and not in the lang subpackage. +------------------------------------------------------------------- +Thu Dec 23 15:52:50 CET 2010 - vuntz@opensuse.org + +- Update to version 2.91.6: + + Port to GtkStyleContext + + Suspend by default on battery power + + Timezone and NTP improvements + + Port to GtkAppChooserButton + + Port background code to GDBus + + Support multiple smartcard drivers + + Background plugin misc fixes +- Add a temporary rpmlintrc file to ignore the + polkit-unauthorized-privilege error for + org.gnome.settingsdaemon.datetimemechanism.configurentp. + +------------------------------------------------------------------- +Sun Dec 19 17:23:04 CET 2010 - vuntz@opensuse.org + +- Update to version 2.91.5.1: + + Handle rename of org.gnome.media-handling +- Changes from version: 2.91.5: + + Add automount plugin + + Don't pass NULL strings to g_variant_new() + + Properly handle gnome-session EndSession signals +- Changes from version: 2.91.4: + + Add Wacom configuration plugin + + Add support for the XF86TouchpadOn/Off keys + + Move some gnome-power-manager settings, so it can be used in + the control center + + Only ever call g_bus_own_name() once for the main D-Bus name + + Register with gnome-session to avoid timeouts, and transition + problems on login + + Fix possible warnings or crashers when _stop() is called + without _start() having been completed +- Changes from version: 2.91.3: + + Remove xrdb plugin + + Remove outdated GConf schemas + + Handle a11y toggle shortcut keys in media-keys + + Make volume down work when muted + + Fix logout key shortcut not asking for a confirmation + + Fix crashes in media-keys + + Export the "cursor-blink-timeout" XSetting + + Use a notification for the low space warning in housekeeping + + Don't warn about low space when over 1GB is free + + Port daemon and xrandr plugin to GDBus + + Fix possible warnings in keyboard plugin +- Changes from version: 2.91.2.1: + + Require a newer gnome-desktop with GSettings support for the + background plugin +- Changes from version: 2.91.2: + + Migration to GSettings + + Use MIME types for URL handlers + + Remove typing break plugin + + Remove outdated font plugin + + Add GConf<->GSettings bridge plugin + + Don't choke if there are old plugins laying around + + Set priority for plugins based on settings + + Never daemonise the "daemon" + + Port to GDBus + + Add support for more multimedia keys + + Keyboard plugin improvements + + Remove status icon for monitors (bgo#631995) + + More network filesystems not to monitor (bgo#606421) + + Don't access free'd memory if a volume is unmounted whilst the + dialog is running + + Fix loading plugins information (bgo#631933) + + For media key, use the default application for audio/ogg + + Make the "log out" key really do that + + Handle video out keys in media-keys (bgo#623223) + + Use virtual modifier for the Windows key + + Remove horrible xmodmap fallback code (bgo#150542) + + Show a touchpad-disabled if no touchpad + + Use Gdk to get events about input devices being added + + Add middle-button-enabled key (bgo#633863) + + Add gnome-settings-daemon man page (bgo#588716) + + Export Xft.lcdfilter for OO.o's benefit (bgo#631924) + + If the stored configuration fails at startup, use the fallback + configurations + + Use $(sysconfigdir) for .ad files, since they are settings + + Don't display the gnome-settings-daemon autostart in the + startup applications list + + Add settings key for disabling boot time configuration + (bgo#631388) + + Other bug fixes: bgo#631963, bgo#631931, bgo#631866, + bgo#591798, bgo#612024, bgo#582703, bgo#632122, bgo#579021, + bgo#630535, bgo#632569, bgo#623223, bgo#634092, bgo#633320. + + Build system changes. + + Updated translations. +- Changes from version: 2.91.0: + + Give a name to the keyboard status icon (bgo#610319) + + Fix include directory to match API version + + Add daemon path to pkg-config files + + Don't switch mouse buttons for XTest devices (bgo#627084) + + Use gdk-pixbuf header (bgo#630975) + + Use cairo regions to set input shape + + Use an empty region to ignore events + + Adapt to GTK+ 3.0, gnome-desktop 3.0, libgnomekbd API changes. + + Updated translations. +- Changes from version: 2.90.1: + + Apply keyboard a11y settings for newly plugged keyboards + + Loads of compilation fixes for GTK3 + + Fix crasher when certain items are copied to the clipboard + + Silent build by default + + Display: + - Don't try to activate display configurations where all the + outputs are off + - Don't cycle through custom display configurations on + XF86Display button press + - Add logging infrastructure +- Change gnome-desktop-2.0, gtk+-2.0, libcanberra-gtk pkgconfig() + BuildRequires to gnome-desktop-3.0, gtk+-3.0, libcanberra-gtk3. +- Add pkgconfig(gsettings-desktop-schemas) BuildRequires and + gsettings-desktop-schemas Requires. +- Rebase gnome-settings-daemon-bnc427745-force-dpi.patch. +- Rewrite gnome-settings-daemon-add-layout-switcher.patch, + following the move to GSettings. +- Disable gnome-settings-daemon-system-proxy-configuration.diff, + gnome-settings-daemon-apport-monitor.patch, + gnome-settings-daemon-bnc462640-mute-action.patch: those patches + need to be rebased. Because of this, we also comment out the + support for gnome-patch-translation and the call to autoreconf. +- Remove dbus-1-devel, dbus-1-glib-devel, glib2-devel, + gnome-desktop-devel, gnome-menus-devel, gtk2-devel Requires of + devel package: the ones really needed will be automatically added + the pkgconfig() way. +- Do not pass --libexecdir=%{_prefix}/lib/gnome-settings-daemon to + configure: there is no reason to do so. +- Remove all the gconf schema handling (%gconf_schemas_prereq, + %find_gconf_schemas and scriptlets). +- Handle gsettings schemas: add %glib2_gsettings_schema_requires + and %glib2_gsettings_schema_post(un) in the scriptlets. + ------------------------------------------------------------------- Tue Nov 16 09:27:00 CET 2010 - dimstar@opensuse.org diff --git a/gnome-settings-daemon.spec b/gnome-settings-daemon.spec index dc27b0b..d7d3911 100644 --- a/gnome-settings-daemon.spec +++ b/gnome-settings-daemon.spec @@ -18,52 +18,66 @@ Name: gnome-settings-daemon -Version: 2.32.1 -Release: 2 +Version: 3.0.1 +Release: 1 License: GPLv2+ Summary: Settings daemon for the GNOME desktop Url: http://www.gnome.org Group: System/GUI/GNOME Source: %{name}-%{version}.tar.bz2 -# PATCH-FEATURE-OPENSUSE gnome-settings-daemon-system-proxy-configuration.diff +# PATCH-NEEDS-REBASE gnome-settings-daemon-system-proxy-configuration.diff (was PATCH-FEATURE-OPENSUSE) Patch2: gnome-settings-daemon-system-proxy-configuration.diff -# PATCH-FIX-UPSTREAM gnome-settings-daemon-bnc427745-force-dpi.patch bnc427745 bgo553652 vuntz@novell.com -- Force the DPI to 96 right now to avoid big fonts. -Patch6: gnome-settings-daemon-bnc427745-force-dpi.patch -# PATCH-FEATURE-UPSTREAM gnome-settings-daemon-apport-monitor.patch bnc439203 jblunck@novell.com -- Add apport monitoring plugin. +# 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 +# PATCH-NEEDS-REBASE gnome-settings-daemon-bnc462640-mute-action.patch bnc462640 bgo572365 vuntz@novell.com -- Mute button should always mute sound instead of toggling mute status (was PATCH-FEATURE-UPSTREAM) Patch10: gnome-settings-daemon-bnc462640-mute-action.patch # PATCH-NEEDS-REBASE gnome-settings-daemon-bnc461755-randr-rotate-wacom.diff bnc461755 federico@novell.com - Add the option of rotating a Wacom tablet when rotating the monitor with RANDR (was PATCH-FEATURE-OPENSUSE) Patch11: gnome-settings-daemon-bnc461755-randr-rotate-wacom.diff -# 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) +# 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-NEEDSREBASE PATCH-FEATURE-OPENSUSE gnome-packagekit-fate302445.patch fate 302445 +Patch14: gnome-packagekit-fate302445.patch +# PATCH-NEEDSREBASE PATCH-MISSING-TAG -- See http://en.opensuse.org/Packaging/Patches +Patch15: gnome-packagekit-BNC383261.patch BuildRequires: fdupes BuildRequires: gnome-common -BuildRequires: gnome-patch-translation +# Disabled because of the non-rebased patches +#BuildRequires: gnome-patch-translation BuildRequires: intltool BuildRequires: translation-update-upstream BuildRequires: update-desktop-files +BuildRequires: cups-devel BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(gconf-2.0) BuildRequires: pkgconfig(glib-2.0) -BuildRequires: pkgconfig(gnome-desktop-2.0) -BuildRequires: pkgconfig(gtk+-2.0) -BuildRequires: pkgconfig(libcanberra-gtk) +%if 0%{?BUILD_FROM_VCS} +BuildRequires: gnome-common +%endif +BuildRequires: pkgconfig(gnome-desktop-3.0) +BuildRequires: pkgconfig(gsettings-desktop-schemas) +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(libcanberra-gtk3) BuildRequires: pkgconfig(libgnomekbd) BuildRequires: pkgconfig(libgnomekbdui) BuildRequires: pkgconfig(libnotify) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libxklavier) BuildRequires: pkgconfig(nss) +BuildRequires: pkgconfig(packagekit-glib2) BuildRequires: pkgconfig(polkit-gobject-1) +BuildRequires: pkgconfig(upower-glib) BuildRequires: pkgconfig(xi) +Requires: gsettings-desktop-schemas Recommends: %{name}-lang +# For housekeeping plugin, that uses the nautilus dbus service +Recommends: nautilus # Split so people can depend on this only if needed Requires: %{name}-polkit-datetime = %{version} Obsoletes: resapplet BuildRoot: %{_tmppath}/%{name}-%{version}-build -%gconf_schemas_prereq +%glib2_gsettings_schema_requires %description gnome-settings-daemon provides a daemon run by all GNOME sessions to @@ -89,12 +103,6 @@ License: GPLv2+ Summary: Development package for the GNOME settings daemon Group: System/GUI/GNOME Requires: %{name} = %{version} -Requires: dbus-1-devel -Requires: dbus-1-glib-devel -Requires: glib2-devel -Requires: gnome-desktop-devel -Requires: gnome-menus-devel -Requires: gtk2-devel %description devel gnome-settings-daemon provides a daemon run by all GNOME sessions to @@ -109,69 +117,96 @@ contact the settings daemon via its DBus interface. %prep %setup -q translation-update-upstream -gnome-patch-translation-prepare -%patch2 -p0 -%patch6 -p0 -%patch8 -p0 -%patch10 -p0 +%if !0%{?BUILD_FROM_VCS} +# Disabled because of the non-rebased patches +#gnome-patch-translation-prepare +#%patch2 -p0 +#%patch8 -p0 +#%patch10 -p0 # PATCH-NEEDS-REBASE #%patch11 -p1 -%patch13 -p0 -gnome-patch-translation-update +# PATCH-NEEDS-REBASE +#%patch13 -p0 +# PATCH-NEEDS-REBASE +#%patch14 -p0 +# PATCH-NEEDS-REBASE +#%patch15 -p0 +%endif + +%if 0%{?BUILD_FROM_VCS} +NOCONFIGURE=1 /usr/bin/gnome-autogen.sh +%endif %build -autoreconf -f -i +# Disabled because of the non-rebased patches +#autoreconf -f -i %configure\ - --libexecdir=%{_prefix}/lib/gnome-settings-daemon\ - --disable-static -make %{?jobs:-j%jobs} + --libexecdir=%{_libexecdir}/gnome-settings-daemon-3.0 \ + --enable-gconf-bridge \ + --disable-static +make %{?jobs:-j%jobs} V=1 %install %makeinstall %if 0%{?suse_version} <= 1120 %{__rm} %{buildroot}%{_datadir}/locale/en@shaw/LC_MESSAGES/* %endif -rm %{buildroot}%{_libdir}/gnome-settings-daemon-2.0/*.*a +find %{buildroot}%{_libdir} -name '*.la' -type f -delete -print %suse_update_desktop_file gnome-settings-daemon %find_lang %{name} %{?no_lang_C} -%find_gconf_schemas %fdupes %{buildroot} %clean rm -rf %{buildroot} %post +%glib2_gsettings_schema_post %icon_theme_cache_post %postun +%glib2_gsettings_schema_postun %icon_theme_cache_postun -%pre -f %{name}.schemas_pre - -%posttrans -f %{name}.schemas_posttrans - -%preun -f %{name}.schemas_preun - -%files -f %{name}.schemas_list +%files %defattr(-,root,root) %doc AUTHORS COPYING ChangeLog NEWS +%{_datadir}/dbus-1/interfaces/org.gnome.SettingsDaemonUpdates.xml %{_datadir}/dbus-1/services/org.gnome.SettingsDaemon.service %{_datadir}/gnome-settings-daemon/ -%{_libexecdir}/gnome-settings-daemon/ -# lives in another package -%exclude %{_libexecdir}/gnome-settings-daemon/gsd-datetime-mechanism -%{_libdir}/gnome-settings-daemon-2.0/ +%{_datadir}/gnome-settings-daemon-3.0/ +%dir %{_libexecdir}/gnome-settings-daemon-3.0 +%{_libexecdir}/gnome-settings-daemon-3.0/gnome-settings-daemon +%{_libexecdir}/gnome-settings-daemon-3.0/gsd-locate-pointer +%{_libexecdir}/gnome-settings-daemon-3.0/gsd-printer +%if "%{_libdir}" != "%{_libexecdir}" +%dir %{_libdir}/gnome-settings-daemon-3.0/ +%endif +%{_libdir}/gnome-settings-daemon-3.0/*.gnome-settings-plugin +%{_libdir}/gnome-settings-daemon-3.0/*.so %{_sysconfdir}/xdg/autostart/*.desktop +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.enums.xml +%{_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.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 +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.media-keys.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.power.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.print-notifications.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.updates.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.xrandr.gschema.xml +%{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.xsettings.gschema.xml %{_datadir}/icons/*/*/* -# Own the directories to avoid a build dependency on gnome-control-center -# (which creates a loop) -%dir %{_datadir}/gnome-control-center -%dir %{_datadir}/gnome-control-center/keybindings -%{_datadir}/gnome-control-center/keybindings/50-accessibility.xml +%{_mandir}/man1/gnome-settings-daemon.1* +# Own the directory since we can't depend on gconf providing them +%dir %{_datadir}/GConf +%dir %{_datadir}/GConf/gsettings +%{_datadir}/GConf/gsettings/gnome-settings-daemon.convert +%{_mandir}/man1/* %files polkit-datetime %defattr(-,root,root) -%{_libexecdir}/gnome-settings-daemon/gsd-datetime-mechanism +%{_libexecdir}/gnome-settings-daemon-3.0/gsd-datetime-mechanism %{_datadir}/dbus-1/system-services/org.gnome.SettingsDaemon.DateTimeMechanism.service %{_datadir}/polkit-1/actions/org.gnome.settingsdaemon.datetimemechanism.policy %{_sysconfdir}/dbus-1/system.d/org.gnome.SettingsDaemon.DateTimeMechanism.conf @@ -180,7 +215,7 @@ rm -rf %{buildroot} %files devel %defattr (-, root, root) -%{_includedir}/gnome-settings-daemon-2.0/ -%{_libdir}/pkgconfig/*.pc +%{_includedir}/gnome-settings-daemon-3.0/ +%{_libdir}/pkgconfig/gnome-settings-daemon.pc %changelog