Package init

This commit is contained in:
overweight 2019-09-30 10:41:11 -04:00
commit d9a9c76576
13 changed files with 466 additions and 0 deletions

View File

@ -0,0 +1,49 @@
From bf78414abb7014966c4fefd49f6c25502bbc4f9d Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Wed, 4 Nov 2009 14:24:42 +0000
Subject: [PATCH] Add default media application schema
So that there is a default media player selected in the
"Default Applications" capplet.
https://bugzilla.gnome.org/show_bug.cgi?id=435653
---
schemas/desktop_default_applications.schemas.in | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/schemas/desktop_default_applications.schemas.in b/schemas/desktop_default_applications.schemas.in
index 515aee0..aa47ba5 100644
--- a/schemas/desktop_default_applications.schemas.in
+++ b/schemas/desktop_default_applications.schemas.in
@@ -24,6 +24,28 @@
</locale>
</schema>
<schema>
+ <key>/schemas/desktop/gnome/applications/media/exec</key>
+ <applyto>/desktop/gnome/applications/media/exec</applyto>
+ <owner>gnome-vfs</owner>
+ <type>string</type>
+ <default>totem</default>
+ <locale name="C">
+ <short>Default media application</short>
+ <long>The default media application to use when media buttons are pressed.</long>
+ </locale>
+ </schema>
+ <schema>
+ <key>/schemas/desktop/gnome/applications/media/exec_arg</key>
+ <applyto>/desktop/gnome/applications/media/exec_arg</applyto>
+ <owner>gnome-vfs</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>Exec argument for default media application</short>
+ <long>The exec argument to use for the default media application.</long>
+ </locale>
+ </schema>
+ <schema>
<key>/schemas/desktop/gnome/applications/component_viewer/exec</key>
<applyto>/desktop/gnome/applications/component_viewer/exec</applyto>
<owner>gnome-vfs</owner>
--
1.6.5.1

View File

@ -0,0 +1,11 @@
--- gnome-vfs-2.15.91/schemas/desktop_gnome_url_handlers.schemas.in.mailto-command 2006-08-10 16:23:54.000000000 -0400
+++ gnome-vfs-2.15.91/schemas/desktop_gnome_url_handlers.schemas.in 2006-08-10 16:24:14.000000000 -0400
@@ -255,7 +255,7 @@
<applyto>/desktop/gnome/url-handlers/mailto/command</applyto>
<owner>gnome</owner>
<type>string</type>
- <default>evolution %s</default>
+ <default>evolution --component=mail %s</default>
<locale name="C">
<short>The handler for "mailto" URLs</short>
<long>The command used to handle "mailto" URLs, if enabled.</long>

View File

@ -0,0 +1,11 @@
--- gnome-vfs-2.20.0/libgnomevfs/gnome-vfs-hal-mounts.c.orig 2007-10-15 20:12:13.000000000 -0400
+++ gnome-vfs-2.20.0/libgnomevfs/gnome-vfs-hal-mounts.c 2007-10-15 20:12:40.000000000 -0400
@@ -643,6 +643,8 @@
"/tmp",
"/usr",
"/var",
+ "/var/tmp",
+ "/var/log/audit",
"/proc",
"/sbin",
NULL

View File

@ -0,0 +1,12 @@
diff -up gnome-vfs-2.24.1/configure.in.orig gnome-vfs-2.24.1/configure.in
--- gnome-vfs-2.24.1/configure.in.orig 2009-03-17 14:48:24.000000000 +0100
+++ gnome-vfs-2.24.1/configure.in 2009-08-14 14:00:49.000000000 +0200
@@ -1044,7 +1044,7 @@ dnl ====================================
dnl End of IPv6 checks
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)
+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 $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"
AC_SUBST(LIBGNOMEVFS_CFLAGS)

View File

@ -0,0 +1,68 @@
Index: gnome-vfs-2.24.2/imported/neon/ne_xml.c
===================================================================
--- gnome-vfs-2.24.2/imported/neon/ne_xml.c (revision 1687)
+++ gnome-vfs-2.24.2/imported/neon/ne_xml.c (revision 1688)
@@ -405,6 +405,28 @@
destroy_element(elm);
}
+#if defined(HAVE_EXPAT) && XML_MAJOR_VERSION > 1
+/* Stop the parser if an entity declaration is hit. */
+static void entity_declaration(void *userData, const XML_Char *entityName,
+ int is_parameter_entity, const XML_Char *value,
+ int value_length, const XML_Char *base,
+ const XML_Char *systemId, const XML_Char *publicId,
+ const XML_Char *notationName)
+{
+ ne_xml_parser *parser = userData;
+
+ NE_DEBUG(NE_DBG_XMLPARSE, "XML: entity declaration [%s]. Failing.\n",
+ entityName);
+
+ XML_StopParser(parser->parser, XML_FALSE);
+}
+#elif defined(HAVE_EXPAT)
+/* A noop default_handler. */
+static void default_handler(void *userData, const XML_Char *s, int len)
+{
+}
+#endif
+
/* Find a namespace definition for 'prefix' in given element, where
* length of prefix is 'pfxlen'. Returns the URI or NULL. */
static const char *resolve_nspace(const struct element *elm,
@@ -459,14 +481,34 @@
XML_SetCharacterDataHandler(p->parser, char_data);
XML_SetUserData(p->parser, (void *) p);
XML_SetXmlDeclHandler(p->parser, decl_handler);
+
+ /* Prevent the "billion laughs" attack against expat by disabling
+ * internal entity expansion. With 2.x, forcibly stop the parser
+ * if an entity is declared - this is safer and a more obvious
+ * failure mode. With older versions, installing a noop
+ * DefaultHandler means that internal entities will be expanded as
+ * the empty string, which is also sufficient to prevent the
+ * attack. */
+#if XML_MAJOR_VERSION > 1
+ XML_SetEntityDeclHandler(p->parser, entity_declaration);
#else
+ XML_SetDefaultHandler(p->parser, default_handler);
+#endif
+
+#else /* HAVE_LIBXML */
p->parser = xmlCreatePushParserCtxt(&sax_handler,
(void *)p, NULL, 0, NULL);
if (p->parser == NULL) {
abort();
}
+#if LIBXML_VERSION < 20602
p->parser->replaceEntities = 1;
+#else
+ /* Enable expansion of entities, and disable network access. */
+ xmlCtxtUseOptions(p->parser, XML_PARSE_NOENT | XML_PARSE_NONET);
#endif
+
+#endif /* HAVE_LIBXML || HAVE_EXPAT */
return p;
}

View File

@ -0,0 +1,57 @@
diff -up gnome-vfs-2.24.4/daemon/Makefile.am.bak gnome-vfs-2.24.4/daemon/Makefile.am
--- gnome-vfs-2.24.4/daemon/Makefile.am.bak 2010-02-09 13:16:14.000000000 +0100
+++ gnome-vfs-2.24.4/daemon/Makefile.am 2013-03-27 17:01:25.000000000 +0100
@@ -8,7 +8,6 @@ INCLUDES= \
-D_LARGEFILE64_SOURCE \
-D_POSIX_PTHREAD_SEMANTICS \
-D_REENTRANT \
- -DG_DISABLE_DEPRECATED \
-DGNOME_VFS_PREFIX=\"$(prefix)\" \
-DGNOME_VFS_DATADIR=\"$(datadir)\" \
-DGNOME_VFS_LIBDIR=\"$(libdir)\" \
diff -up gnome-vfs-2.24.4/libgnomevfs/Makefile.am.bak gnome-vfs-2.24.4/libgnomevfs/Makefile.am
--- gnome-vfs-2.24.4/libgnomevfs/Makefile.am.bak 2010-02-09 13:16:14.000000000 +0100
+++ gnome-vfs-2.24.4/libgnomevfs/Makefile.am 2013-03-27 17:01:37.000000000 +0100
@@ -19,7 +19,6 @@ INCLUDES = \
-D_LARGEFILE64_SOURCE \
-D_POSIX_PTHREAD_SEMANTICS \
-D_REENTRANT \
- -DG_DISABLE_DEPRECATED \
-DGNOME_VFS_PREFIX=\"$(prefix)\" \
-DGNOME_VFS_BINDIR=\"$(bindir)\" \
-DGNOME_VFS_DATADIR=\"$(datadir)\" \
diff -up gnome-vfs-2.24.4/modules/Makefile.am.bak gnome-vfs-2.24.4/modules/Makefile.am
--- gnome-vfs-2.24.4/modules/Makefile.am.bak 2010-02-09 13:16:14.000000000 +0100
+++ gnome-vfs-2.24.4/modules/Makefile.am 2013-03-27 17:01:45.000000000 +0100
@@ -18,7 +18,6 @@ INCLUDES = \
-D_POSIX_PTHREAD_SEMANTICS \
-D_REENTRANT \
-DSSH_PROGRAM=\"$(SSH_PROGRAM)\" \
- -DG_DISABLE_DEPRECATED \
-DGNOME_VFS_PREFIX=\"$(prefix)\" \
-DGNOME_VFS_DATADIR=\"$(datadir)\" \
-DGNOME_VFS_LIBDIR=\"$(libdir)\" \
diff -up gnome-vfs-2.24.4/programs/Makefile.am.bak gnome-vfs-2.24.4/programs/Makefile.am
--- gnome-vfs-2.24.4/programs/Makefile.am.bak 2010-02-09 13:16:14.000000000 +0100
+++ gnome-vfs-2.24.4/programs/Makefile.am 2013-03-27 17:01:56.000000000 +0100
@@ -4,8 +4,7 @@ INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
$(TEST_CFLAGS) \
- $(VFS_CFLAGS) \
- -DG_DISABLE_DEPRECATED
+ $(VFS_CFLAGS)
libraries = \
$(top_builddir)/libgnomevfs/libgnomevfs-2.la \
diff -up gnome-vfs-2.24.4/test/Makefile.am.bak gnome-vfs-2.24.4/test/Makefile.am
--- gnome-vfs-2.24.4/test/Makefile.am.bak 2013-03-27 17:01:11.000000000 +0100
+++ gnome-vfs-2.24.4/test/Makefile.am 2013-03-27 17:02:08.000000000 +0100
@@ -6,7 +6,6 @@ INCLUDES = \
-I$(top_builddir)/libgnomevfs \
$(TEST_CFLAGS) \
$(VFS_CFLAGS) \
- -DG_DISABLE_DEPRECATED \
-DMODULES_PATH=\"$(libdir)/vfs/modules\"
if OS_WIN32

