Date: Monday, August 8, 2016 @ 22:26:16 Author: jgc Revision: 273520 upgpkg: gconf 3.2.6-5
Add upstream patches from master branch, remove gio-querymodules from .install file Added: gconf/trunk/dbus-dontspew.patch gconf/trunk/gsettings-data-convert-fix-invalid-schema-path.patch Modified: gconf/trunk/PKGBUILD gconf/trunk/gconf.install ------------------------------------------------------+ PKGBUILD | 16 ++- dbus-dontspew.patch | 86 +++++++++++++++++ gconf.install | 6 - gsettings-data-convert-fix-invalid-schema-path.patch | 44 ++++++++ 4 files changed, 143 insertions(+), 9 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2016-08-08 20:32:59 UTC (rev 273519) +++ PKGBUILD 2016-08-08 22:26:16 UTC (rev 273520) @@ -3,7 +3,7 @@ pkgname=gconf pkgver=3.2.6 -pkgrel=4 +pkgrel=5 pkgdesc="A configuration database system" arch=(i686 x86_64) license=('LGPL') @@ -16,7 +16,9 @@ gconfpkg gconf-reload.patch gconf-{install,remove}.hook - 01_xml-gettext-domain.patch) + 01_xml-gettext-domain.patch + dbus-dontspew.patch + gsettings-data-convert-fix-invalid-schema-path.patch) sha256sums=('1912b91803ab09a5eed34d364bf09fe3a2a9c96751fde03a4e0cfa51a04d784c' 'ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028' 'bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898' @@ -23,7 +25,9 @@ '567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694' '2732b2a6b187c5620105a036bde12edee99669605f70cbde56fe5f39619c3dc0' '436a65ff290095bc3d35d7d6297cf4d647f61e9f9922cea7ef9f1e251b447ff7' - 'c883dec2b96978874a53700cfe7f26f24f8296767203e970bc6402b4b9945eb8') + 'c883dec2b96978874a53700cfe7f26f24f8296767203e970bc6402b4b9945eb8' + 'b490394b0f541ca92134478fa2235536bdb1ccd3b3200d5040dd458cec33bfe8' + '0f2057fbd20837091cbcc1e291bb64c9c6066534891a4ee010bbf5b304bd831d') prepare() { cd "GConf-$pkgver" @@ -33,6 +37,10 @@ # http://bugzilla.gnome.org/show_bug.cgi?id=568845 patch -Np1 -i "$srcdir/01_xml-gettext-domain.patch" + # Upstream fixes + patch -Np1 -i ../dbus-dontspew.patch + patch -Np1 -i ../gsettings-data-convert-fix-invalid-schema-path.patch + # Python2 fix sed -i '1s|#!/usr/bin/env python$|&2|' gsettings/gsettings-schema-convert } @@ -45,6 +53,8 @@ --disable-static --enable-defaults-service \ --disable-orbit + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make pkglibdir=/usr/lib/GConf } Added: dbus-dontspew.patch =================================================================== --- dbus-dontspew.patch (rev 0) +++ dbus-dontspew.patch 2016-08-08 22:26:16 UTC (rev 273520) @@ -0,0 +1,86 @@ +From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001 +From: Ray Strode <rstr...@redhat.com> +Date: Mon, 15 Apr 2013 09:57:34 -0400 +Subject: dbus: Don't spew to console when unable to connect to dbus daemon + +Instead pass the error up for the caller to decide what to do. + +This prevent untrappable warning messages from showing up at the +console if gconftool --makefile-install-rule is called. +--- + gconf/gconf-dbus.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c +index 5610fcf..048e3ea 100644 +--- a/gconf/gconf-dbus.c ++++ b/gconf/gconf-dbus.c +@@ -105,7 +105,7 @@ static GHashTable *engines_by_db = NULL; + static GHashTable *engines_by_address = NULL; + static gboolean dbus_disconnected = FALSE; + +-static gboolean ensure_dbus_connection (void); ++static gboolean ensure_dbus_connection (GError **error); + static gboolean ensure_service (gboolean start_if_not_found, + GError **err); + static gboolean ensure_database (GConfEngine *conf, +@@ -383,7 +383,7 @@ gconf_engine_detach (GConfEngine *conf) + } + + static gboolean +-ensure_dbus_connection (void) ++ensure_dbus_connection (GError **err) + { + DBusError error; + +@@ -392,7 +392,9 @@ ensure_dbus_connection (void) + + if (dbus_disconnected) + { +- g_warning ("The connection to DBus was broken. Can't reinitialize it."); ++ g_set_error (err, GCONF_ERROR, ++ GCONF_ERROR_NO_SERVER, ++ "The connection to DBus was broken. Can't reinitialize it."); + return FALSE; + } + +@@ -402,7 +404,10 @@ ensure_dbus_connection (void) + + if (!global_conn) + { +- g_warning ("Client failed to connect to the D-BUS daemon:\n%s", error.message); ++ g_set_error (err, GCONF_ERROR, ++ GCONF_ERROR_NO_SERVER, ++ "Client failed to connect to the D-BUS daemon:\n%s", ++ error.message); + + dbus_error_free (&error); + return FALSE; +@@ -431,13 +436,8 @@ ensure_service (gboolean start_if_not_found, + + if (global_conn == NULL) + { +- if (!ensure_dbus_connection ()) +- { +- g_set_error (err, GCONF_ERROR, +- GCONF_ERROR_NO_SERVER, +- _("No D-BUS daemon running\n")); +- return FALSE; +- } ++ if (!ensure_dbus_connection (err)) ++ return FALSE; + + g_assert (global_conn != NULL); + } +@@ -2512,7 +2512,7 @@ gconf_ping_daemon (void) + { + if (global_conn == NULL) + { +- if (!ensure_dbus_connection ()) ++ if (!ensure_dbus_connection (NULL)) + { + return FALSE; + } +-- +cgit v0.12 + Modified: gconf.install =================================================================== --- gconf.install 2016-08-08 20:32:59 UTC (rev 273519) +++ gconf.install 2016-08-08 22:26:16 UTC (rev 273520) @@ -1,17 +1,11 @@ post_install() { ldconfig -r . chmod 755 etc/gconf/gconf.xml.system - usr/bin/gio-querymodules usr/lib/gio/modules } post_upgrade() { ldconfig -r . chmod 755 etc/gconf/gconf.xml.system - usr/bin/gio-querymodules usr/lib/gio/modules pkill /usr/lib/GConf/gconfd-2 || return 0 } - -post_remove() { - usr/bin/gio-querymodules usr/lib/gio/modules -} Added: gsettings-data-convert-fix-invalid-schema-path.patch =================================================================== --- gsettings-data-convert-fix-invalid-schema-path.patch (rev 0) +++ gsettings-data-convert-fix-invalid-schema-path.patch 2016-08-08 22:26:16 UTC (rev 273520) @@ -0,0 +1,44 @@ +From 405f865c07261a95c8c9a09a84ab679c6dd0a330 Mon Sep 17 00:00:00 2001 +From: Colin Walters <walt...@verbum.org> +Date: Thu, 24 Oct 2013 16:27:24 -0400 +Subject: gsettings-data-convert: Warn (and fix) invalid schema paths + +See https://bugzilla.gnome.org/show_bug.cgi?id=704802 + +https://bugzilla.gnome.org/show_bug.cgi?id=710836 +--- + gsettings/gsettings-data-convert.c | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +diff --git a/gsettings/gsettings-data-convert.c b/gsettings/gsettings-data-convert.c +index 9b2d1d0..160ed41 100644 +--- a/gsettings/gsettings-data-convert.c ++++ b/gsettings/gsettings-data-convert.c +@@ -182,7 +182,23 @@ handle_file (const gchar *filename) + } + + if (schema_path[1] != NULL) +- settings = g_settings_new_with_path (schema_path[0], schema_path[1]); ++ { ++ char *compat_path_alloced = NULL; ++ char *compat_path; ++ /* Work around broken .convert files: ++ https://bugzilla.gnome.org/show_bug.cgi?id=704802 ++ */ ++ if (!g_str_has_suffix (schema_path[1], "/")) ++ { ++ g_warning ("Schema file '%s' has missing trailing / in '%s'", ++ filename, schema_path[1]); ++ compat_path = compat_path_alloced = g_strconcat (schema_path[1], "/", NULL); ++ } ++ else ++ compat_path = schema_path[1]; ++ settings = g_settings_new_with_path (schema_path[0], compat_path); ++ g_free (compat_path_alloced); ++ } + else + settings = g_settings_new (schema_path[0]); + +-- +cgit v0.12 +