archrelease: copy trunk to extra-x86_64
[arch-packages.git] / gvfs / repos / extra-x86_64 / PKGBUILD
blob419f74c793c0ca037867b9ef93ded0c9f0c5f440
1 # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
2 # Contributor: Jan de Groot <jgc@archlinux.org>
4 pkgbase=gvfs
5 pkgname=(
6   gvfs
7   gvfs-{smb,afc,gphoto2,goa,mtp,nfs,google}
9 pkgver=1.50.4
10 pkgrel=1
11 pkgdesc="Virtual filesystem implementation for GIO"
12 url="https://wiki.gnome.org/Projects/gvfs"
13 arch=(x86_64)
14 license=(LGPL)
15 depends=(
16   avahi
17   dconf
18   fuse3
19   gcr
20   gsettings-desktop-schemas
21   libarchive
22   libbluray
23   libcdio-paranoia
24   libgudev
25   libsecret
26   libsoup3
27   psmisc
28   udisks2
30 makedepends=(
31   dbus
32   docbook-xsl
33   git
34   gnome-online-accounts
35   gtk-doc
36   gtk3
37   libgdata
38   libgphoto2
39   libimobiledevice
40   libmtp
41   libnfs
42   meson
43   openssh
44   python
45   smbclient
47 groups=(gnome)
48 _commit=e1d4d719af002a603abb440c5ab3b0d281757d74  # tags/1.50.4^0
49 source=(
50   "git+https://gitlab.gnome.org/GNOME/gvfs.git#commit=$_commit"
51   gvfsd.hook
53 b2sums=('SKIP'
54         '08a830600964d2c896d7f107d9558053a32eb6b9166433d6e29b58d4c38e318cbb7fdf7b8230cf72d433df65f4698b9ad86624bf7d3c30c883db325d51335189')
56 pkgver() {
57   cd gvfs
58   git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
61 prepare() {
62   cd gvfs
65 build() {
66   arch-meson gvfs build -D man=true
67   meson compile -C build
70 check() {
71   meson test -C build --print-errorlogs
74 _pick() {
75   local p="$1" f d; shift
76   for f; do
77     d="$srcdir/$p/${f#$pkgdir/}"
78     mkdir -p "$(dirname "$d")"
79     mv "$f" "$d"
80     rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
81   done
84 package_gvfs() {
85   replaces=(gvfs-{obexftp,afp})
86   optdepends=(
87     'gtk3: Recent files support'
88     'gvfs-afc: AFC (mobile devices) support'
89     'gvfs-goa: gnome-online-accounts (e.g. OwnCloud) support'
90     'gvfs-google: Google Drive support'
91     'gvfs-gphoto2: gphoto2 (PTP camera/MTP media player) support'
92     'gvfs-mtp: MTP device support'
93     'gvfs-nfs: NFS support'
94     'gvfs-smb: SMB/CIFS (Windows client) support'
95   )
97   meson install -C build --destdir "$pkgdir"
99   ( cd "$pkgdir"
101     _pick smb \
102       usr/lib/gvfsd-smb{,-browse} \
103       usr/share/GConf/gsettings/gvfs-smb.convert \
104       usr/share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml \
105       usr/share/gvfs/mounts/smb{,-browse}.mount
107     _pick afc \
108       usr/lib/gvfs{-afc-volume-monitor,d-afc} \
109       usr/lib/systemd/user/gvfs-afc-volume-monitor.service \
110       usr/share/dbus-1/services/org.gtk.vfs.AfcVolumeMonitor.service \
111       usr/share/gvfs/mounts/afc.mount \
112       usr/share/gvfs/remote-volume-monitors/afc.monitor
114     _pick gphoto2 \
115       usr/lib/gvfs{-gphoto2-volume-monitor,d-gphoto2} \
116       usr/lib/systemd/user/gvfs-gphoto2-volume-monitor.service \
117       usr/share/dbus-1/services/org.gtk.vfs.GPhoto2VolumeMonitor.service \
118       usr/share/gvfs/mounts/gphoto2.mount \
119       usr/share/gvfs/remote-volume-monitors/gphoto2.monitor
121     _pick mtp \
122       usr/lib/gvfs{-mtp-volume-monitor,d-mtp} \
123       usr/lib/systemd/user/gvfs-mtp-volume-monitor.service \
124       usr/share/dbus-1/services/org.gtk.vfs.MTPVolumeMonitor.service \
125       usr/share/gvfs/mounts/mtp.mount \
126       usr/share/gvfs/remote-volume-monitors/mtp.monitor
128     _pick goa \
129       usr/lib/gvfs-goa-volume-monitor \
130       usr/lib/systemd/user/gvfs-goa-volume-monitor.service \
131       usr/share/dbus-1/services/org.gtk.vfs.GoaVolumeMonitor.service \
132       usr/share/gvfs/remote-volume-monitors/goa.monitor
134     _pick nfs \
135       usr/lib/gvfsd-nfs \
136       usr/share/gvfs/mounts/nfs.mount
138     _pick google \
139       usr/lib/gvfsd-google \
140       usr/share/gvfs/mounts/google.mount
142     install -d -o root -g 102 -m 750 usr/share/polkit-1/rules.d
143   )
145   install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
148 package_gvfs-smb() {
149   pkgdesc+=" (SMB/CIFS backend; Windows client)"
150   depends=(
151     "gvfs=$pkgver"
152     'smbclient>=4.12.0'
153   )
155   mv smb/* "$pkgdir"
158 package_gvfs-afc() {
159   pkgdesc+=" (AFC backend; Apple mobile devices)"
160   depends=(
161     "gvfs=$pkgver"
162     libimobiledevice
163     usbmuxd
164   )
166   mv afc/* "$pkgdir"
169 package_gvfs-gphoto2() {
170   pkgdesc+=" (gphoto2 backend; PTP camera, MTP media player)"
171   depends=(
172     "gvfs=$pkgver"
173     libgphoto2
174   )
176   mv gphoto2/* "$pkgdir"
179 package_gvfs-mtp() {
180   pkgdesc+=" (MTP backend; Android, media player)"
181   depends=(
182     "gvfs=$pkgver"
183     libmtp
184   )
186   mv mtp/* "$pkgdir"
189 package_gvfs-goa() {
190   pkgdesc+=" (Gnome Online Accounts backend; cloud storage)"
191   depends=(
192     "gvfs=$pkgver"
193     gnome-online-accounts
194   )
196   mv goa/* "$pkgdir"
199 package_gvfs-nfs() {
200   pkgdesc+=" (NFS backend)"
201   depends=(
202     "gvfs=$pkgver"
203     libnfs
204   )
205   install=gvfs-nfs.install
207   mv nfs/* "$pkgdir"
210 package_gvfs-google() {
211   pkgdesc+=" (Google Drive backend)"
212   depends=(
213     "gvfs-goa=$pkgver"
214     libgdata
215   )
217   mv google/* "$pkgdir"
220 # vim:set sw=2 sts=-1 et: