summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base/gnome-vfs')
-rw-r--r--gnome-base/gnome-vfs/Manifest1
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.12.0-afs.patch12
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.15.2-headers-define.patch19
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.16.0-no-dbus-crash.patch12
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.20.0-automagic-deps.patch68
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.20.1-automagic-deps.patch19
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.0-uuid-mount.patch77
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-automake-1.13.patch30
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-build-tests-asneeded.patch25
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-disable-test-async-cancel.patch24
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls27.patch68
-rw-r--r--gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-home_dir_fakeroot.patch155
-rw-r--r--gnome-base/gnome-vfs/gnome-vfs-2.24.4-r2.ebuild158
-rw-r--r--gnome-base/gnome-vfs/metadata.xml5
14 files changed, 673 insertions, 0 deletions
diff --git a/gnome-base/gnome-vfs/Manifest b/gnome-base/gnome-vfs/Manifest
new file mode 100644
index 000000000000..7378a95891bd
--- /dev/null
+++ b/gnome-base/gnome-vfs/Manifest
@@ -0,0 +1 @@
+DIST gnome-vfs-2.24.4.tar.bz2 1890370 SHA256 62de64b5b804eb04104ff98fcd6a8b7276d510a49fbd9c0feb568f8996444faa SHA512 db4e49f5356647667c4d40c7ce5c299c934cb41069b2086fb89c4e87b2202b5009616d65c1dafeb93e37033a5a68965342c2b18d87b8a3265c4347dec5128581 WHIRLPOOL 53376928ae04cc1d693e57afe18f2b91431b8c8d678cf58eedd057eb23e9f34010294faf83e3085126adf310da5a135076cf085f63f1db0d3a1add21cc0641a9
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.12.0-afs.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.12.0-afs.patch
new file mode 100644
index 000000000000..cdc88c24b6a3
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.12.0-afs.patch
@@ -0,0 +1,12 @@
+diff -ur gnome-vfs-2.12.0/libgnomevfs/gnome-vfs-filesystem-type.c gnome-vfs-2.12.0-patched/libgnomevfs/gnome-vfs-filesystem-type.c
+--- gnome-vfs-2.12.0/libgnomevfs/gnome-vfs-filesystem-type.c 2005-08-23 01:34:36.000000000 +0800
++++ gnome-vfs-2.12.0-patched/libgnomevfs/gnome-vfs-filesystem-type.c 2005-09-18 20:30:47.000000000 +0800
+@@ -35,7 +35,7 @@
+
+ static struct FSInfo fs_data[] = {
+ { "affs" , N_("AFFS Volume"), 0},
+- { "afs" , N_("AFS Network Volume"), 0 },
++ { "afs" , N_("AFS Network Volume"), 1 },
+ { "auto" , N_("Auto-detected Volume"), 0 },
+ { "cd9660" , N_("CD-ROM Drive"), 0 },
+ { "cdda" , N_("CD Digital Audio"), 0 },
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.15.2-headers-define.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.15.2-headers-define.patch
new file mode 100644
index 000000000000..f74db8edb1cd
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.15.2-headers-define.patch
@@ -0,0 +1,19 @@
+--- configure.in 2006-06-13 00:36:14.000000000 -0500
++++ configure.in 2006-06-13 00:54:15.000000000 -0500
+@@ -191,6 +191,16 @@
+
+ AC_CHECK_HEADERS(sys/param.h sys/resource.h sys/vfs.h sys/mount.h sys/statfs.h sys/statvfs.h sys/param.h wctype.h sys/poll.h poll.h)
+
++AC_CHECK_HEADERS([pwd.h])
++if test "$ac_cv_header_pwd_h" = "yes"; then
++ AC_DEFINE(HAVE_PWD_H, [1], [pwd.h present])
++fi
++
++AC_CHECK_HEADERS([grp.h])
++if test "$ac_cv_header_grp_h" = "yes"; then
++ AC_DEFINE(HAVE_GRP_H, [1], [grp.h present])
++fi
++
+ dnl
+ dnl file system type member in statfs struct
+ dnl
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.16.0-no-dbus-crash.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.16.0-no-dbus-crash.patch
new file mode 100644
index 000000000000..6905060a4f71
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.16.0-no-dbus-crash.patch
@@ -0,0 +1,12 @@
+diff --exclude-from=/home/dang/.diffrc -u -ruN gnome-vfs-2.16.0.orig/libgnomevfs/gnome-vfs-volume-monitor-client.c gnome-vfs-2.16.0/libgnomevfs/gnome-vfs-volume-monitor-client.c
+--- gnome-vfs-2.16.0.orig/libgnomevfs/gnome-vfs-volume-monitor-client.c 2006-07-07 04:46:39.000000000 -0400
++++ gnome-vfs-2.16.0/libgnomevfs/gnome-vfs-volume-monitor-client.c 2006-09-21 11:22:49.000000000 -0400
+@@ -236,6 +236,8 @@
+ gnome_vfs_volume_monitor_client_init (GnomeVFSVolumeMonitorClient *volume_monitor_client)
+ {
+ setup_dbus_connection (volume_monitor_client);
++ if (!volume_monitor_client->dbus_conn)
++ return;
+ read_drives_from_daemon (volume_monitor_client);
+ read_volumes_from_daemon (volume_monitor_client);
+ }
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.20.0-automagic-deps.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.20.0-automagic-deps.patch
new file mode 100644
index 000000000000..876148b891f4
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.20.0-automagic-deps.patch
@@ -0,0 +1,68 @@
+Index: configure.in
+===================================================================
+--- configure.in (révision 5413)
++++ configure.in (copie de travail)
+@@ -448,9 +448,13 @@
+ dnl GSSAPI
+ dnl Check for Kerberos installation
+ have_gssapi=no
++
++AC_ARG_ENABLE(krb5,
++ AS_HELP_STRING([--enable-krb5],[Enable Kerberos 5 support]),
++ [],[enable_krb5=yes])
+ AC_PATH_PROG([KRB5_CONFIG], krb5-config, none, $PATH:/usr/kerberos/bin)
+-
+-if test "x$KRB5_CONFIG" != "xnone"; then
++
++if test "x$KRB5_CONFIG" != "xnone" -a "x$enable_krb5" = "xyes"; then
+ GSSAPI_LIBS="`${KRB5_CONFIG} --libs gssapi`"
+ GSSAPI_CFLAGS="`${KRB5_CONFIG} --cflags gssapi`"
+
+@@ -481,8 +485,12 @@
+ break
+ ])
+ LIBS="$saved_LIBS"
+- CPPFLAGS="$saved_CPPFLAGS"
+-fi
++ CPPFLAGS="$saved_CPPFLAGS"
++fi
++
++if test "x$KRB5_CONFIG" = "xnone" -a "x$enable_krb5" = "xyes"; then
++ AC_MSG_ERROR([*** kerberos 5 support enabled but krb5-config not found ***])
++fi
+ AC_SUBST(GSSAPI_LIBS)
+ AC_SUBST(GSSAPI_CFLAGS)
+
+@@ -1077,9 +1085,13 @@
+ dnl =====================
+ dnl ACL checks
+ dnl =====================
+-acl_backends=""
++acl_backends="none"
+ ACL_LIBS=""
+
++AC_ARG_ENABLE(acl,
++ AS_HELP_STRING([--disable-acl],[Don't use libacl support]),
++ [],[enable_acl=yes])
++
+ AC_CHECK_LIB(attr,getxattr,[ACL_LIBS="$ACL_LIBS -lattr"])
+ AC_CHECK_LIB(acl,acl_get_file,[ACL_LIBS="$ACL_LIBS -lacl"])
+ AC_CHECK_LIB(sec,acl,[ACL_LIBS="$ACL_LIBS -lsec"])
+@@ -1102,7 +1114,7 @@
+ gvfs_cv_HAVE_POSIX_ACLS=yes, gvfs_cv_HAVE_POSIX_ACLS=no)
+ LIBS=$acl_LIBS])
+
+-if test x"$gvfs_cv_HAVE_SOLARIS_ACLS" = x"yes" ; then
++if test x"$gvfs_cv_HAVE_SOLARIS_ACLS" = x"yes" -a x"$enable_acl" = x"yes"; then
+ have_solaris_acl_support=yes
+ acl_backends="solaris"
+
+@@ -1110,7 +1122,7 @@
+ AC_CHECK_HEADERS([pwd.h grp.h])
+ fi
+
+-if test x"$gvfs_cv_HAVE_POSIX_ACLS" = x"yes" ; then
++if test x"$gvfs_cv_HAVE_POSIX_ACLS" = x"yes" -a x"$enable_acl" = x"yes"; then
+ have_posix_acl_support=yes
+ acl_backends="posix"
+
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.20.1-automagic-deps.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.20.1-automagic-deps.patch
new file mode 100644
index 000000000000..11ac34c07214
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.20.1-automagic-deps.patch
@@ -0,0 +1,19 @@
+--- configure.in. 2007-11-30 04:15:01.000000000 +0100
++++ configure.in 2007-11-30 04:16:21.000000000 +0100
+@@ -1102,6 +1102,7 @@
+ AS_HELP_STRING([--disable-acl],[Don't use libacl support]),
+ [],[enable_acl=yes])
+
++if test "x$enable_acl" = "xyes"; then
+ AC_CHECK_LIB(attr,getxattr,[ACL_LIBS="$ACL_LIBS -lattr"])
+ AC_CHECK_LIB(acl,acl_get_file,[ACL_LIBS="$ACL_LIBS -lacl"])
+ AC_CHECK_LIB(sec,acl,[ACL_LIBS="$ACL_LIBS -lsec"])
+@@ -1189,6 +1190,8 @@
+ fi
+
++fi
+ AC_SUBST(ACL_LIBS)
++
+ AM_CONDITIONAL(HAVE_POSIX_ACL, test x"$have_posix_acl_support" = x"yes")
+ AM_CONDITIONAL(HAVE_SOLARIS_ACL, test x"$have_solaris_acl_support" = x"yes")
+
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.0-uuid-mount.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.0-uuid-mount.patch
new file mode 100644
index 000000000000..e76a9837136a
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.0-uuid-mount.patch
@@ -0,0 +1,77 @@
+From 8427c2daf543353f42b932b5137b6ec590f6589b Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 2 Oct 2010 00:42:31 +0200
+Subject: [PATCH 7/9] Prevent duplicated volumes, bug #193083
+
+---
+ libgnomevfs/gnome-vfs-unix-mounts.c | 39 +++++++++++++++++++++++++++++++++-
+ 1 files changed, 37 insertions(+), 2 deletions(-)
+
+diff --git a/libgnomevfs/gnome-vfs-unix-mounts.c b/libgnomevfs/gnome-vfs-unix-mounts.c
+index 51a009b..3eee305 100644
+--- a/libgnomevfs/gnome-vfs-unix-mounts.c
++++ b/libgnomevfs/gnome-vfs-unix-mounts.c
+@@ -40,6 +40,10 @@
+ #ifdef HAVE_POLL_H
+ #include <poll.h>
+ #endif
++
++#include <limits.h>
++#include <stdlib.h>
++
+ #include <stdio.h>
+ #include <unistd.h>
+ #include <sys/time.h>
+@@ -290,6 +294,15 @@ _gnome_vfs_get_current_unix_mounts (GList **return_list)
+
+ mount_entry->mount_path = g_strdup (mntent->mnt_dir);
+ mount_entry->device_path = g_strdup (mntent->mnt_fsname);
++
++ if (g_file_test (mntent->mnt_fsname, G_FILE_TEST_IS_SYMLINK)) {
++ char rpath[PATH_MAX];
++ if (realpath (mntent->mnt_fsname, rpath)) {
++ g_free (mount_entry->device_path);
++ mount_entry->device_path = g_strdup (rpath);
++ }
++ }
++
+ mount_entry->filesystem_type = g_strdup (mntent->mnt_type);
+
+ g_hash_table_insert (mounts_hash,
+@@ -571,9 +584,31 @@ _gnome_vfs_get_unix_mount_table (GList **return_list)
+ }
+
+ mount_entry = g_new0 (GnomeVFSUnixMountPoint, 1);
+-
++
++ if(strlen(mntent->mnt_fsname) >= 5 && !strncmp (mntent->mnt_fsname, "UUID=", 5)) {
++ mount_entry->device_path = g_strdup_printf ("/dev/disk/by-uuid/%s", mntent->mnt_fsname+5);
++ }
++ else if(strlen(mntent->mnt_fsname) >= 6 && !strncmp (mntent->mnt_fsname, "LABEL=", 6)) {
++ mount_entry->device_path = g_strdup_printf ("/dev/disk/by-label/%s", mntent->mnt_fsname+6);
++ }
++ else {
++ mount_entry->device_path = g_strdup (mntent->mnt_fsname);
++ }
++
++ if (g_file_test (mount_entry->device_path, G_FILE_TEST_IS_SYMLINK)) {
++ char rpath[PATH_MAX];
++ if (realpath (mount_entry->device_path, rpath)) {
++ g_free (mount_entry->device_path);
++ mount_entry->device_path = g_strdup (rpath);
++ }
++ else {
++ g_free (mount_entry->device_path);
++ g_free (mount_entry);
++ continue;
++ }
++ }
++
+ mount_entry->mount_path = g_strdup (mntent->mnt_dir);
+- mount_entry->device_path = g_strdup (mntent->mnt_fsname);
+ mount_entry->filesystem_type = g_strdup (mntent->mnt_type);
+
+ #ifdef HAVE_HASMNTOPT
+--
+1.7.3
+
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-automake-1.13.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-automake-1.13.patch
new file mode 100644
index 000000000000..69f470a396a9
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-automake-1.13.patch
@@ -0,0 +1,30 @@
+ configure.in | 2 +-
+ test/Makefile.am | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 7335451..7817998 100644
+--- a/configure.in
++++ b/configure.in
+@@ -33,7 +33,7 @@ AC_SUBST(LIBGNOMEVFS_REVISION)
+ AC_SUBST(LIBGNOMEVFS_AGE)
+ AC_SUBST(LIBGNOMEVFS_VERSION)
+
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+ AM_INIT_AUTOMAKE(gnome-vfs, $LIBGNOMEVFS_VERSION)
+
+ dnl make sure we keep ACLOCAL_FLAGS around for maintainer builds to work
+diff --git a/test/Makefile.am b/test/Makefile.am
+index 5b0992e..626bdec 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -65,7 +65,7 @@ TESTS = test-acl \
+ test-async-cancel \
+ test-escape \
+ test-uri \
+- $(srcdir)/auto-test
++ auto-test
+
+ libraries = \
+ $(top_builddir)/libgnomevfs/libgnomevfs-2.la \
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-build-tests-asneeded.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-build-tests-asneeded.patch
new file mode 100644
index 000000000000..45ca015573f0
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-build-tests-asneeded.patch
@@ -0,0 +1,25 @@
+From b7dabab33e00bdbd8b566ca058a1bce7dec2b77d Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 2 Oct 2010 01:45:21 +0200
+Subject: [PATCH 8/9] Do not build tests unless required
+
+---
+ test/Makefile.am | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/test/Makefile.am b/test/Makefile.am
+index 5b0992e..a1aefa0 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -14,7 +14,7 @@ else
+ platform_only_programs = test-dns-sd test-symlinks test-parse-ls-lga
+ endif
+
+-noinst_PROGRAMS = \
++check_PROGRAMS = \
+ test-acl \
+ test-address \
+ test-async \
+--
+1.7.3
+
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-disable-test-async-cancel.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-disable-test-async-cancel.patch
new file mode 100644
index 000000000000..2684c92ec098
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-disable-test-async-cancel.patch
@@ -0,0 +1,24 @@
+From 390c1f6c06917f54cfacd5f85834d02c231cc2ea Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 2 Oct 2010 01:46:31 +0200
+Subject: [PATCH 9/9] Disable broken test, bug #285706, upstream #618089
+
+---
+ test/Makefile.am | 1 -
+ 1 files changed, 0 insertions(+), 1 deletions(-)
+
+diff --git a/test/Makefile.am b/test/Makefile.am
+index a1aefa0..c18f2e4 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -62,7 +62,6 @@ TESTS_ENVIRONMENT = GNOME_VFS_MODULE_PATH=$(top_builddir)/modules/.libs \
+ SRCDIR=$(srcdir)
+ TESTS = test-acl \
+ test-address \
+- test-async-cancel \
+ test-escape \
+ test-uri \
+ $(srcdir)/auto-test
+--
+1.7.3
+
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls27.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls27.patch
new file mode 100644
index 000000000000..93ebd17c7eff
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-gnutls27.patch
@@ -0,0 +1,68 @@
+Debian #529827
+GNOME #574589
+Gentoo #253729
+Patch by Gilles Dartiguelongue, fixed for correctly setting have_ssl
+
+Allow gnome-vfs-2.24 to build with gnutls >= 2.7.0
+Use pkg-config in place of gnutls own macro since it's not present anymore.
+
+As gnome-vfs-ssl.c also directly uses libgcrypt, we need to make sure that
+configure checks for it. Use AM_PATH_LIBGCRYPT macro for that.
+
+
+Index: gnome-vfs-2.24.4/configure.in
+===================================================================
+--- gnome-vfs-2.24.4.orig/configure.in 2011-03-16 14:07:18.901009688 +0100
++++ gnome-vfs-2.24.4/configure.in 2011-03-16 14:16:19.317009687 +0100
+@@ -667,15 +667,14 @@
+ if test "x${OPENSSL_LIBS}" != "x"; then
+ AC_MSG_ERROR([*** Can't use both openssl and gnutls at the same time. Please pick one only. ***])
+ else
+- AC_CHECK_HEADER(gcrypt.h,, AC_MSG_ERROR([*** Need gcrypt.h to compile with GnuTLS support ***]))
+- AM_PATH_LIBGNUTLS(1.0.0, [AC_DEFINE(HAVE_GNUTLS, 1, [Define to 1 if GnuTLS is available])
+- have_ssl=true])
+-
++ AM_PATH_LIBGCRYPT
++ if test "x${LIBGCRYPT_LIBS}" = "x"; then
++ AC_MSG_ERROR([Unable to find LIBGRYPT])
++ fi
++ PKG_CHECK_MODULES(LIBGNUTLS, gnutls >= 1.0.0, [AC_DEFINE(HAVE_GNUTLS, 1, [Define to 1 if GnuTLS is available])
++ have_ssl=true])
+ if test "x${LIBGNUTLS_LIBS}" = "x"; then
+- AM_PATH_LIBGNUTLS(0.5.1, [AC_DEFINE(HAVE_GNUTLS, 1, [Define to 1 if GnuTLS is available])
+- AC_DEFINE(GNUTLS_COMPAT, 1, [FIXME])
+- have_ssl=true],
+- AC_MSG_ERROR([Unable to find GNUTLS]))
++ AC_MSG_ERROR([Unable to find GNUTLS])
+ fi
+ fi
+ fi
+@@ -1045,8 +1044,8 @@
+ dnl ==============================================================================
+
+ PKG_CHECK_MODULES(LIBGNOMEVFS, glib-2.0 >= $GLIB_REQUIRED gmodule-no-export-2.0 >= $GLIB_REQUIRED gthread-2.0 >= $GLIB_REQUIRED gobject-2.0 >= $GLIB_REQUIRED gconf-2.0 >= $GCONF_REQUIRED libxml-2.0 >= $XML_REQUIRED gnome-mime-data-2.0 $dbus_requirement)
+-LIBGNOMEVFS_CFLAGS="$LIBGNOMEVFS_CFLAGS $OPENSSL_CFLAGS $LIBGNUTLS_CFLAGS $HOWL_CFLAGS $AVAHI_CFLAGS"
+-LIBGNOMEVFS_LIBS="$LIBGNOMEVFS_LIBS $OPENSSL_LIBS $LIBGNUTLS_LIBS $HOWL_LIBS $AVAHI_LIBS $RESOLVER_LIBS"
++LIBGNOMEVFS_CFLAGS="$LIBGNOMEVFS_CFLAGS $OPENSSL_CFLAGS $LIBGNUTLS_CFLAGS $LIBGCRYPT_CFLAGS $HOWL_CFLAGS $AVAHI_CFLAGS"
++LIBGNOMEVFS_LIBS="$LIBGNOMEVFS_LIBS $OPENSSL_LIBS $LIBGNUTLS_LIBS $LIBGCRYPT_LIBS $HOWL_LIBS $AVAHI_LIBS $RESOLVER_LIBS"
+ AC_SUBST(LIBGNOMEVFS_CFLAGS)
+ AC_SUBST(LIBGNOMEVFS_LIBS)
+
+Index: gnome-vfs-2.24.4/libgnomevfs/gnome-vfs-ssl.c
+===================================================================
+--- gnome-vfs-2.24.4.orig/libgnomevfs/gnome-vfs-ssl.c 2011-03-16 14:07:18.861009688 +0100
++++ gnome-vfs-2.24.4/libgnomevfs/gnome-vfs-ssl.c 2011-03-16 14:09:17.517009687 +0100
+@@ -61,13 +61,6 @@
+ #endif
+ #endif
+
+-#if defined GNUTLS_COMPAT
+-#define gnutls_certificate_credentials GNUTLS_CERTIFICATE_CREDENTIALS
+-#define gnutls_session GNUTLS_STATE
+-#define gnutls_certificate_free_credentials gnutls_certificate_free_sc
+-#define gnutls_certificate_allocate_credentials gnutls_certificate_allocate_sc
+-#endif
+-
+ typedef struct {
+ #ifdef HAVE_OPENSSL
+ int sockfd;
diff --git a/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-home_dir_fakeroot.patch b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-home_dir_fakeroot.patch
new file mode 100644
index 000000000000..991286aa4de6
--- /dev/null
+++ b/gnome-base/gnome-vfs/files/gnome-vfs-2.24.4-home_dir_fakeroot.patch
@@ -0,0 +1,155 @@
+From 01dba45f0d15b7e23f21d19776d64f69879cd27a Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 2 Oct 2010 00:41:01 +0200
+Subject: [PATCH 5/9] Fix to identify ${HOME} (#200897)
+
+Thanks to debian folks.
+---
+ libgnomevfs/gnome-vfs-application-registry.c | 2 +-
+ libgnomevfs/gnome-vfs-init.c | 3 +-
+ libgnomevfs/gnome-vfs-private-utils.c | 52 ++++++++++++++++++++++++++
+ libgnomevfs/gnome-vfs-private-utils.h | 2 +
+ modules/file-method.c | 6 +-
+ 5 files changed, 60 insertions(+), 5 deletions(-)
+
+diff --git a/libgnomevfs/gnome-vfs-application-registry.c b/libgnomevfs/gnome-vfs-application-registry.c
+index 0b11cc5..051ea44 100644
+--- a/libgnomevfs/gnome-vfs-application-registry.c
++++ b/libgnomevfs/gnome-vfs-application-registry.c
+@@ -965,7 +965,7 @@ gnome_vfs_application_registry_init (void)
+ NULL);
+ gnome_registry_dir.system_dir = TRUE;
+
+- user_registry_dir.dirname = g_build_filename (g_get_home_dir(),
++ user_registry_dir.dirname = g_build_filename (gnome_vfs_get_home_dir(),
+ ".gnome",
+ "application-info",
+ NULL);
+diff --git a/libgnomevfs/gnome-vfs-init.c b/libgnomevfs/gnome-vfs-init.c
+index e3fd5d9..c07cf06 100644
+--- a/libgnomevfs/gnome-vfs-init.c
++++ b/libgnomevfs/gnome-vfs-init.c
+@@ -118,7 +118,8 @@ gnome_vfs_init (void)
+ char *bogus_argv[2] = { "dummy", NULL };
+ */
+
+- if (!ensure_dot_gnome_exists ()) {
++ /* The first call also checks that ~/.gnome2 is writable. */
++ if (!gnome_vfs_get_home_dir ()) {
+ return FALSE;
+ }
+
+diff --git a/libgnomevfs/gnome-vfs-private-utils.c b/libgnomevfs/gnome-vfs-private-utils.c
+index 7fafde3..7ad8fbc 100644
+--- a/libgnomevfs/gnome-vfs-private-utils.c
++++ b/libgnomevfs/gnome-vfs-private-utils.c
+@@ -34,6 +34,7 @@
+ #include "gnome-vfs-uri.h"
+ #include <errno.h>
+ #include <glib.h>
++#include <glib/gstdio.h>
+ #include <gconf/gconf-client.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -1085,3 +1086,54 @@ _gnome_vfs_winsock_strerror (int error)
+ }
+ #endif
+
++static gboolean
++ensure_dot_gnome_exists (gchar *home_dir)
++{
++ gboolean retval = TRUE;
++ gchar *dirname;
++
++ dirname = g_build_filename (home_dir, ".gnome2", NULL);
++
++ if (!g_file_test (dirname, G_FILE_TEST_EXISTS)) {
++ if (g_mkdir (dirname, S_IRWXU) != 0) {
++ g_warning ("Unable to create ~/.gnome2 directory: %s",
++ g_strerror (errno));
++ retval = FALSE;
++ }
++ } else if (!g_file_test (dirname, G_FILE_TEST_IS_DIR)) {
++ g_warning ("Error: ~/.gnome2 must be a directory.");
++ retval = FALSE;
++ }
++
++ g_free (dirname);
++ return retval;
++}
++
++/**
++ * gnome_vfs_get_home_dir:
++ *
++ * If ~/.gnome2 is writable, return the home directory
++ * Otherwise, return the contents of the HOME environment variable
++ *
++ * Return value: home directory if successful, NULL otherwise.
++ * Do not free the value returned.
++ */
++const gchar *
++gnome_vfs_get_home_dir (void)
++{
++ static gchar *home = NULL;
++
++ if (home == NULL) {
++ gchar *tmp = g_get_home_dir ();
++ if (ensure_dot_gnome_exists (tmp)) {
++ home = g_strdup (tmp);
++ } else {
++ gchar *tmp2 = g_getenv ("HOME");
++ if (!g_str_equal (tmp, tmp2) && ensure_dot_gnome_exists (tmp2)) {
++ home = g_strdup (tmp2);
++ }
++ }
++ }
++
++ return home;
++}
+diff --git a/libgnomevfs/gnome-vfs-private-utils.h b/libgnomevfs/gnome-vfs-private-utils.h
+index 981c6d9..fe282a2 100644
+--- a/libgnomevfs/gnome-vfs-private-utils.h
++++ b/libgnomevfs/gnome-vfs-private-utils.h
+@@ -124,6 +124,8 @@ const char *_gnome_vfs_winsock_strerror (int error);
+
+ #endif
+
++const gchar *gnome_vfs_get_home_dir (void);
++
+ G_END_DECLS
+
+ #endif /* _GNOME_VFS_PRIVATE_UTILS_H */
+diff --git a/modules/file-method.c b/modules/file-method.c
+index 37e4853..7265e58 100644
+--- a/modules/file-method.c
++++ b/modules/file-method.c
+@@ -1531,7 +1531,7 @@ save_trash_entry_cache (void)
+ GList *p;
+ char *buffer, *escaped_path, *escaped_mount_point;
+
+- cache_file_parent = append_to_path (g_get_home_dir (), TRASH_ENTRY_CACHE_PARENT);
++ cache_file_parent = append_to_path (gnome_vfs_get_home_dir (), TRASH_ENTRY_CACHE_PARENT);
+ cache_file_path = append_to_path (cache_file_parent, TRASH_ENTRY_CACHE_NAME);
+
+ if (mkdir_recursive (cache_file_parent, 0777) != 0) {
+@@ -1670,7 +1670,7 @@ read_saved_cached_trash_entries (void)
+ cached_trash_directories = NULL;
+
+ /* read in the entries from disk */
+- cache_file_path = g_build_filename (g_get_home_dir (),
++ cache_file_path = g_build_filename (gnome_vfs_get_home_dir (),
+ TRASH_ENTRY_CACHE_PARENT,
+ TRASH_ENTRY_CACHE_NAME,
+ NULL);
+@@ -1942,7 +1942,7 @@ do_find_directory (GnomeVFSMethod *method,
+ return GNOME_VFS_ERROR_INVALID_URI;
+
+ /* We will need the URI and the stat structure for the home directory. */
+- home_directory = g_get_home_dir ();
++ home_directory = gnome_vfs_get_home_dir ();
+
+ if (gnome_vfs_context_check_cancellation (context)) {
+ g_free (full_name_near);
+--
+1.7.3
+
diff --git a/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r2.ebuild b/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r2.ebuild
new file mode 100644
index 000000000000..29fbe347feab
--- /dev/null
+++ b/gnome-base/gnome-vfs/gnome-vfs-2.24.4-r2.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+GNOME2_LA_PUNT="yes"
+
+inherit autotools eutils gnome2 multilib-minimal virtualx
+
+DESCRIPTION="Gnome Virtual Filesystem"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="2"
+KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="acl avahi doc fam gnutls ipv6 kerberos samba ssl"
+
+RDEPEND=">=gnome-base/gconf-2.32.4-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}]
+ >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+ >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}]
+ gnome-base/gnome-mime-data
+ >=x11-misc/shared-mime-info-0.14
+ >=dev-libs/dbus-glib-0.100.2[${MULTILIB_USEDEP}]
+ acl? (
+ >=sys-apps/acl-2.2.52-r1[${MULTILIB_USEDEP}]
+ >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] )
+ avahi? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] )
+ kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
+ fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] )
+ samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
+ ssl? (
+ gnutls? (
+ >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}]
+ !gnome-extra/gnome-vfs-sftp )
+ !gnutls? (
+ >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}]
+ !gnome-extra/gnome-vfs-sftp ) )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ gnome-base/gnome-common
+ >=dev-util/intltool-0.40
+ >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
+ >=dev-util/gtk-doc-am-1.13
+ doc? ( >=dev-util/gtk-doc-1 )"
+RDEPEND="${RDEPEND}
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-gtklibs-20140508-r1
+ !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+ )"
+
+src_prepare() {
+ # Allow the Trash on afs filesystems (#106118)
+ epatch "${FILESDIR}"/${PN}-2.12.0-afs.patch
+
+ # Fix compiling with headers missing
+ epatch "${FILESDIR}"/${PN}-2.15.2-headers-define.patch
+
+ # Fix for crashes running programs via sudo
+ epatch "${FILESDIR}"/${PN}-2.16.0-no-dbus-crash.patch
+
+ # Fix automagic dependencies, upstream bug #493475
+ epatch "${FILESDIR}"/${PN}-2.20.0-automagic-deps.patch
+ epatch "${FILESDIR}"/${PN}-2.20.1-automagic-deps.patch
+
+ # Fix to identify ${HOME} (#200897)
+ # thanks to debian folks
+ epatch "${FILESDIR}"/${PN}-2.24.4-home_dir_fakeroot.patch
+
+ # Configure with gnutls-2.7, bug #253729
+ # Fix building with gnutls-2.12, bug #388895
+ epatch "${FILESDIR}"/${PN}-2.24.4-gnutls27.patch
+
+ # Prevent duplicated volumes, bug #193083
+ epatch "${FILESDIR}"/${PN}-2.24.0-uuid-mount.patch
+
+ # Do not build tests with FEATURES="-test", bug #226221
+ epatch "${FILESDIR}"/${PN}-2.24.4-build-tests-asneeded.patch
+
+ # Disable broken test, bug #285706
+ epatch "${FILESDIR}"/${PN}-2.24.4-disable-test-async-cancel.patch
+
+ # Fix for automake-1.13 compatibility, #466944
+ epatch "${FILESDIR}"/${P}-automake-1.13.patch
+
+ # Fix deprecated API disabling in used libraries - this is not future-proof, bug 212163
+ # upstream bug #519632
+ sed -i -e '/DISABLE_DEPRECATED/d' \
+ daemon/Makefile.am daemon/Makefile.in \
+ libgnomevfs/Makefile.am libgnomevfs/Makefile.in \
+ modules/Makefile.am modules/Makefile.in \
+ test/Makefile.am test/Makefile.in || die
+ sed -i -e 's:-DG_DISABLE_DEPRECATED:$(NULL):g' \
+ programs/Makefile.am programs/Makefile.in || die
+
+ sed -e "s/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/" -i configure.in || die
+
+ eautoreconf
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --disable-schemas-install
+ --disable-static
+ --disable-cdda
+ --disable-howl
+ $(use_enable acl)
+ $(use_enable avahi)
+ $(use_enable fam)
+ $(use_enable gnutls)
+ --disable-hal
+ $(use_enable ipv6)
+ $(use_enable kerberos krb5)
+ $(use_enable samba)
+ $(use_enable ssl openssl)
+ # Useless ? --enable-http-neon
+
+ # fix path to krb5-config
+ KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
+ )
+
+ # this works because of the order of configure parsing
+ # so should always be behind the use_enable options
+ # foser <foser@gentoo.org 19 Apr 2004
+ use gnutls && use ssl && myconf+=( --disable-openssl )
+
+ #bug #519060
+ #configure script is so messed up on res_init on Darwin
+ [[ ${CHOST} == *-darwin* ]] && export LIBS="${LIBS} -lresolv"
+
+ ECONF_SOURCE=${S} \
+ gnome2_src_configure "${myconf[@]}"
+
+ if multilib_is_native_abi; then
+ ln -s "${S}"/doc/html doc/html || die
+ fi
+}
+
+multilib_src_test() {
+ unset DISPLAY
+ # Fix bug #285706
+ unset XAUTHORITY
+ Xemake check || die "tests failed"
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ DOCS="AUTHORS ChangeLog HACKING NEWS README TODO"
+ einstalldocs
+}
diff --git a/gnome-base/gnome-vfs/metadata.xml b/gnome-base/gnome-vfs/metadata.xml
new file mode 100644
index 000000000000..da6fd63d0085
--- /dev/null
+++ b/gnome-base/gnome-vfs/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+</pkgmetadata>