![](https://seccdn.libravatar.org/avatar/e2145bc5cf53dda95c308a3c75e8fef3.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package gnome-settings-daemon for openSUSE:Factory checked in at Thu May 5 16:50:05 CEST 2011. -------- --- GNOME/gnome-settings-daemon/gnome-settings-daemon.changes 2011-02-13 17:23:13.000000000 +0100 +++ /mounts/work_src_done/STABLE/gnome-settings-daemon/gnome-settings-daemon.changes 2011-05-02 16:51:56.000000000 +0200 @@ -1,0 +2,186 @@ +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. + +------------------------------------------------------------------- @@ -9,0 +196,132 @@ + +------------------------------------------------------------------- +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 ++++ 122 more lines (skipped) ++++ between GNOME/gnome-settings-daemon/gnome-settings-daemon.changes ++++ and /mounts/work_src_done/STABLE/gnome-settings-daemon/gnome-settings-daemon.changes calling whatdependson for head-i586 Old: ---- gnome-settings-daemon-2.32.1.tar.bz2 gnome-settings-daemon-bnc427745-force-dpi.patch New: ---- gnome-packagekit-BNC383261.patch gnome-packagekit-fate302445.patch gnome-settings-daemon-3.0.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnome-settings-daemon.spec ++++++ --- /var/tmp/diff_new_pack.CD1pax/_old 2011-05-05 16:46:52.000000000 +0200 +++ /var/tmp/diff_new_pack.CD1pax/_new 2011-05-05 16:46:52.000000000 +0200 @@ -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 @@ 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 @@ %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\ + --libexecdir=%{_libexecdir}/gnome-settings-daemon-3.0 \ + --enable-gconf-bridge \ --disable-static -make %{?jobs:-j%jobs} +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 @@ %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 ++++++ gnome-packagekit-BNC383261.patch ++++++ 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; } ++++++ gnome-packagekit-fate302445.patch ++++++ 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.<br>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" ++++++ gnome-settings-daemon-2.32.1.tar.bz2 -> gnome-settings-daemon-3.0.1.tar.bz2 ++++++ ++++ 221983 lines of diff (skipped) ++++++ gnome-settings-daemon-add-layout-switcher.patch ++++++ --- /var/tmp/diff_new_pack.CD1pax/_old 2011-05-05 16:46:53.000000000 +0200 +++ /var/tmp/diff_new_pack.CD1pax/_new 2011-05-05 16:46:53.000000000 +0200 @@ -2,43 +2,41 @@ =================================================================== --- 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 @@ + 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 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org