3 %bcond_without doc # docs building and packaging
4 %bcond_without admin # admin backend
5 %bcond_without afc # AFC backend
6 %bcond_without afp # AFP support
7 %bcond_without archive # archive support
8 %bcond_without avahi # DNS-SD / Avahi support
9 %bcond_without bluray # bluray metadata support
10 %bcond_without cdda # CDDA backend
11 %bcond_without fuse # FUSE support
12 %bcond_without goa # GOA backend (needed also for google)
13 %bcond_without google # Google backend
14 %bcond_without gphoto2 # gphoto2 support
15 %bcond_without gudev # gudev support (needed for gphoto2, mtp, udisks2)
16 %bcond_without http # HTTP/DAV backend
17 %bcond_without keyring # GNOME Keyring support in gvfs and udisks plugin
18 %bcond_without mtp # MTP support
19 %bcond_without nfs # NFS support
20 %bcond_without samba # SMB support
21 %bcond_without systemd # libsystemd-login support
22 %bcond_without udisks2 # libudisks2 support
25 %undefine with_gphoto2
27 %undefine with_udisks2
37 Summary: gvfs - userspace virtual filesystem
38 Summary(pl.UTF-8): gvfs - wirtualny system plików w przestrzeni użytkownika
44 Source0: https://download.gnome.org/sources/gvfs/1.52/%{name}-%{version}.tar.xz
45 # Source0-md5: 87c087d868352e702e5dcaf42eb729ea
46 URL: https://wiki.gnome.org/Projects/gvfs
47 %{?with_avahi:BuildRequires: avahi-devel >= 0.6.22}
48 %{?with_avahi:BuildRequires: avahi-glib-devel >= 0.6.22}
49 BuildRequires: dbus-devel
50 %{?with_doc:BuildRequires: docbook-dtd42-xml}
51 %{?with_doc:BuildRequires: docbook-style-xsl}
52 BuildRequires: gcr-devel >= 3
53 BuildRequires: gettext-tools >= 0.19.4
54 BuildRequires: glib2-devel >= 1:2.70.0
55 %{?with_goa:BuildRequires: gnome-online-accounts-devel >= 3.18.0}
56 BuildRequires: gsettings-desktop-schemas-devel >= 3.33.0
57 BuildRequires: gtk+3-devel >= 3.0
58 %{?with_archive:BuildRequires: libarchive-devel >= 3.0.22}
59 %{?with_bluray:BuildRequires: libbluray-devel}
60 %{?with_admin:BuildRequires: libcap-devel}
61 %{?with_cdda:BuildRequires: libcdio-paranoia-devel >= 0.78.2}
62 %{?with_fuse:BuildRequires: libfuse3-devel >= 3.0.0}
63 BuildRequires: libgcrypt-devel >= 1.2.2
64 %{?with_google:BuildRequires: libgdata-devel >= 0.18.0}
65 %{?with_gphoto2:BuildRequires: libgphoto2-devel >= 2.5.0}
66 %{?with_afc:BuildRequires: libimobiledevice-devel >= 1.2.0}
67 %{?with_mtp:BuildRequires: libmtp-devel >= 1.1.21}
68 %{?with_nfs:BuildRequires: libnfs-devel >= 1.9.8}
69 %{?with_afc:BuildRequires: libplist-devel >= 0.15}
70 %{?with_keyring:BuildRequires: libsecret-devel}
71 %{?with_samba:BuildRequires: libsmbclient-devel >= 3.4}
72 %{?with_http:BuildRequires: libsoup3-devel >= 3.0.0}
73 BuildRequires: libtool >= 2:2.2
74 BuildRequires: libusb-devel >= 1.0.21
75 BuildRequires: libxml2-devel >= 1:2.6.31
76 %{?with_doc:BuildRequires: libxslt-progs}
77 BuildRequires: meson >= 0.57.0
78 BuildRequires: ninja >= 1.5
79 # find_program('ssh') for sftp
80 BuildRequires: openssh-clients
81 BuildRequires: pkgconfig
82 %{?with_admin:BuildRequires: polkit-devel >= 0.114}
83 BuildRequires: rpmbuild(macros) >= 1.736
84 %{?with_systemd:BuildRequires: systemd-devel >= 1:206}
85 BuildRequires: tar >= 1:1.22
86 BuildRequires: udev-devel >= 1:138
87 %{?with_gudev:BuildRequires: udev-glib-devel >= 1:147}
88 %{?with_udisks2:BuildRequires: udisks2-devel >= 1.97.0}
90 Requires(post,postun): glib2 >= 1:2.70.0
91 Requires: %{name}-libs = %{version}-%{release}
92 %{?with_avahi:Requires: avahi-glib >= 0.6.22}
93 Requires: gsettings-desktop-schemas >= 3.33.0
94 %{?with_cdda:Requires: libcdio-paranoia >= 0.78.2}
95 %{?with_nfs:Requires: libnfs >= 1.9.8}
96 %{?with_http:Requires: libsoup3 >= 3.0.0}
97 Requires: libusb >= 1.0.21
98 Requires: libxml2 >= 1:2.6.31
99 Requires: polkit-libs >= 0.114
100 %{?with_gudev:Requires: udev-glib >= 1:147}
101 Requires: udev-libs >= 1:138
102 %{?with_udisks2:Requires: udisks2 >= 1.97.0}
103 %{?with_afc:Suggests: %{name}-afc}
104 %{?with_afp:Suggests: %{name}-afp}
105 %{?with_archive:Suggests: %{name}-archive}
106 %{?with_fuse:Suggests: %{name}-fuse}
107 %{?with_goa:Suggests: %{name}-goa}
108 %{?with_google:Suggests: %{name}-google}
109 %{?with_gphoto2:Suggests: %{name}-gphoto2}
110 %{?with_mtp:Suggests: %{name}-mtp}
111 %{?with_samba:Suggests: %{name}-smb}
112 Obsoletes: bash-completion-gvfs < 1.32
113 Obsoletes: gnome-mount <= 0.8
114 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
116 %define _libexecdir %{_libdir}/%{name}
119 gvfs is a userspace virtual filesystem where mount runs as a separate
120 processes which you talk to via D-BUS. It contains a gio module that
121 seamlessly adds gvfs support to all applications using the gio API.
123 %description -l pl.UTF-8
124 gvfs to wirtualny system plik w przestrzeni użytkownika. Montowanie w
125 nim działa jako oddzielny proces, z którym komunikacja odbywa się
126 przez D-BUS. Zawiera moduł gio dodający w sposób przezroczysty obsługę
127 gfvs-a do wszystkich aplikacji używających API gio.
130 Summary: Common GVFS shared libraries
131 Summary(pl.UTF-8): Wspólne biblioteki współdzielone GVFS
133 Requires: glib2 >= 1:2.70.0
134 Conflicts: gvfs < 1.22.3-2
137 Common GVFS (private) shared libraries.
139 %description libs -l pl.UTF-8
140 Wspólne (prywatne) biblioteki współdzielone GVFS.
143 Summary: Header files for gvfs library
144 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki gvfs
145 Group: Development/Libraries
146 Requires: %{name}-libs = %{version}-%{release}
147 Requires: glib2-devel >= 1:2.70.0
150 Header files for gvfs library.
152 %description devel -l pl.UTF-8
153 Pliki nagłówkowe biblioteki gvfs.
156 Summary: AFC support for gvfs
157 Summary(pl.UTF-8): Obsługa AFC dla gvfs
159 Requires: %{name} = %{version}-%{release}
160 Requires: libimobiledevice >= 1.2.0
161 Requires: libplist >= 0.15
165 This package provides support for reading files on mobile devices
166 including phones and music players to applications using gvfs.
168 %description afc -l pl.UTF-8
169 Ten pakiet zapewnia obsługę odczytu plików na urządzeniach
170 przenośnych, w tym telefonach i odtwarzaczach muzyki dla aplikacji
171 wykorzystujących gvfs.
174 Summary: AFP support for gvfs
175 Summary(pl.UTF-8): Obsługa AFP dla gvfs
177 Requires: %{name} = %{version}-%{release}
180 This package provides support for reading and writing files on Mac OS
181 X and original Mac OS network shares via Apple Filing Protocol to
182 applications using gvfs.
184 %description afp -l pl.UTF-8
185 Ten pakiet zapewnia obsługę odczytu i zapisu plików na udziałach
186 sieciowych Mac OS X oraz oryginalnego Mac OS poprzez Apple Filing
187 Protocol dla aplikacji wykorzystujących gvfs.
190 Summary: Archiving support for gvfs
191 Summary(pl.UTF-8): Obsługa archiwów dla gvfs
193 Requires: %{name} = %{version}-%{release}
194 Requires: libarchive >= 3.0.22
197 This package provides support for accessing files inside Zip and Tar
198 archives, as well as ISO images, to applications using gvfs.
200 %description archive -l pl.UTF-8
201 Ten pakiet zapewnia dostęp do plików wewnątrz archiwów Zip i Tar oraz
202 obrazów ISO dla aplikacji wykorzystujących gvfs.
205 Summary: FUSE support for gvfs
206 Summary(pl.UTF-8): Obsługa FUSE dla gvfs
208 Requires: %{name} = %{version}-%{release}
212 This package provides support for applications not using gio to access
213 the gvfs filesystems.
215 %description fuse -l pl.UTF-8
216 Ten pakiet zapewnia obsługę aplikacji nie używających gio do dostępu
217 do systemów plików gvfs.
220 Summary: GOA support for gvfs
221 Summary(pl.UTF-8): Obsługa GOA dla gvfs
223 Requires: %{name} = %{version}-%{release}
224 Requires: gnome-online-accounts-libs >= 3.18.0
227 This package provides seamless integration with gnome-online-accounts
230 %description goa -l pl.UTF-8
231 Ten pakiet zapewnia przezroczystą integrację z usługami plikowymi
232 gnome-online-accounts.
235 Summary: Google Drive support for gvfs
236 Summary(pl.UTF-8): Obsługa Google Drive dla gvfs
238 Requires: %{name} = %{version}-%{release}
239 Requires: gnome-online-accounts-libs >= 3.18.0
240 Requires: libgdata >= 0.18.0
243 This package provides support for Google Drive to applications using
246 %description google -l pl.UTF-8
247 Ten pakiet zapewnia obsługę Google Drive dla aplikacji
248 wykorzystujących gvfs.
251 Summary: gphoto2 support for gvfs
252 Summary(pl.UTF-8): Obsługa gphoto2 dla gvfs
254 Requires: %{name} = %{version}-%{release}
257 This package provides support for reading and writing files on PTP
258 based cameras (Picture Transfer Protocol) and MTP based media players
259 (Media Transfer Protocol) to applications using gvfs.
261 %description gphoto2 -l pl.UTF-8
262 Ten pakiet zapewnia obsługę odczytu i zapisu plików na aparatach
263 obsługujących protokół PTP (Picture Transfer Protocol) oraz
264 odtwarzaczach multimedialnych obsługujących protokół MTP (Media
265 Transfer Protocol) dla aplikacji wykorzystujących gvfs.
268 Summary: MTP support for gvfs
269 Summary(pl.UTF-8): Obsługa MTP dla gvfs
271 Requires: %{name} = %{version}-%{release}
272 Requires: libmtp >= 1.1.21
273 Suggests: udev-libmtp
276 This package provides support for reading and writing files on MTP
277 based devices (Media Transfer Protocol) to applications using gvfs.
279 %description mtp -l pl.UTF-8
280 Ten pakiet zapewnia obsługę odczytu i zapisu plików na urządzeniach
281 obsługujących protokół MTP (Media Transfer Protocol) dla aplikacji
282 wykorzystujących gvfs.
285 Summary: Windows fileshare support for gvfs
286 Summary(pl.UTF-8): Obsługa udziałów sieciowych Windows dla gvfs
288 Requires: %{name} = %{version}-%{release}
291 This package provides support for reading and writing files on Windows
292 shares (SMB) to applications using gvfs.
294 %description smb -l pl.UTF-8
295 Ten pakiet zapewnia obsługę odczytu i zapisu plików na udziałach
296 sieciowych Windows (SMB) dla aplikacji wykorzystujących gvfs.
303 -Dadmin=%{?with_admin:true}%{!?with_admin:false} \
304 -Dafc=%{?with_afc:true}%{!?with_afc:false} \
305 -Dafp=%{?with_afp:true}%{!?with_afp:false} \
306 -Darchive=%{?with_archive:true}%{!?with_archive:false} \
307 -Ddnssd=%{?with_avahi:true}%{!?with_avahi:false} \
308 -Dbluray=%{?with_bluray:true}%{!?with_bluray:false} \
309 -Dcdda=%{?with_cdda:true}%{!?with_cdda:false} \
310 -Dfuse=%{?with_fuse:true}%{!?with_fuse:false} \
311 -Dgoa=%{?with_goa:true}%{!?with_goa:false} \
312 -Dgoogle=%{?with_google:true}%{!?with_google:false} \
313 -Dgphoto2=%{?with_gphoto2:true}%{!?with_gphoto2:false} \
314 -Dgudev=%{?with_gudev:true}%{!?with_gudev:false} \
315 -Dhttp=%{?with_http:true}%{!?with_http:false} \
316 -Dkeyring=%{?with_keyring:true}%{!?with_keyring:false} \
317 -Dmtp=%{?with_mtp:true}%{!?with_mtp:false} \
318 -Dman=%{?with_doc:true}%{!?with_doc:false} \
319 -Dnfs=%{?with_nfs:true}%{!?with_nfs:false} \
320 -Dsmb=%{?with_samba:true}%{!?with_samba:false} \
321 -Dlogind=%{?with_systemd:true}%{!?with_systemd:false} \
322 -Dudisks2=%{?with_udisks2:true}%{!?with_udisks2:false}
324 %ninja_build -C build
327 rm -rf $RPM_BUILD_ROOT
329 install -d $RPM_BUILD_ROOT{%{bash_compdir},%{_datadir}/gvfs/remote-volume-monitors}
330 %ninja_install -C build
332 # not supported by glibc yet
333 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ie
338 rm -rf $RPM_BUILD_ROOT
340 # Reload .mount files
341 %define reload_mount_files killall -USR1 gvfsd >/dev/null 2>&1 || :;
344 %glib_compile_schemas
346 %{_bindir}/gio-querymodules %{_libdir}/gio/modules
350 if [ "$1" = "0" ]; then
351 %glib_compile_schemas
354 %{_bindir}/gio-querymodules %{_libdir}/gio/modules
357 # Reload .mount files when single subpackage is installed:
377 %glib_compile_schemas
381 if [ "$1" = "0" ]; then
382 %glib_compile_schemas
386 %defattr(644,root,root,755)
387 %doc CONTRIBUTING.md NEWS README.md
388 %attr(755,root,root) %{_libdir}/gio/modules/libgioremote-volume-monitor.so
389 %attr(755,root,root) %{_libdir}/gio/modules/libgvfsdbus.so
390 #%dir %{_libexecdir} # equal %{_libdir}/%{name}, packaged in -libs
391 %attr(755,root,root) %{_libexecdir}/gvfsd
392 %attr(755,root,root) %{_libexecdir}/gvfsd-burn
393 %attr(755,root,root) %{_libexecdir}/gvfsd-computer
394 %attr(755,root,root) %{_libexecdir}/gvfsd-ftp
395 %attr(755,root,root) %{_libexecdir}/gvfsd-localtest
396 %attr(755,root,root) %{_libexecdir}/gvfsd-metadata
397 %attr(755,root,root) %{_libexecdir}/gvfsd-network
398 %attr(755,root,root) %{_libexecdir}/gvfsd-sftp
399 %attr(755,root,root) %{_libexecdir}/gvfsd-trash
400 %{_datadir}/dbus-1/services/org.gtk.vfs.Daemon.service
401 %{_datadir}/dbus-1/services/org.gtk.vfs.Metadata.service
402 %dir %{_datadir}/gvfs
403 %dir %{_datadir}/gvfs/mounts
404 %dir %{_datadir}/gvfs/remote-volume-monitors
405 %{_datadir}/gvfs/mounts/burn.mount
406 %{_datadir}/gvfs/mounts/computer.mount
407 %{_datadir}/gvfs/mounts/ftp.mount
408 %{_datadir}/gvfs/mounts/ftpis.mount
409 %{_datadir}/gvfs/mounts/ftps.mount
410 %{_datadir}/gvfs/mounts/localtest.mount
411 %{_datadir}/gvfs/mounts/network.mount
412 %{_datadir}/gvfs/mounts/sftp.mount
413 %{_datadir}/gvfs/mounts/trash.mount
414 %{_datadir}/glib-2.0/schemas/org.gnome.system.gvfs.enums.xml
415 %{systemduserunitdir}/gvfs-daemon.service
416 %{systemduserunitdir}/gvfs-metadata.service
420 %attr(755,root,root) %{_libexecdir}/gvfsd-admin
421 %{_datadir}/gvfs/mounts/admin.mount
422 %{_datadir}/polkit-1/actions/org.gtk.vfs.file-operations.policy
423 %{_datadir}/polkit-1/rules.d/org.gtk.vfs.file-operations.rules
428 %attr(755,root,root) %{_libexecdir}/gvfsd-cdda
429 %{_datadir}/gvfs/mounts/cdda.mount
434 %attr(755,root,root) %{_libexecdir}/gvfsd-dav
435 %attr(755,root,root) %{_libexecdir}/gvfsd-http
436 %{_datadir}/gvfs/mounts/http.mount
437 %{_datadir}/gvfs/mounts/dav.mount
438 %{?with_avahi:%{_datadir}/gvfs/mounts/dav+sd.mount}
442 %attr(755,root,root) %{_libexecdir}/gvfsd-recent
443 %{_datadir}/gvfs/mounts/recent.mount
447 %attr(755,root,root) %{_libexecdir}/gvfsd-nfs
448 %{_datadir}/gvfs/mounts/nfs.mount
453 %attr(755,root,root) %{_libexecdir}/gvfs-udisks2-volume-monitor
454 %{_datadir}/dbus-1/services/org.gtk.vfs.UDisks2VolumeMonitor.service
455 %{_datadir}/gvfs/remote-volume-monitors/udisks2.monitor
456 %{systemduserunitdir}/gvfs-udisks2-volume-monitor.service
461 %attr(755,root,root) %{_libexecdir}/gvfsd-dnssd
462 %{_datadir}/gvfs/mounts/dns-sd.mount
463 %{_datadir}/GConf/gsettings/gvfs-dns-sd.convert
464 %{_datadir}/glib-2.0/schemas/org.gnome.system.dns_sd.gschema.xml
468 %{_mandir}/man1/gvfsd.1*
469 %{_mandir}/man1/gvfsd-metadata.1*
470 %{_mandir}/man7/gvfs.7*
474 %defattr(644,root,root,755)
475 %dir %{_libdir}/%{name}
476 %attr(755,root,root) %{_libdir}/%{name}/libgvfscommon.so
477 %attr(755,root,root) %{_libdir}/%{name}/libgvfsdaemon.so
480 %defattr(644,root,root,755)
481 %{_includedir}/gvfs-client
485 %defattr(644,root,root,755)
486 %attr(755,root,root) %{_libexecdir}/gvfs-afc-volume-monitor
487 %attr(755,root,root) %{_libexecdir}/gvfsd-afc
488 %{_datadir}/dbus-1/services/org.gtk.vfs.AfcVolumeMonitor.service
489 %{_datadir}/gvfs/mounts/afc.mount
490 %{_datadir}/gvfs/remote-volume-monitors/afc.monitor
491 %{systemduserunitdir}/gvfs-afc-volume-monitor.service
496 %defattr(644,root,root,755)
497 %attr(755,root,root) %{_libexecdir}/gvfsd-afp
498 %attr(755,root,root) %{_libexecdir}/gvfsd-afp-browse
499 %{_datadir}/gvfs/mounts/afp-browse.mount
500 %{_datadir}/gvfs/mounts/afp.mount
505 %defattr(644,root,root,755)
506 %attr(755,root,root) %{_libexecdir}/gvfsd-archive
507 %{_datadir}/gvfs/mounts/archive.mount
512 %defattr(644,root,root,755)
513 %attr(755,root,root) %{_libexecdir}/gvfsd-fuse
515 %{_mandir}/man1/gvfsd-fuse.1*
518 # FIXME: reusing USE_LIBSYSTEMD_LOGIN as systemd has no universal header or pkg-config file
519 %{systemdtmpfilesdir}/gvfsd-fuse-tmpfiles.conf
525 %defattr(644,root,root,755)
526 %attr(755,root,root) %{_libexecdir}/gvfs-goa-volume-monitor
527 %{_datadir}/dbus-1/services/org.gtk.vfs.GoaVolumeMonitor.service
528 %{_datadir}/gvfs/remote-volume-monitors/goa.monitor
529 %{systemduserunitdir}/gvfs-goa-volume-monitor.service
534 %defattr(644,root,root,755)
535 %attr(755,root,root) %{_libexecdir}/gvfsd-google
536 %{_datadir}/gvfs/mounts/google.mount
541 %defattr(644,root,root,755)
542 %attr(755,root,root) %{_libexecdir}/gvfs-gphoto2-volume-monitor
543 %attr(755,root,root) %{_libexecdir}/gvfsd-gphoto2
544 %{_datadir}/dbus-1/services/org.gtk.vfs.GPhoto2VolumeMonitor.service
545 %{_datadir}/gvfs/mounts/gphoto2.mount
546 %{_datadir}/gvfs/remote-volume-monitors/gphoto2.monitor
547 %{systemduserunitdir}/gvfs-gphoto2-volume-monitor.service
552 %defattr(644,root,root,755)
553 %attr(755,root,root) %{_libexecdir}/gvfs-mtp-volume-monitor
554 %attr(755,root,root) %{_libexecdir}/gvfsd-mtp
555 %{_datadir}/dbus-1/services/org.gtk.vfs.MTPVolumeMonitor.service
556 %{_datadir}/gvfs/mounts/mtp.mount
557 %{_datadir}/gvfs/remote-volume-monitors/mtp.monitor
558 %{systemduserunitdir}/gvfs-mtp-volume-monitor.service
563 %defattr(644,root,root,755)
564 %attr(755,root,root) %{_libexecdir}/gvfsd-smb
565 %attr(755,root,root) %{_libexecdir}/gvfsd-smb-browse
566 %{_datadir}/gvfs/mounts/smb-browse.mount
567 %{_datadir}/gvfs/mounts/smb.mount
568 %{_datadir}/glib-2.0/schemas/org.gnome.system.smb.gschema.xml
569 %{_datadir}/GConf/gsettings/gvfs-smb.convert