This commit is contained in:
parent
01ff560a5f
commit
3b314c1f29
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:67e7dd1dca32a99eb1102a853d2df1bac782d50a4361511409572cfe8ea51147
|
||||
size 898295
|
3
gvfs-1.0.2.tar.bz2
Normal file
3
gvfs-1.0.2.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f3606dc28b1fa140c7d0191478097a89f7ef7a3183a811a1410a230052b71eb4
|
||||
size 918268
|
453
gvfs-obexftp-updated-apis-3.patch
Normal file
453
gvfs-obexftp-updated-apis-3.patch
Normal file
@ -0,0 +1,453 @@
|
||||
Index: daemon/obexftp-marshal.list
|
||||
===================================================================
|
||||
--- daemon/obexftp-marshal.list (revision 2022)
|
||||
+++ daemon/obexftp-marshal.list (working copy)
|
||||
@@ -1,2 +1,4 @@
|
||||
+VOID:STRING
|
||||
VOID:STRING,STRING
|
||||
+VOID:STRING,STRING,STRING
|
||||
VOID:STRING,STRING,UINT64
|
||||
Index: daemon/gvfsbackendobexftp.c
|
||||
===================================================================
|
||||
--- daemon/gvfsbackendobexftp.c (revision 2022)
|
||||
+++ daemon/gvfsbackendobexftp.c (working copy)
|
||||
@@ -69,7 +69,7 @@
|
||||
|
||||
char *display_name;
|
||||
char *bdaddr;
|
||||
- guint type;
|
||||
+ char *icon_name;
|
||||
|
||||
DBusGConnection *connection;
|
||||
DBusGProxy *manager_proxy;
|
||||
@@ -96,177 +96,106 @@
|
||||
|
||||
G_DEFINE_TYPE (GVfsBackendObexftp, g_vfs_backend_obexftp, G_VFS_TYPE_BACKEND);
|
||||
|
||||
-/* This should all live in bluez-gnome, and we
|
||||
- * should depend on it */
|
||||
-enum {
|
||||
- BLUETOOTH_TYPE_ANY = 1,
|
||||
- BLUETOOTH_TYPE_PHONE = 1 << 1,
|
||||
- BLUETOOTH_TYPE_MODEM = 1 << 2,
|
||||
- BLUETOOTH_TYPE_COMPUTER = 1 << 3,
|
||||
- BLUETOOTH_TYPE_NETWORK = 1 << 4,
|
||||
- BLUETOOTH_TYPE_HEADSET = 1 << 5,
|
||||
- BLUETOOTH_TYPE_KEYBOARD = 1 << 6,
|
||||
- BLUETOOTH_TYPE_MOUSE = 1 << 7,
|
||||
- BLUETOOTH_TYPE_CAMERA = 1 << 8,
|
||||
- BLUETOOTH_TYPE_PRINTER = 1 << 9
|
||||
-};
|
||||
+static void session_connect_error_cb (DBusGProxy *proxy,
|
||||
+ const char *session_object,
|
||||
+ const gchar *error_name,
|
||||
+ const gchar *error_message,
|
||||
+ gpointer user_data);
|
||||
+static void session_connected_cb (DBusGProxy *proxy,
|
||||
+ const char *session_object,
|
||||
+ gpointer user_data);
|
||||
|
||||
-static const char *
|
||||
-_get_icon_from_type (guint type)
|
||||
+/* Used to detect broken listings from
|
||||
+ * old Nokia 3650s */
|
||||
+static gboolean
|
||||
+_is_nokia_3650 (const char *bdaddr)
|
||||
{
|
||||
- switch (type)
|
||||
- {
|
||||
- case BLUETOOTH_TYPE_PHONE:
|
||||
- return "phone";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_MODEM:
|
||||
- return "modem";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_COMPUTER:
|
||||
- return "network-server";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_NETWORK:
|
||||
- return "network-wireless";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_HEADSET:
|
||||
- return "stock_headphones";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_KEYBOARD:
|
||||
- return "input-keyboard";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_MOUSE:
|
||||
- return "input-mouse";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_CAMERA:
|
||||
- return "camera-photo";
|
||||
- break;
|
||||
- case BLUETOOTH_TYPE_PRINTER:
|
||||
- return "printer";
|
||||
- break;
|
||||
- default:
|
||||
- return "bluetooth";
|
||||
- break;
|
||||
- }
|
||||
+ /* Don't ask, Nokia seem to use a Bluetooth
|
||||
+ * HCI from Murata */
|
||||
+ return g_str_has_prefix(bdaddr, "00:60:57");
|
||||
}
|
||||
|
||||
-static int
|
||||
-_get_type_from_class (guint class)
|
||||
+static char *
|
||||
+get_name_and_icon (DBusGProxy *device, char **icon_name)
|
||||
{
|
||||
- switch ((class & 0x1f00) >> 8)
|
||||
+ GHashTable *hash;
|
||||
+
|
||||
+ if (dbus_g_proxy_call (device, "GetProperties", NULL,
|
||||
+ G_TYPE_INVALID, dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE),
|
||||
+ &hash, G_TYPE_INVALID) != FALSE)
|
||||
{
|
||||
- case 0x01:
|
||||
- return BLUETOOTH_TYPE_COMPUTER;
|
||||
- case 0x02:
|
||||
- switch ((class & 0xfc) >> 2)
|
||||
+ GValue *value;
|
||||
+ char *name;
|
||||
+
|
||||
+ value = g_hash_table_lookup (hash, "Name");
|
||||
+ name = value ? g_value_dup_string(value) : NULL;
|
||||
+
|
||||
+ value = g_hash_table_lookup (hash, "Icon");
|
||||
+ if (value)
|
||||
{
|
||||
- case 0x01:
|
||||
- case 0x02:
|
||||
- case 0x03:
|
||||
- case 0x05:
|
||||
- return BLUETOOTH_TYPE_PHONE;
|
||||
- case 0x04:
|
||||
- return BLUETOOTH_TYPE_MODEM;
|
||||
+ *icon_name = g_value_dup_string (value);
|
||||
}
|
||||
- break;
|
||||
- case 0x03:
|
||||
- return BLUETOOTH_TYPE_NETWORK;
|
||||
- case 0x04:
|
||||
- switch ((class & 0xfc) >> 2)
|
||||
+ else
|
||||
{
|
||||
- case 0x01:
|
||||
- return BLUETOOTH_TYPE_HEADSET;
|
||||
+ *icon_name = g_strdup ("bluetooth");
|
||||
}
|
||||
- break;
|
||||
- case 0x05:
|
||||
- switch ((class & 0xc0) >> 6)
|
||||
- {
|
||||
- case 0x01:
|
||||
- return BLUETOOTH_TYPE_KEYBOARD;
|
||||
- case 0x02:
|
||||
- return BLUETOOTH_TYPE_MOUSE;
|
||||
- }
|
||||
- break;
|
||||
- case 0x06:
|
||||
- if (class & 0x80)
|
||||
- return BLUETOOTH_TYPE_PRINTER;
|
||||
- if (class & 0x20)
|
||||
- return BLUETOOTH_TYPE_CAMERA;
|
||||
- break;
|
||||
+ g_hash_table_destroy (hash);
|
||||
+ return name;
|
||||
}
|
||||
|
||||
- return BLUETOOTH_TYPE_ANY;
|
||||
+ return NULL;
|
||||
}
|
||||
|
||||
-/* Used to detect broken listings from
|
||||
- * old Nokia 3650s */
|
||||
-static gboolean
|
||||
-_is_nokia_3650 (const char *bdaddr)
|
||||
-{
|
||||
- /* Don't ask, Nokia seem to use a Bluetooth
|
||||
- * HCI from Murata */
|
||||
- return g_str_has_prefix(bdaddr, "00:60:57");
|
||||
-}
|
||||
-
|
||||
static gchar *
|
||||
-_get_device_properties (const char *bdaddr, guint32 *type)
|
||||
+_get_device_properties (const char *bdaddr, char **icon_name)
|
||||
{
|
||||
DBusGConnection *connection;
|
||||
DBusGProxy *manager;
|
||||
- gchar *name, **adapters;
|
||||
+ GPtrArray *adapters;
|
||||
+ gchar *name;
|
||||
guint i;
|
||||
|
||||
name = NULL;
|
||||
|
||||
connection = dbus_g_bus_get (DBUS_BUS_SYSTEM, NULL);
|
||||
if (connection == NULL)
|
||||
- return NULL;
|
||||
+ return name;
|
||||
|
||||
manager = dbus_g_proxy_new_for_name (connection, "org.bluez",
|
||||
- "/org/bluez", "org.bluez.Manager");
|
||||
+ "/", "org.bluez.Manager");
|
||||
if (manager == NULL)
|
||||
{
|
||||
dbus_g_connection_unref (connection);
|
||||
- return NULL;
|
||||
+ return name;
|
||||
}
|
||||
|
||||
- if (dbus_g_proxy_call (manager, "ListAdapters", NULL, G_TYPE_INVALID, G_TYPE_STRV, &adapters, G_TYPE_INVALID) == FALSE)
|
||||
+ if (dbus_g_proxy_call (manager, "ListAdapters", NULL, G_TYPE_INVALID, dbus_g_type_get_collection ("GPtrArray", DBUS_TYPE_G_OBJECT_PATH), &adapters, G_TYPE_INVALID) == FALSE)
|
||||
{
|
||||
g_object_unref (manager);
|
||||
dbus_g_connection_unref (connection);
|
||||
- return NULL;
|
||||
+ return name;
|
||||
}
|
||||
|
||||
- for (i = 0; adapters[i] != NULL; i++)
|
||||
+ for (i = 0; i < adapters->len && name == NULL; i++)
|
||||
{
|
||||
DBusGProxy *adapter;
|
||||
+ char *device_path;
|
||||
|
||||
adapter = dbus_g_proxy_new_for_name (connection, "org.bluez",
|
||||
- adapters[i], "org.bluez.Adapter");
|
||||
- if (dbus_g_proxy_call (adapter, "GetRemoteName", NULL,
|
||||
+ g_ptr_array_index (adapters, i), "org.bluez.Adapter");
|
||||
+ if (dbus_g_proxy_call (adapter, "FindDevice", NULL,
|
||||
G_TYPE_STRING, bdaddr, G_TYPE_INVALID,
|
||||
- G_TYPE_STRING, &name, G_TYPE_INVALID) != FALSE)
|
||||
+ DBUS_TYPE_G_OBJECT_PATH, &device_path, G_TYPE_INVALID) != FALSE)
|
||||
{
|
||||
- if (name != NULL && name[0] != '\0')
|
||||
- {
|
||||
- guint32 class;
|
||||
-
|
||||
- if (dbus_g_proxy_call(adapter, "GetRemoteClass", NULL,
|
||||
- G_TYPE_STRING, bdaddr, G_TYPE_INVALID,
|
||||
- G_TYPE_UINT, &class, G_TYPE_INVALID) != FALSE)
|
||||
- {
|
||||
- *type = _get_type_from_class (class);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- *type = BLUETOOTH_TYPE_ANY;
|
||||
- }
|
||||
- g_object_unref (adapter);
|
||||
- break;
|
||||
- }
|
||||
+ DBusGProxy *device;
|
||||
+ device = dbus_g_proxy_new_for_name (connection, "org.bluez", device_path, "org.bluez.Device");
|
||||
+ name = get_name_and_icon (device, icon_name);
|
||||
+ g_object_unref (device);
|
||||
}
|
||||
g_object_unref (adapter);
|
||||
}
|
||||
|
||||
+ g_ptr_array_free (adapters, TRUE);
|
||||
g_object_unref (manager);
|
||||
dbus_g_connection_unref (connection);
|
||||
|
||||
@@ -282,6 +211,7 @@
|
||||
|
||||
g_free (backend->display_name);
|
||||
g_free (backend->bdaddr);
|
||||
+ g_free (backend->icon_name);
|
||||
g_free (backend->files_listing);
|
||||
g_free (backend->directory);
|
||||
|
||||
@@ -312,6 +242,15 @@
|
||||
"org.openobex",
|
||||
"/org/openobex",
|
||||
"org.openobex.Manager");
|
||||
+
|
||||
+ dbus_g_proxy_add_signal(backend->manager_proxy, "SessionConnectError",
|
||||
+ DBUS_TYPE_G_OBJECT_PATH, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
|
||||
+ dbus_g_proxy_connect_signal(backend->manager_proxy, "SessionConnectError",
|
||||
+ G_CALLBACK(session_connect_error_cb), backend, NULL);
|
||||
+ dbus_g_proxy_add_signal(backend->manager_proxy, "SessionConnected",
|
||||
+ DBUS_TYPE_G_OBJECT_PATH, G_TYPE_INVALID);
|
||||
+ dbus_g_proxy_connect_signal(backend->manager_proxy, "SessionConnected",
|
||||
+ G_CALLBACK(session_connected_cb), backend, NULL);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -437,8 +376,7 @@
|
||||
g_file_info_set_file_type (info, G_FILE_TYPE_DIRECTORY);
|
||||
g_file_info_set_content_type (info, "inode/directory");
|
||||
g_file_info_set_name (info, "/");
|
||||
- g_vfs_backend_set_icon_name (backend,
|
||||
- _get_icon_from_type (op_backend->type));
|
||||
+ g_vfs_backend_set_icon_name (backend, op_backend->icon_name);
|
||||
display = g_strdup_printf (_("%s on %s"), "/", op_backend->display_name);
|
||||
g_file_info_set_display_name (info, display);
|
||||
g_free (display);
|
||||
@@ -531,6 +469,37 @@
|
||||
}
|
||||
|
||||
static void
|
||||
+session_connect_error_cb (DBusGProxy *proxy,
|
||||
+ const char *session_object,
|
||||
+ const gchar *error_name,
|
||||
+ const gchar *error_message,
|
||||
+ gpointer user_data)
|
||||
+{
|
||||
+ GVfsBackendObexftp *op_backend = G_VFS_BACKEND_OBEXFTP (user_data);
|
||||
+
|
||||
+ g_mutex_lock (op_backend->mutex);
|
||||
+ op_backend->status = ASYNC_ERROR;
|
||||
+ op_backend->error = g_error_new_literal (DBUS_GERROR,
|
||||
+ DBUS_GERROR_REMOTE_EXCEPTION,
|
||||
+ error_message);
|
||||
+ g_cond_signal (op_backend->cond);
|
||||
+ g_mutex_unlock (op_backend->mutex);
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+session_connected_cb (DBusGProxy *proxy,
|
||||
+ const char *session_object,
|
||||
+ gpointer user_data)
|
||||
+{
|
||||
+ GVfsBackendObexftp *op_backend = G_VFS_BACKEND_OBEXFTP (user_data);
|
||||
+
|
||||
+ g_mutex_lock (op_backend->mutex);
|
||||
+ op_backend->status = ASYNC_SUCCESS;
|
||||
+ g_cond_signal (op_backend->cond);
|
||||
+ g_mutex_unlock (op_backend->mutex);
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
cancelled_cb (DBusGProxy *proxy, gpointer user_data)
|
||||
{
|
||||
GVfsBackendObexftp *op_backend = G_VFS_BACKEND_OBEXFTP (user_data);
|
||||
@@ -559,24 +528,6 @@
|
||||
_exit (1);
|
||||
}
|
||||
|
||||
-static int
|
||||
-is_connected (DBusGProxy *session_proxy, GVfsJob *job)
|
||||
-{
|
||||
- GError *error = NULL;
|
||||
- gboolean connected;
|
||||
-
|
||||
- if (dbus_g_proxy_call (session_proxy, "IsConnected", &error,
|
||||
- G_TYPE_INVALID,
|
||||
- G_TYPE_BOOLEAN, &connected, G_TYPE_INVALID) == FALSE)
|
||||
- {
|
||||
- g_vfs_job_failed_from_error (job, error);
|
||||
- g_error_free (error);
|
||||
- return -1;
|
||||
- }
|
||||
-
|
||||
- return connected;
|
||||
-}
|
||||
-
|
||||
static void
|
||||
do_mount (GVfsBackend *backend,
|
||||
GVfsJobMount *job,
|
||||
@@ -590,7 +541,7 @@
|
||||
const gchar *path = NULL;
|
||||
char *server;
|
||||
GMountSpec *obexftp_mount_spec;
|
||||
- gboolean connected;
|
||||
+ guint count;
|
||||
|
||||
g_print ("+ do_mount\n");
|
||||
|
||||
@@ -616,10 +567,11 @@
|
||||
}
|
||||
|
||||
/* FIXME, Have a way for the mount to be cancelled, see:
|
||||
- * http://bugs.muiline.com/view.php?id=51 */
|
||||
+ * Use CancelSessionConnect */
|
||||
+ op_backend->status = ASYNC_PENDING;
|
||||
|
||||
if (dbus_g_proxy_call (op_backend->manager_proxy, "CreateBluetoothSession", &error,
|
||||
- G_TYPE_STRING, op_backend->bdaddr, G_TYPE_STRING, "ftp", G_TYPE_INVALID,
|
||||
+ G_TYPE_STRING, op_backend->bdaddr, G_TYPE_STRING, "00:00:00:00:00:00", G_TYPE_STRING, "ftp", G_TYPE_INVALID,
|
||||
DBUS_TYPE_G_OBJECT_PATH, &path, G_TYPE_INVALID) == FALSE)
|
||||
{
|
||||
g_free (op_backend->bdaddr);
|
||||
@@ -636,14 +588,13 @@
|
||||
path,
|
||||
"org.openobex.Session");
|
||||
|
||||
- op_backend->display_name = _get_device_properties (op_backend->bdaddr, &op_backend->type);
|
||||
+ op_backend->display_name = _get_device_properties (op_backend->bdaddr, &op_backend->icon_name);
|
||||
if (!op_backend->display_name)
|
||||
op_backend->display_name = g_strdup (op_backend->bdaddr);
|
||||
|
||||
g_vfs_backend_set_display_name (G_VFS_BACKEND (op_backend),
|
||||
op_backend->display_name);
|
||||
- g_vfs_backend_set_icon_name (G_VFS_BACKEND (op_backend),
|
||||
- _get_icon_from_type (op_backend->type));
|
||||
+ g_vfs_backend_set_icon_name (G_VFS_BACKEND (op_backend), op_backend->icon_name);
|
||||
|
||||
obexftp_mount_spec = g_mount_spec_new ("obex");
|
||||
server = g_strdup_printf ("[%s]", op_backend->bdaddr);
|
||||
@@ -676,14 +627,20 @@
|
||||
G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT64, G_TYPE_INVALID);
|
||||
|
||||
/* Now wait until the device is connected */
|
||||
- connected = is_connected (op_backend->session_proxy, G_VFS_JOB (job));
|
||||
- while (connected == FALSE)
|
||||
- {
|
||||
- g_usleep (G_USEC_PER_SEC / 100);
|
||||
- connected = is_connected (op_backend->session_proxy, G_VFS_JOB (job));
|
||||
- }
|
||||
+ count = 0;
|
||||
+ g_mutex_lock (op_backend->mutex);
|
||||
|
||||
- if (connected < 0)
|
||||
+ while (op_backend->status == ASYNC_PENDING && count < 100) {
|
||||
+ GTimeVal val;
|
||||
+ g_get_current_time (&val);
|
||||
+ g_time_val_add (&val, 100000);
|
||||
+ count++;
|
||||
+ if (g_cond_timed_wait (op_backend->cond, op_backend->mutex, &val) != FALSE)
|
||||
+ break;
|
||||
+ }
|
||||
+ g_mutex_unlock (op_backend->mutex);
|
||||
+
|
||||
+ if (op_backend->status == ASYNC_ERROR || op_backend->status == ASYNC_PENDING)
|
||||
{
|
||||
g_message ("mount failed, didn't connect");
|
||||
|
||||
@@ -694,12 +651,17 @@
|
||||
g_object_unref (op_backend->session_proxy);
|
||||
op_backend->session_proxy = NULL;
|
||||
|
||||
- g_vfs_job_failed (G_VFS_JOB (job),
|
||||
- G_IO_ERROR, G_IO_ERROR_BUSY,
|
||||
- _("Connection to the device lost"));
|
||||
+ if (op_backend->status != ASYNC_PENDING)
|
||||
+ g_vfs_job_failed_from_error (G_VFS_JOB (job), op_backend->error);
|
||||
+ else
|
||||
+ g_vfs_job_failed (G_VFS_JOB (job),
|
||||
+ G_IO_ERROR, G_IO_ERROR_BUSY,
|
||||
+ _("Connection to the device lost"));
|
||||
return;
|
||||
}
|
||||
|
||||
+ op_backend->status = ASYNC_PENDING;
|
||||
+
|
||||
g_vfs_job_succeeded (G_VFS_JOB (job));
|
||||
|
||||
g_print ("- do_mount\n");
|
||||
@@ -1482,6 +1444,12 @@
|
||||
/* TransferStarted */
|
||||
dbus_g_object_register_marshaller(obexftp_marshal_VOID__STRING_STRING_UINT64,
|
||||
G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT64, G_TYPE_INVALID);
|
||||
+ /* SessionConnected */
|
||||
+ dbus_g_object_register_marshaller(obexftp_marshal_VOID__STRING,
|
||||
+ G_TYPE_NONE, DBUS_TYPE_G_OBJECT_PATH, G_TYPE_INVALID);
|
||||
+ /* SessionConnectError */
|
||||
+ dbus_g_object_register_marshaller (obexftp_marshal_VOID__STRING_STRING_STRING,
|
||||
+ G_TYPE_NONE, DBUS_TYPE_G_OBJECT_PATH, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
|
||||
}
|
||||
|
||||
/*
|
17
gvfs.changes
17
gvfs.changes
@ -1,3 +1,20 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 27 10:40:15 EDT 2008 - jpr@novell.com
|
||||
|
||||
- Use bluez-devel not bluez in the BuildRequires (bnc#436950)
|
||||
- List each backend individually so we know when one breaks
|
||||
- Add gvfs-obexftp-update-apis-3.patch for bluez 4.x
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 19:24:32 EST 2008 - mboman@suse.de
|
||||
|
||||
- Update to version 1.0.2:
|
||||
+ Make sure mount-added is always emitted when a mount operation is
|
||||
completed
|
||||
+ Crash fixes
|
||||
+ Set st_blocks to make du and ls -s work
|
||||
+ Stability fix with concurrent close and reads (made amarok2 crash)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 3 11:26:25 WST 2008 - mboman@suse.de
|
||||
|
||||
|
90
gvfs.spec
90
gvfs.spec
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package gvfs (Version 1.0.1)
|
||||
# spec file for package gvfs (Version 1.0.2)
|
||||
#
|
||||
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
|
||||
Name: gvfs
|
||||
BuildRequires: bluez
|
||||
BuildRequires: bluez-devel
|
||||
BuildRequires: fuse-devel
|
||||
BuildRequires: gconf2-devel
|
||||
BuildRequires: glib2-devel
|
||||
@ -44,7 +44,7 @@ BuildRequires: libgphoto2
|
||||
BuildRequires: extra-rpm-macros
|
||||
%endif
|
||||
Summary: VFS functionality for GLib
|
||||
Version: 1.0.1
|
||||
Version: 1.0.2
|
||||
Release: 1
|
||||
License: LGPL v2.0 or later
|
||||
Group: Development/Libraries/C and C++
|
||||
@ -53,6 +53,8 @@ Source0: %{name}-%{version}.tar.bz2
|
||||
Patch0: gvfs-no-shebang.patch
|
||||
# PATCH-FEATURE-OPENSUSE gvfs-dice-backend.patch hpj@suse.de -- Implements Novell IceDesktop backend. Should be upstreamed eventually.
|
||||
Patch1: gvfs-dice-backend.patch
|
||||
# PATCH-FIX-UPSTREAM gvfs-obexftp-update-apis-3.patch jpr@suse.de - Support for bluez 4.x from Fedora
|
||||
Patch2: gvfs-obexftp-updated-apis-3.patch
|
||||
Url: http://www.gnome.org
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
AutoReqProv: on
|
||||
@ -139,6 +141,7 @@ Authors:
|
||||
%setup -n %{name}-%{version}
|
||||
%patch0 -p1
|
||||
%patch1
|
||||
%patch2
|
||||
|
||||
%build
|
||||
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
||||
@ -180,8 +183,26 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files backends
|
||||
%defattr(-, root, root)
|
||||
%{_libdir}/%{name}/gvfsd-*
|
||||
%{_libdir}/%{name}/gvfs-*
|
||||
%{_libdir}/%{name}/gvfs-fuse-daemon
|
||||
%{_libdir}/%{name}/gvfs-gphoto2-volume-monitor
|
||||
%{_libdir}/%{name}/gvfs-hal-volume-monitor
|
||||
%{_libdir}/%{name}/gvfsd-archive
|
||||
%{_libdir}/%{name}/gvfsd-burn
|
||||
%{_libdir}/%{name}/gvfsd-cdda
|
||||
%{_libdir}/%{name}/gvfsd-computer
|
||||
%{_libdir}/%{name}/gvfsd-dav
|
||||
%{_libdir}/%{name}/gvfsd-dice
|
||||
%{_libdir}/%{name}/gvfsd-dnssd
|
||||
%{_libdir}/%{name}/gvfsd-ftp
|
||||
%{_libdir}/%{name}/gvfsd-gphoto2
|
||||
%{_libdir}/%{name}/gvfsd-http
|
||||
%{_libdir}/%{name}/gvfsd-localtest
|
||||
%{_libdir}/%{name}/gvfsd-network
|
||||
%{_libdir}/%{name}/gvfsd-obexftp
|
||||
%{_libdir}/%{name}/gvfsd-sftp
|
||||
%{_libdir}/%{name}/gvfsd-smb
|
||||
%{_libdir}/%{name}/gvfsd-smb-browse
|
||||
%{_libdir}/%{name}/gvfsd-trash
|
||||
|
||||
%files -n libgvfscommon0
|
||||
%defattr(-, root, root)
|
||||
@ -195,6 +216,17 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%files lang -f %{name}.lang
|
||||
|
||||
%changelog
|
||||
* Mon Oct 27 2008 jpr@novell.com
|
||||
- Use bluez-devel not bluez in the BuildRequires (bnc#436950)
|
||||
- List each backend individually so we know when one breaks
|
||||
- Add gvfs-obexftp-update-apis-3.patch for bluez 4.x
|
||||
* Tue Oct 21 2008 mboman@suse.de
|
||||
- Update to version 1.0.2:
|
||||
+ Make sure mount-added is always emitted when a mount operation is
|
||||
completed
|
||||
+ Crash fixes
|
||||
+ Set st_blocks to make du and ls -s work
|
||||
+ Stability fix with concurrent close and reads (made amarok2 crash)
|
||||
* Fri Oct 03 2008 mboman@suse.de
|
||||
- Update to version 1.0.1:
|
||||
+ bgo#547568 - gvfsd-trash crash due to race condition
|
||||
@ -210,9 +242,9 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ Fix crash while browsing ssh locations
|
||||
+ Fix --enable/disable-keyring configure switch
|
||||
+ Updated translations.
|
||||
* Wed Sep 17 2008 dmueller@suse.de
|
||||
* Tue Sep 16 2008 dmueller@suse.de
|
||||
- update buildrequires
|
||||
* Thu Sep 11 2008 maw@suse.de
|
||||
* Wed Sep 10 2008 maw@suse.de
|
||||
- Update to version 0.99.7.1:
|
||||
+ Revert to using powers of 10 instead of powers of 2 for
|
||||
display sizes; this means we will agree with printed sizes for
|
||||
@ -220,19 +252,19 @@ rm -rf $RPM_BUILD_ROOT
|
||||
report "64MB volume" instead of "61.7MB volume" as previously
|
||||
+ Bugs fixed: bgo#546971 and bgo#550858
|
||||
+ Updated translations.
|
||||
* Tue Sep 09 2008 kukuk@suse.de
|
||||
* Mon Sep 08 2008 kukuk@suse.de
|
||||
- Make obex-data-server really a recommends as requested initialy
|
||||
in bugzilla.
|
||||
* Tue Sep 02 2008 mboman@novell.com
|
||||
* Mon Sep 01 2008 mboman@novell.com
|
||||
- Update to version 0.99.6:
|
||||
+ Better cross-backend copy/move logic.
|
||||
+ Bugs fixed: bgo#548841, bgo#547133, bgo#538573, bgo#549253,
|
||||
bgo#549553, bgo#550100, bgo#529971, rh#460223
|
||||
+ Translation updates
|
||||
* Mon Sep 01 2008 ro@suse.de
|
||||
* Sun Aug 31 2008 ro@suse.de
|
||||
- add libexpat-devel to buildrequires so that obex backend
|
||||
is built
|
||||
* Fri Aug 29 2008 maw@suse.de
|
||||
* Thu Aug 28 2008 maw@suse.de
|
||||
- Update to version 0.93.5:
|
||||
+ Support und update serialization of GEmblem and GEmblemedIcon
|
||||
+ Add x-content/* support to daemon mounts
|
||||
@ -246,14 +278,14 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ Updated translations
|
||||
- Drop gvfs-bnc382172-home-trash-monitoring.patch, because it has
|
||||
been upstreamed (see bgo#509740 and bnc#382172).
|
||||
* Sat Aug 02 2008 maw@suse.de
|
||||
* Fri Aug 01 2008 maw@suse.de
|
||||
- Update to version 0.99.3:
|
||||
+ Move hal and gphoto volume monitors out of process
|
||||
+ Fix recursive copying
|
||||
+ Make the fuse daemon more reliable
|
||||
+ Many smaller bugfixes
|
||||
+ Updated translations.
|
||||
* Sat Jun 07 2008 maw@suse.de
|
||||
* Fri Jun 06 2008 maw@suse.de
|
||||
- Update to versino 0.99.1:
|
||||
+ Fix directory copy/delete problems
|
||||
+ Fuse daemon robustness fixes
|
||||
@ -266,14 +298,14 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ Many smaller bug fixes
|
||||
+ Updated translations
|
||||
- Remove upstreamed patch: gvfs-bnc368628-fuse-robustness.patch.
|
||||
* Sat May 24 2008 hpj@suse.de
|
||||
* Fri May 23 2008 hpj@suse.de
|
||||
- Merge gvfs-bgo531516-fuse-cleanup-when-killed.patch into
|
||||
gvfs-bnc368628-fuse-robustness.patch so as to avoid overlapping
|
||||
patches.
|
||||
- Add upstream fixes to thread locking and file handle life-cycles
|
||||
to gvfs-bnc368628-fuse-robustness.patch. Prevents more crashes.
|
||||
- Depend on libcdio-devel for building, so we get the CDDA backend.
|
||||
* Thu May 22 2008 hpj@suse.de
|
||||
* Wed May 21 2008 hpj@suse.de
|
||||
- Add gvfs-bgo531516-fuse-cleanup-when-killed.patch, which fixes
|
||||
the remaining issues covered by BNC #368628.
|
||||
* Tue May 13 2008 hpj@suse.de
|
||||
@ -282,7 +314,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* Thu May 08 2008 hpj@suse.de
|
||||
- Add gvfs-bnc368628-fuse-robustness.patch, which probably fixes
|
||||
BNC #368628.
|
||||
* Thu Apr 10 2008 maw@suse.de
|
||||
* Wed Apr 09 2008 maw@suse.de
|
||||
- Update to version 0.2.3:
|
||||
+ WebDAV: implement set_display_name
|
||||
+ WebDAV fixes
|
||||
@ -293,7 +325,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* Wed Apr 09 2008 sbrabec@suse.cz
|
||||
- Directory ownership of %%{_libdir}/gio/modules moved to glib2,
|
||||
where it logically belongs.
|
||||
* Wed Apr 02 2008 rodrigo@suse.de
|
||||
* Tue Apr 01 2008 rodrigo@suse.de
|
||||
- Update to version 0.2.2:
|
||||
* Respect the giomoduledir provided in gio package config file
|
||||
* Better mount icon and name for archive backend
|
||||
@ -305,13 +337,13 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* sftp: Kerberos support
|
||||
* smb: Port to new samba 3.2.0 API (backwards compat)
|
||||
* sftp: Handle overwrites correctly (was silent overwrite)
|
||||
* Wed Mar 26 2008 maw@suse.de
|
||||
* Tue Mar 25 2008 maw@suse.de
|
||||
- gvfs now recommends gvfs-backends (bnc#373477).
|
||||
* Thu Mar 20 2008 maw@suse.de
|
||||
* Wed Mar 19 2008 maw@suse.de
|
||||
- Reduce build requirements
|
||||
- Split out a shared library package, libgnomevfscommon0, and two
|
||||
module subpackages, gvfs-backends and gvfs-fuse.
|
||||
* Wed Mar 19 2008 jpr@suse.de
|
||||
* Tue Mar 18 2008 jpr@suse.de
|
||||
- Update to version 0.2.1
|
||||
* Added archive backend
|
||||
* Implement most of the async functions in GDaemonFile
|
||||
@ -325,7 +357,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* Enviroment variable to disable fuse backend at runtime
|
||||
* Mon Mar 17 2008 jpr@suse.de
|
||||
- Add recommends for obex-data-server (bnc #368776)
|
||||
* Fri Mar 14 2008 maw@suse.de
|
||||
* Thu Mar 13 2008 maw@suse.de
|
||||
- Update to version 0.2.0.1:
|
||||
+ Fix crashes
|
||||
+ Build and portability fixes
|
||||
@ -337,14 +369,14 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ obex: Give better error message on broken phones
|
||||
+ sftp: Allow setting permissions
|
||||
+ dav: Correct mount name, file icons and file types.
|
||||
* Wed Mar 05 2008 jpr@suse.de
|
||||
* Tue Mar 04 2008 jpr@suse.de
|
||||
- Update to version 0.1.11
|
||||
* Correctly free mounts
|
||||
* Disable debug log
|
||||
* Fix volume monitor change reporting
|
||||
* Fix timeout during automount
|
||||
- enable obex backend
|
||||
* Wed Mar 05 2008 maw@suse.de
|
||||
* Tue Mar 04 2008 maw@suse.de
|
||||
- Update to version 0.1.9:
|
||||
+ Added ftp backend
|
||||
+ Added obexftp backend
|
||||
@ -354,7 +386,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ Allow backends to specify uri details in .mount file
|
||||
+ Fix leaks and crashes
|
||||
+ Fix icon for audio cds.
|
||||
* Sat Mar 01 2008 jpr@suse.de
|
||||
* Fri Feb 29 2008 jpr@suse.de
|
||||
- Update to 0.1.8
|
||||
* Update for gio API changes
|
||||
* Add gphoto2 backend
|
||||
@ -371,10 +403,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||
* Add bash completion support for command line apps
|
||||
* Fix handling of blank cds and audio cds
|
||||
* Support port in sftp uris
|
||||
* Fri Feb 29 2008 jpr@suse.de
|
||||
* Thu Feb 28 2008 jpr@suse.de
|
||||
- Move the gio modules into the main package (#358748)
|
||||
- Enable gconf backend
|
||||
* Tue Feb 19 2008 maw@suse.de
|
||||
* Mon Feb 18 2008 maw@suse.de
|
||||
- Update to version 0.1.7:
|
||||
+ Update for gio API changes
|
||||
+ Add gconf based implementation of
|
||||
@ -387,9 +419,9 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ Pick up cdrom icons from autorun.inf
|
||||
+ Add "filesystem" file to computer://
|
||||
+ Fix renaming in sftp and smb.
|
||||
* Sat Feb 09 2008 maw@suse.de
|
||||
* Fri Feb 08 2008 maw@suse.de
|
||||
- Recomend fuse (bnc#359928).
|
||||
* Thu Jan 31 2008 maw@suse.de
|
||||
* Wed Jan 30 2008 maw@suse.de
|
||||
- Update to version 0.1.6:
|
||||
+ Updates to work with more recent glib
|
||||
+ Fix sftp error handling on reading directories
|
||||
@ -398,5 +430,5 @@ rm -rf $RPM_BUILD_ROOT
|
||||
+ hal: Don't show drives if all volumes are hidden
|
||||
+ Enable translations
|
||||
+ Plus some files that were missing in 0.1.5.
|
||||
* Wed Jan 23 2008 maw@suse.de
|
||||
* Tue Jan 22 2008 maw@suse.de
|
||||
- Initial package, version 0.1.4.
|
||||
|
Loading…
Reference in New Issue
Block a user