[packages/gvfs] - added patch for libnfs 6; release 3

qboosh qboosh at pld-linux.org
Tue Jul 22 18:45:24 CEST 2025


commit 98d646aea7b325e459861fb619d904caf9e7dae4
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Jul 22 18:47:00 2025 +0200

    - added patch for libnfs 6; release 3

 gvfs-libnfs.patch | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 gvfs.spec         |   8 ++--
 2 files changed, 127 insertions(+), 3 deletions(-)
---
diff --git a/gvfs.spec b/gvfs.spec
index 396bcbe..1816a63 100644
--- a/gvfs.spec
+++ b/gvfs.spec
@@ -40,11 +40,12 @@ Summary:	gvfs - userspace virtual filesystem
 Summary(pl.UTF-8):	gvfs - wirtualny system plików w przestrzeni użytkownika
 Name:		gvfs
 Version:	1.56.1
-Release:	2
+Release:	3
 License:	LGPL v2+
 Group:		Libraries
 Source0:	https://download.gnome.org/sources/gvfs/1.56/%{name}-%{version}.tar.xz
 # Source0-md5:	5ba12cd02b17c058aa71adc39c5eb6cf
+Patch0:		%{name}-libnfs.patch
 URL:		https://wiki.gnome.org/Projects/gvfs
 %{?with_avahi:BuildRequires:	avahi-devel >= 0.6.22}
 %{?with_avahi:BuildRequires:	avahi-glib-devel >= 0.6.22}
@@ -69,7 +70,7 @@ BuildRequires:	libgcrypt-devel >= 1.2.2
 %{?with_gphoto2:BuildRequires:	libgphoto2-devel >= 2.5.0}
 %{?with_afc:BuildRequires:	libimobiledevice-devel >= 1.2.0}
 %{?with_mtp:BuildRequires:	libmtp-devel >= 1.1.21}
-%{?with_nfs:BuildRequires:	libnfs-devel >= 1.9.8}
+%{?with_nfs:BuildRequires:	libnfs-devel >= 6.0.0}
 %{?with_afc:BuildRequires:	libplist-devel >= 0.15}
 %{?with_keyring:BuildRequires:	libsecret-devel}
 %{?with_samba:BuildRequires:	libsmbclient-devel >= 3.4}
@@ -97,7 +98,7 @@ Requires:	%{name}-libs = %{version}-%{release}
 %{?with_avahi:Requires:	avahi-glib >= 0.6.22}
 Requires:	gsettings-desktop-schemas >= 3.33.0
 %{?with_cdda:Requires:	libcdio-paranoia >= 0.78.2}
-%{?with_nfs:Requires:	libnfs >= 1.9.8}
+%{?with_nfs:Requires:	libnfs >= 6.0.0}
 %{?with_http:Requires:	libsoup3 >= 3.0.0}
 Requires:	libusb >= 1.0.21
 Requires:	libxml2 >= 1:2.6.31
@@ -317,6 +318,7 @@ sieciowych Windows (SMB) dla aplikacji wykorzystujących gvfs.
 
 %prep
 %setup -q
+%patch -P0 -p1
 
 %build
 %meson \