BIN
gnome-vfs-2.24.4.tar.bz2 Normal file

Binary file not shown.

View File

@ -0,0 +1,37 @@
From 0bf9ac622fa41978fced2606450d2f906c8ca6f8 Mon Sep 17 00:00:00 2001
From: Jasper Lievisse Adriaanse <jasper@humppa.nl>
Date: Thu, 19 May 2011 16:14:54 +0000
Subject: file-method: Don't pass invalid flags to chmod
Remove the GNOME-VFS masks which aren't valid bits.
Commit message written by Colin Walters <walters@verbum.org>
https://bugzilla.gnome.org/show_bug.cgi?id=542026
---
diff --git a/modules/file-method.c b/modules/file-method.c
index 37e4853..1d70d19 100644
--- a/modules/file-method.c
+++ b/modules/file-method.c
@@ -2378,7 +2378,18 @@ do_set_file_info (GnomeVFSMethod *method,
}
if (mask & GNOME_VFS_SET_FILE_INFO_PERMISSIONS) {
- if (chmod (full_name, info->permissions) != 0) {
+ int tmask;
+ int permissions = info->permissions;
+ /*
+ * ktrace showed "invalid argument", and this makes sense....
+ * because, we cannot pass the GNOME_VFS_PERM_ACCESS_*
+ * constants to chmod.
+ */
+ tmask = GNOME_VFS_PERM_ACCESS_READABLE;
+ tmask |= GNOME_VFS_PERM_ACCESS_WRITABLE;
+ tmask |= GNOME_VFS_PERM_ACCESS_EXECUTABLE;
+ permissions = permissions & ~tmask;
+ if (chmod (full_name, permissions) != 0) {
g_free (full_name);
return gnome_vfs_result_from_errno ();
}
--
cgit v0.9.0.2

View File

@ -0,0 +1,31 @@
gnome-vfs-daemon reads /proc/mounts at startup and uses HAL via
libhal_drive_from_device_file() in multiple places in gnome-vfs-hal-mounts.c
Strings in DBUS must be valid UTF8. If the device path is not valid UTF8,
dbus_connection_send() will cause a disconnect of the caller and an exit.
Threfore if the device path contains invalid utf8, gnome-vfs-daemon will fail
to start. If that happens during a session, gnome-vfs-daemon will be restarted
by any gnome application wich cause a lot of start/stop of gnome-vfs-daemon.
The following patch simply ensures that we use valid utf8 for device path to
avoid problems with hal/dbus.
Olivier Fourdan <ofourdan@redhat.com>
gnome-vfs-volume-monitor-daemon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff -up gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c.utf8-mount gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c
--- gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c.utf8-mount 2009-07-07 06:10:24.000000000 -0400
+++ gnome-vfs-2.16.2/libgnomevfs/gnome-vfs-volume-monitor-daemon.c 2009-07-07 06:10:34.000000000 -0400
@@ -874,7 +874,7 @@ create_vol_from_mount (GnomeVFSVolumeMon
vol = g_object_new (GNOME_VFS_TYPE_VOLUME, NULL);
vol->priv->volume_type = GNOME_VFS_VOLUME_TYPE_MOUNTPOINT;
- vol->priv->device_path = g_strdup (mount->device_path);
+ vol->priv->device_path = make_utf8 (mount->device_path);
vol->priv->unix_device = 0; /* Caller must fill in. */
vol->priv->activation_uri = gnome_vfs_get_uri_from_local_path (mount->mount_path);
vol->priv->filesystem_type = g_strdup (mount->filesystem_type);

View File

@ -0,0 +1,20 @@
--- gnome-vfs-2.8.2/schemas/desktop_gnome_url_handlers.schemas.in.browser_default 2004-10-18 21:38:08.605885937 -0400
+++ gnome-vfs-2.8.2/schemas/desktop_gnome_url_handlers.schemas.in 2004-10-18 21:38:20.470253994 -0400
@@ -153,7 +153,7 @@
<applyto>/desktop/gnome/url-handlers/http/command</applyto>
<owner>gnome</owner>
<type>string</type>
- <default>epiphany %s</default>
+ <default>gvfs-open %s</default>
<locale name="C">
<short>The handler for "http" URLs</short>
<long>The command used to handle "http" URLs, if enabled.</long>
@@ -187,7 +187,7 @@
<applyto>/desktop/gnome/url-handlers/https/command</applyto>
<owner>gnome</owner>
<type>string</type>
- <default>epiphany %s</default>
+ <default>gvfs-open %s</default>
<locale name="C">
<short>The handler for "https" URLs</short>
<long>The command used to handle "https" URLs, if enabled.</long>

View File

@ -0,0 +1,43 @@
--- gnome-vfs-2.7.90/schemas/desktop_gnome_url_handlers.schemas.in.schema_about 2004-08-04 16:18:21.323425176 +0100
+++ gnome-vfs-2.7.90/schemas/desktop_gnome_url_handlers.schemas.in 2004-08-04 16:25:28.770443352 +0100
@@ -206,6 +206,40 @@
</schema>
<schema>
+ <key>/schemas/desktop/gnome/url-handlers/about/enabled</key>
+ <applyto>/desktop/gnome/url-handlers/about/enabled</applyto>
+ <owner>gnome</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Handle about URLs</short>
+ <long>Set to true to have a program specified in "command" handle about URLs.</long>
+ </locale>
+ </schema>
+ <schema>
+ <key>/schemas/desktop/gnome/url-handlers/about/command</key>
+ <applyto>/desktop/gnome/url-handlers/about/command</applyto>
+ <owner>gnome</owner>
+ <type>string</type>
+ <default>firefox %s</default>
+ <locale name="C">
+ <short>about URL handler</short>
+ <long></long>
+ </locale>
+ </schema>
+ <schema>
+ <key>/schemas/desktop/gnome/url-handlers/about/needs_terminal</key>
+ <applyto>/desktop/gnome/url-handlers/about/needs_terminal</applyto>
+ <owner>gnome</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Run program in terminal</short>
+ <long>True if the program to handle this URL should be run in a terminal.</long>
+ </locale>
+ </schema>
+
+ <schema>
<key>/schemas/desktop/gnome/url-handlers/mailto/enabled</key>
<applyto>/desktop/gnome/url-handlers/mailto/enabled</applyto>
<owner>gnome</owner>

View File

@ -0,0 +1,10 @@
--- gnome-vfs-2.9.90/modules/default-modules.conf.modules-conf 2005-01-10 11:22:41.000000000 -0500
+++ gnome-vfs-2.9.90/modules/default-modules.conf 2005-01-31 10:05:54.986703000 -0500
@@ -43,3 +43,7 @@
ssh: sftp
tar: tar
+
+favorites: desktop
+
+start-here: desktop

117
gnome-vfs2.spec Normal file
View File

@ -0,0 +1,117 @@
Name: gnome-vfs2
Version: 2.24.4
Release: 28
Summary: GNOME virtual File System
License: LGPLv2+ and GPLv2+
URL: http://www.gnome.org/
Source0: http://download.gnome.org/sources/gnome-vfs/2.24/gnome-vfs-%{version}.tar.bz2
BuildRequires: GConf2-devel libxml2-devel zlib-devel glib2-devel bzip2-devel ORBit2-devel
BuildRequires: popt openjade pkgconfig automake libtool autoconf gtk-doc perl-XML-Parser
BuildRequires: libsmbclient-devel compat-openssl10-devel gamin-devel krb5-devel
BuildRequires: dbus-devel dbus-glib-devel libacl-devel libselinux-devel keyutils-libs-devel
BuildRequires: gettext intltool pkgconfig(avahi-client) pkgconfig(avahi-glib)
Requires: gvfs GConf2
Provides: gnome-vfs2-common gnome-vfs2-smb
Obsoletes: gnome-vfs2-common gnome-vfs2-smb
Patch0001: gnome-vfs-2.9.90-modules-conf.patch
Patch0002: gnome-vfs-2.24.1-disable-gnome-mime-data.patch
Patch0003: gnome-vfs-2.24.3-CVE-2009-2473.patch
Patch0004: gnome-vfs-2.8.2-schema_about_for_upstream.patch
Patch0005: gnome-vfs-2.8.2-browser_default.patch
Patch0006: gnome-vfs-2.15.91-mailto-command.patch
Patch0007: gnome-vfs-2.20.0-ignore-certain-mountpoints.patch
Patch0008: gnome-vfs-2.24.xx-utf8-mounts.patch
Patch0009: 0001-Add-default-media-application-schema.patch
Patch0010: gnome-vfs-2.24.5-file-method-chmod-flags.patch
Patch0011: gnome-vfs-2.24.4-enable-deprecated.patch
%description
The GNOME Virtual File System provides an abstraction to common file system
operations like reading, writing and copying files, listing directories and
so on. It also provides support for reading and writing files on windows
shares (SMB) to applications using GNOME VFS.
GNOME-VFS is extensible and usable from any application on the GNOME desktop.
%package devel
Summary: Libraries and header files for developing GNOME VFS applications
Requires: gnome-vfs2 = %{version}-%{release}
%description devel
Include the necessary development libraries and headers for developing
GNOME VFS modules and applications that use the GNOME VFS APIs.
%prep
%autosetup -n gnome-vfs-%{version} -p1
libtoolize --force || :
aclocal || :
autoheader || :
automake --add-missing || :
autoconf || :
%build
if pkg-config openssl ; then
CPPFLAGS=`pkg-config --cflags openssl`; export CPPFLAGS
LDFLAGS=`pkg-config --libs-only-L openssl`; export LDFLAGS
fi
CFLAGS="%optflags -fno-strict-aliasing" %configure \
--with-samba-includes=`pkg-config --variable=includedir smbclient` \
--enable-samba --disable-gtk-doc --disable-static
%make_build
%install
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
%make_install
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
%find_lang gnome-vfs-2.0
%check
make test
%pre
%gconf_schema_prepare system_http_proxy system_dns_sd system_smb desktop_gnome_url_handlers desktop_default_applications
%preun
%gconf_schema_remove system_http_proxy system_dns_sd system_smb desktop_gnome_url_handlers desktop_default_applications
%post
/sbin/ldconfig
%gconf_schema_upgrade system_http_proxy system_dns_sd system_smb desktop_gnome_url_handlers desktop_default_applications
%postun
/sbin/ldconfig
%files -f gnome-vfs-2.0.lang
%defattr(-,root,root)
%doc AUTHORS COPYING COPYING.LIB NEWS README
%{_bindir}/gnomevfs-*
%{_libdir}/libgnomevfs-2.so.0*
%exclude %{_libdir}/libgnomevfs-2.la
%{_libdir}/gnome-vfs-2.0/modules/lib*.so
%exclude %{_libdir}/gnome-vfs-2.0/modules/*.la
%{_libexecdir}/gnome-vfs-daemon
%{_datadir}/dbus-1/services/gnome-vfs-daemon.service
%{_sysconfdir}/gconf/schemas/*.schemas
%config %{_sysconfdir}/gnome-vfs-2.0/modules/*.conf
%files devel
%{_libdir}/libgnomevfs-2.so
%{_libdir}/pkgconfig/gnome-vfs*-2.0.pc
%{_libdir}/gnome-vfs-2.0/include/
%{_includedir}/gnome-vfs-2.0/
%{_includedir}/gnome-vfs-module-2.0/
%{_datadir}/gtk-doc/html/gnome-vfs-2.0/
%changelog
* Tue Sep 17 2019 Huiming Xie <xiehuiming@huawei.com> - 2.24.4.28
- Package init