Date: Thursday, November 4, 2010 @ 10:26:10 Author: ibiru Revision: 98179
upgpkg: gvfs 1.6.5-2 revert removing app lookup. is intended to work only with glib >2.27. Thanks gvfs for letting us know Added: gvfs/trunk/0001-Revert-Remove-app-lookup-extension.patch Modified: gvfs/trunk/PKGBUILD -----------------------------------------------+ 0001-Revert-Remove-app-lookup-extension.patch | 386 ++++++++++++++++++++++++ PKGBUILD | 11 2 files changed, 393 insertions(+), 4 deletions(-) Added: 0001-Revert-Remove-app-lookup-extension.patch =================================================================== --- 0001-Revert-Remove-app-lookup-extension.patch (rev 0) +++ 0001-Revert-Remove-app-lookup-extension.patch 2010-11-04 14:26:10 UTC (rev 98179) @@ -0,0 +1,386 @@ +From bd4cc85488b0553b520aaf2924cd1d4acc4ae0f1 Mon Sep 17 00:00:00 2001 +From: Ionut Biru <[email protected]> +Date: Thu, 4 Nov 2010 16:07:33 +0200 +Subject: [PATCH] Revert "Remove app lookup extension" + +This reverts commit e868c0c306c31ffb9b65ca8555fd27cdc53a083d. +--- + Makefile.am | 1 + + configure.ac | 1 + + gconf/Makefile.am | 32 +++++++++ + gconf/gapplookupgconf.c | 178 +++++++++++++++++++++++++++++++++++++++++++++++ + gconf/gapplookupgconf.h | 51 +++++++++++++ + gconf/gconf-module.c | 55 +++++++++++++++ + 6 files changed, 318 insertions(+), 0 deletions(-) + create mode 100644 gconf/Makefile.am + create mode 100644 gconf/gapplookupgconf.c + create mode 100644 gconf/gapplookupgconf.h + create mode 100644 gconf/gconf-module.c + +diff --git a/Makefile.am b/Makefile.am +index 23261da..95d0654 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -6,6 +6,7 @@ SUBDIRS = \ + client \ + daemon \ + monitor \ ++ gconf \ + po \ + programs \ + test \ +diff --git a/configure.ac b/configure.ac +index fb21c17..d42ac4a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -704,6 +704,7 @@ monitor/hal/Makefile + monitor/gdu/Makefile + monitor/gphoto2/Makefile + monitor/afc/Makefile ++gconf/Makefile + programs/Makefile + test/Makefile + po/Makefile.in +diff --git a/gconf/Makefile.am b/gconf/Makefile.am +new file mode 100644 +index 0000000..85d4d8d +--- /dev/null ++++ b/gconf/Makefile.am +@@ -0,0 +1,32 @@ ++ ++NULL = ++ ++module_flags = -export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload|query)' ++ ++if USE_GCONF ++giomodules_LTLIBRARIES = libgiogconf.la ++endif ++ ++libgiogconf_la_SOURCES = \ ++ gapplookupgconf.c gapplookupgconf.h \ ++ gconf-module.c \ ++ $(NULL) ++ ++libgiogconf_la_CFLAGS = \ ++ -DG_LOG_DOMAIN=\"GVFS-GConf\" \ ++ -I$(top_srcdir)/common \ ++ $(GLIB_CFLAGS) \ ++ $(GCONF_CFLAGS) \ ++ -DGIO_MODULE_DIR=\"$(GIO_MODULE_DIR)\" \ ++ -DGVFS_LOCALEDIR=\""$(localedir)"\" \ ++ -DG_DISABLE_DEPRECATED \ ++ $(NULL) ++ ++libgiogconf_la_LDFLAGS = \ ++ $(module_flags) \ ++ $(NULL) ++ ++libgiogconf_la_LIBADD = \ ++ $(GLIB_LIBS) \ ++ $(GCONF_LIBS) \ ++ $(NULL) +diff --git a/gconf/gapplookupgconf.c b/gconf/gapplookupgconf.c +new file mode 100644 +index 0000000..2690265 +--- /dev/null ++++ b/gconf/gapplookupgconf.c +@@ -0,0 +1,178 @@ ++ ++/* GIO - GLib Input, Output and Streaming Library ++ * ++ * Copyright (C) 2006-2007 Red Hat, Inc. ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library 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 ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General ++ * Public License along with this library; if not, write to the ++ * Free Software Foundation, Inc., 59 Temple Place, Suite 330, ++ * Boston, MA 02111-1307, USA. ++ * ++ * Author: Alexader Larsson <[email protected]> ++ */ ++ ++#include <config.h> ++ ++#include <string.h> ++ ++#include <glib.h> ++#include <glib/gi18n-lib.h> ++#include <gio/gio.h> ++#include <gconf/gconf-client.h> ++ ++#include "gapplookupgconf.h" ++ ++ ++struct _GAppLookupGConf { ++ GObject parent; ++ ++}; ++ ++static void lookup_iface_init (GDesktopAppInfoLookupIface *iface); ++static void g_app_lookup_gconf_finalize (GObject *object); ++ ++G_DEFINE_DYNAMIC_TYPE_EXTENDED (GAppLookupGConf, g_app_lookup_gconf, G_TYPE_OBJECT, 0, ++ G_IMPLEMENT_INTERFACE_DYNAMIC (G_TYPE_DESKTOP_APP_INFO_LOOKUP, ++ lookup_iface_init)) ++ ++static void ++g_app_lookup_gconf_finalize (GObject *object) ++{ ++ if (G_OBJECT_CLASS (g_app_lookup_gconf_parent_class)->finalize) ++ (*G_OBJECT_CLASS (g_app_lookup_gconf_parent_class)->finalize) (object); ++} ++ ++static GObject * ++g_app_lookup_gconf_constructor (GType type, ++ guint n_construct_properties, ++ GObjectConstructParam *construct_properties) ++{ ++ GObject *object; ++ GAppLookupGConfClass *klass; ++ GObjectClass *parent_class; ++ ++ object = NULL; ++ ++ /* Invoke parent constructor. */ ++ klass = G_APP_LOOKUP_GCONF_CLASS (g_type_class_peek (G_TYPE_APP_LOOKUP_GCONF)); ++ parent_class = G_OBJECT_CLASS (g_type_class_peek_parent (klass)); ++ object = parent_class->constructor (type, ++ n_construct_properties, ++ construct_properties); ++ ++ return object; ++} ++ ++static void ++g_app_lookup_gconf_init (GAppLookupGConf *lookup) ++{ ++} ++ ++static void ++g_app_lookup_gconf_class_finalize (GAppLookupGConfClass *klass) ++{ ++} ++ ++ ++static void ++g_app_lookup_gconf_class_init (GAppLookupGConfClass *klass) ++{ ++ GObjectClass *gobject_class = G_OBJECT_CLASS (klass); ++ ++ gobject_class->constructor = g_app_lookup_gconf_constructor; ++ gobject_class->finalize = g_app_lookup_gconf_finalize; ++} ++ ++#define GCONF_PATH_PREFIX "/desktop/gnome/url-handlers/" ++ ++static GAppInfo * ++get_default_for_uri_scheme (GDesktopAppInfoLookup *lookup, ++ const char *uri_scheme) ++{ ++ GAppInfo *appinfo; ++ GConfClient *client; ++ char *command_key, *enabled_key, *terminal_key, *command; ++ gboolean enabled, needs_terminal; ++ GAppInfoCreateFlags flags; ++ ++ appinfo = NULL; ++ ++ client = gconf_client_get_default (); ++ ++ command_key = g_strconcat (GCONF_PATH_PREFIX, ++ uri_scheme, ++ "/command", ++ NULL); ++ command = gconf_client_get_string (client, ++ command_key, ++ NULL); ++ g_free (command_key); ++ if (command) ++ { ++ enabled_key = g_strconcat (GCONF_PATH_PREFIX, ++ uri_scheme, ++ "/enabled", ++ NULL); ++ enabled = gconf_client_get_bool (client, ++ enabled_key, ++ NULL); ++ g_free (enabled_key); ++ ++ terminal_key = g_strconcat (GCONF_PATH_PREFIX, ++ uri_scheme, ++ "/needs_terminal", ++ NULL); ++ needs_terminal = gconf_client_get_bool (client, ++ terminal_key, ++ NULL); ++ g_free (terminal_key); ++ ++ if (enabled) ++ { ++ if (g_str_has_suffix (command, "\"%s\"") || ++ g_str_has_suffix (command, "\'%s\'")) ++ command[strlen (command) - 4] = 0; ++ else if (g_str_has_suffix (command, "%s")) ++ command[strlen (command) - 2] = 0; ++ ++ flags = G_APP_INFO_CREATE_SUPPORTS_URIS; ++ if (needs_terminal) ++ flags |= G_APP_INFO_CREATE_NEEDS_TERMINAL; ++ appinfo = g_app_info_create_from_commandline (command, ++ NULL, ++ flags, ++ NULL); ++ } ++ } ++ ++ g_object_unref (client); ++ g_free (command); ++ ++ return appinfo; ++} ++ ++static void ++lookup_iface_init (GDesktopAppInfoLookupIface *iface) ++{ ++ iface->get_default_for_uri_scheme = get_default_for_uri_scheme; ++} ++ ++void ++g_app_lookup_gconf_register (GIOModule *module) ++{ ++ g_app_lookup_gconf_register_type (G_TYPE_MODULE (module)); ++ g_io_extension_point_implement (G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME, ++ G_TYPE_APP_LOOKUP_GCONF, ++ "gconf", ++ 10); ++} +diff --git a/gconf/gapplookupgconf.h b/gconf/gapplookupgconf.h +new file mode 100644 +index 0000000..a268415 +--- /dev/null ++++ b/gconf/gapplookupgconf.h +@@ -0,0 +1,51 @@ ++/* GIO - GLib Input, Output and Streaming Library ++ * ++ * Copyright (C) 2006-2007 Red Hat, Inc. ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library 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 ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General ++ * Public License along with this library; if not, write to the ++ * Free Software Foundation, Inc., 59 Temple Place, Suite 330, ++ * Boston, MA 02111-1307, USA. ++ * ++ * Author: Alexander Larsson <[email protected]> ++ */ ++ ++#ifndef __G_APP_LOOKUP_GCONF_H__ ++#define __G_APP_LOOKUP_GCONF_H__ ++ ++#include <glib-object.h> ++#include <gio/gio.h> ++#include <gio/gdesktopappinfo.h> ++ ++ ++G_BEGIN_DECLS ++ ++#define G_TYPE_APP_LOOKUP_GCONF (g_app_lookup_gconf_get_type ()) ++#define G_APP_LOOKUP_GCONF(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), G_TYPE_APP_LOOKUP_GCONF, GAppLookupGConf)) ++#define G_APP_LOOKUP_GCONF_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), G_TYPE_APP_LOOKUP_GCONF, GAppLookupGConfClass)) ++#define G_IS_APP_LOOKUP_GCONF(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), G_TYPE_APP_LOOKUP_GCONF)) ++#define G_IS_APP_LOOKUP_GCONF_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), G_TYPE_APP_LOOKUP_GCONF)) ++ ++typedef struct _GAppLookupGConf GAppLookupGConf; ++typedef struct _GAppLookupGConfClass GAppLookupGConfClass; ++ ++struct _GAppLookupGConfClass { ++ GObjectClass parent_class; ++}; ++ ++GType g_app_lookup_gconf_get_type (void) G_GNUC_CONST; ++void g_app_lookup_gconf_register (GIOModule *module); ++ ++G_END_DECLS ++ ++#endif /* __G_APP_LOOKUP_GCONF_H__ */ +diff --git a/gconf/gconf-module.c b/gconf/gconf-module.c +new file mode 100644 +index 0000000..e5753a6 +--- /dev/null ++++ b/gconf/gconf-module.c +@@ -0,0 +1,55 @@ ++ ++/* GIO - GLib Input, Output and Streaming Library ++ * ++ * Copyright (C) 2006-2007 Red Hat, Inc. ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library 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 ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General ++ * Public License along with this library; if not, write to the ++ * Free Software Foundation, Inc., 59 Temple Place, Suite 330, ++ * Boston, MA 02111-1307, USA. ++ * ++ * Author: David Zeuthen <[email protected]> ++ */ ++ ++#include <config.h> ++ ++#include <glib.h> ++#include <glib/gi18n-lib.h> ++#include <gmodule.h> ++#include <gio/gio.h> ++ ++#include "gapplookupgconf.h" ++ ++void ++g_io_module_load (GIOModule *module) ++{ ++ bindtextdomain (GETTEXT_PACKAGE, GVFS_LOCALEDIR); ++ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); ++ ++ g_app_lookup_gconf_register (module); ++} ++ ++void ++g_io_module_unload (GIOModule *module) ++{ ++} ++ ++char ** ++g_io_module_query (void) ++{ ++ char *eps[] = { ++ G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME, ++ NULL ++ }; ++ return g_strdupv (eps); ++} +-- +1.7.3.2 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-11-04 13:36:36 UTC (rev 98178) +++ PKGBUILD 2010-11-04 14:26:10 UTC (rev 98179) @@ -4,18 +4,21 @@ pkgbase=gvfs pkgname=('gvfs' 'gvfs-smb' 'gvfs-afc' 'gvfs-gphoto2' 'gvfs-obexftp') pkgver=1.6.5 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') license=('LGPL') makedepends=('libsoup-gnome>=2.32.0' 'libcdio>=0.82' 'fuse>=2.8.4' 'bluez>=4.77' 'smbclient>=3.5.5' 'libgphoto2>=2.4.10' 'libarchive>=2.8.4' 'gnome-disk-utility>=2.32.0' 'pkgconfig' 'intltool' 'libimobiledevice>=1.0.2') url="http://www.gnome.org" options=(!libtool) -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/1.6/${pkgbase}-${pkgver}.tar.bz2) -sha256sums=('147a20321acb6ec85cedc6eecbe642d0722981d2d180e2e99e549db0a9dcba00') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/1.6/${pkgbase}-${pkgver}.tar.bz2 + 0001-Revert-Remove-app-lookup-extension.patch) +sha256sums=('147a20321acb6ec85cedc6eecbe642d0722981d2d180e2e99e549db0a9dcba00' + '142d780fdf8088e4a3356720ca1cca458424af5a6b94a4d85431dae8721be328') - build() { cd "${srcdir}/${pkgbase}-${pkgver}" + patch -Np1 -i "${srcdir}/0001-Revert-Remove-app-lookup-extension.patch" + autoreconf -fi ./configure --prefix=/usr --sysconfdir=/etc \ --localstatedir=/var --disable-static \ --libexecdir=/usr/lib/gvfs \