diff --git a/gvfs-libnfs.patch b/gvfs-libnfs.patch
new file mode 100644
index 0000000..7a89f31
--- /dev/null
+++ b/gvfs-libnfs.patch
@@ -0,0 +1,122 @@
+--- gvfs-1.56.1/daemon/gvfsbackendnfs.c.orig	2025-07-22 18:10:13.275258131 +0200
++++ gvfs-1.56.1/daemon/gvfsbackendnfs.c	2025-07-22 18:10:19.281962029 +0200
+@@ -427,7 +427,7 @@ try_read (GVfsBackend *backend,
+   GVfsBackendNfs *op_backend = G_VFS_BACKEND_NFS (backend);
+   struct nfsfh *fh = _handle;
+ 
+-  nfs_read_async (op_backend->ctx, fh, bytes_requested, read_cb, job);
++  nfs_read_async (op_backend->ctx, fh, buffer, bytes_requested, read_cb, job);
+   return TRUE;
+ }
+ 
+@@ -755,7 +755,7 @@ try_append_to (GVfsBackend *backend,
+ {
+   GVfsBackendNfs *op_backend = G_VFS_BACKEND_NFS (backend);
+ 
+-  nfs_create_async (op_backend->ctx,
++  nfs_open2_async (op_backend->ctx,
+                     filename,
+                     O_APPEND,
+                     (flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+@@ -805,7 +805,7 @@ copy_write_cb (int err,
+   CopyHandle *handle = private_data;
+ 
+   if (err > 0)
+-    nfs_read_async (ctx, handle->srcfh, COPY_BLKSIZE, copy_read_cb, handle);
++    nfs_read_async (ctx, handle->srcfh, data, COPY_BLKSIZE, copy_read_cb, handle);
+   else
+     copy_handle_complete (ctx, handle, FALSE);
+ }
+@@ -818,7 +818,7 @@ copy_read_cb (int err, struct nfs_contex
+   if (err == 0)
+     copy_handle_complete (ctx, handle, TRUE);
+   else if (err > 0)
+-    nfs_write_async (ctx, handle->destfh, err, data, copy_write_cb, handle);
++    nfs_write_async (ctx, handle->destfh, data, err, copy_write_cb, handle);
+   else
+     copy_handle_complete (ctx, handle, FALSE);
+ }
+@@ -834,7 +834,7 @@ copy_open_dest_cb (int err,
+     {
+       handle->destfh = data;
+ 
+-      nfs_read_async (ctx, handle->srcfh, COPY_BLKSIZE, copy_read_cb, handle);
++      nfs_read_async (ctx, handle->srcfh, data, COPY_BLKSIZE, copy_read_cb, handle);
+     }
+   else
+     {
+@@ -852,8 +852,8 @@ copy_open_source_cb (int err,
+   if (err == 0)
+     {
+       handle->srcfh = data;
+-      nfs_create_async (ctx,
+-                        handle->dest, O_TRUNC, handle->mode & 0777,
++      nfs_creat_async (ctx,
++                        handle->dest, handle->mode & 0777,
+                         copy_open_dest_cb, handle);
+       g_free (handle->dest);
+     }
+@@ -935,9 +935,8 @@ replace_backup_chown_cb (int err,
+       GVfsJobOpenForWrite *op_job = G_VFS_JOB_OPEN_FOR_WRITE (job);
+       GVfsBackendNfs *op_backend = G_VFS_BACKEND_NFS (op_job->backend);
+ 
+-      nfs_create_async (op_backend->ctx,
++      nfs_creat_async (op_backend->ctx,
+                         op_job->filename,
+-                        O_TRUNC,
+                         (op_job->flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+                         replace_trunc_cb, handle);
+     }
+@@ -1019,9 +1018,8 @@ replace_truncate (struct nfs_context *ct
+     }
+   else
+     {
+-      nfs_create_async (ctx,
++      nfs_creat_async (ctx,
+                         op_job->filename,
+-                        O_TRUNC,
+                         (op_job->flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+                         replace_trunc_cb, handle);
+     }
+@@ -1211,9 +1209,8 @@ replace_stat_cb (int err,
+               handle->tempname = g_build_filename (dirname, basename, NULL);
+               g_free (dirname);
+ 
+-              nfs_create_async (ctx,
++              nfs_creat_async (ctx,
+                                 handle->tempname,
+-                                O_EXCL,
+                                 (op_job->flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+                                 replace_temp_cb, handle);
+             }
+@@ -1299,9 +1296,8 @@ try_replace (GVfsBackend *backend,
+ {
+   GVfsBackendNfs *op_backend = G_VFS_BACKEND_NFS (backend);
+ 
+-  nfs_create_async (op_backend->ctx,
++  nfs_creat_async (op_backend->ctx,
+                     filename,
+-                    O_EXCL,
+                     (flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+                     replace_create_cb, job);
+   return TRUE;
+@@ -1337,9 +1333,8 @@ try_create (GVfsBackend *backend,
+ {
+   GVfsBackendNfs *op_backend = G_VFS_BACKEND_NFS (backend);
+ 
+-  nfs_create_async (op_backend->ctx,
++  nfs_creat_async (op_backend->ctx,
+                     filename,
+-                    O_EXCL,
+                     (flags & G_FILE_CREATE_PRIVATE ? 0600 : 0666) & ~op_backend->umask,
+                     create_cb, job);
+   return TRUE;
+@@ -1372,7 +1367,7 @@ try_write (GVfsBackend *backend,
+   WriteHandle *handle = _handle;
+   struct nfsfh *fh = handle->fh;
+ 
+-  nfs_write_async (op_backend->ctx, fh, buffer_size, buffer, write_cb, job);
++  nfs_write_async (op_backend->ctx, fh, buffer, buffer_size, write_cb, job);
+   return TRUE;
+ }
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gvfs.git/commitdiff/98d646aea7b325e459861fb619d904caf9e7dae4



More information about the pld-cvs-commit mailing list