diff options
author | Kevin Majewski | 2020-03-10 13:29:19 +0100 |
---|---|---|
committer | Kevin Majewski | 2020-03-10 13:29:19 +0100 |
commit | 95c6bdaafc6d27d33203262a9e386ac97b35bc7d (patch) | |
tree | c5747c3455b331db6aead741c9b7e2b3f377da45 | |
download | aur-95c6bdaafc6d27d33203262a9e386ac97b35bc7d.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 106 | ||||
-rw-r--r-- | PKGBUILD | 172 | ||||
-rw-r--r-- | gvfs-nfs.install | 7 | ||||
-rw-r--r-- | gvfsd.hook | 11 |
4 files changed, 296 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..7c6f840c5d97 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,106 @@ +pkgbase = gvfs-git + pkgdesc = Virtual filesystem implementation for GIO + pkgver = 1.44.0+4+g15330448 + pkgrel = 1 + url = https://wiki.gnome.org/Projects/gvfs + arch = x86_64 + license = LGPL + makedepends = dbus + makedepends = libgphoto2 + makedepends = libimobiledevice + makedepends = smbclient + makedepends = docbook-xsl + makedepends = gtk3 + makedepends = libmtp + makedepends = gnome-online-accounts + makedepends = libnfs + makedepends = libgdata + makedepends = git + makedepends = gtk-doc + makedepends = python + makedepends = meson + makedepends = openssh + depends = avahi + depends = dconf + depends = fuse3 + depends = libarchive + depends = libcdio-paranoia + depends = libsoup + depends = udisks2 + depends = libsecret + depends = libbluray + depends = libgudev + depends = gcr + depends = psmisc + depends = gsettings-desktop-schemas>=3.34.0 + source = git+https://gitlab.gnome.org/GNOME/gvfs.git + source = gvfsd.hook + sha512sums = SKIP + sha512sums = eb54f22e7d06f226160a2a8cac613f6e761d3f059f98e29c9cf49f0c2afa9126841338812000c402046e8373e56a01f958ecdd169161706a0e0dc09bc6112917 + +pkgname = gvfs-git + optdepends = gvfs-afc: AFC (mobile devices) support + optdepends = gvfs-smb: SMB/CIFS (Windows client) support + optdepends = gvfs-gphoto2: gphoto2 (PTP camera/MTP media player) support + optdepends = gvfs-mtp: MTP device support + optdepends = gvfs-goa: gnome-online-accounts (e.g. OwnCloud) support + optdepends = gvfs-nfs: NFS support + optdepends = gvfs-google: Google Drive support + optdepends = gtk3: Recent files support + provides = gvfs + conflicts = gvfs + replaces = gvfs-obexftp + replaces = gvfs-afp + options = !emptydirs + +pkgname = gvfs-smb-git + pkgdesc = Virtual filesystem implementation for GIO (SMB/CIFS backend; Windows client) + depends = gvfs + depends = smbclient + provides = gvfs-smb + conflicts = gvfs-smb + +pkgname = gvfs-afc-git + pkgdesc = Virtual filesystem implementation for GIO (AFC backend; Apple mobile devices) + depends = gvfs + depends = libimobiledevice + depends = usbmuxd + provides = gvfs-afc + conflicts = gvfs-afc + +pkgname = gvfs-gphoto2-git + pkgdesc = Virtual filesystem implementation for GIO (gphoto2 backend; PTP camera, MTP media player) + depends = gvfs + depends = libgphoto2 + provides = gvfs-gphoto2 + conflicts = gvfs-gphoto2 + +pkgname = gvfs-goa-git + pkgdesc = Virtual filesystem implementation for GIO (Gnome Online Accounts backend; cloud storage) + depends = gvfs + depends = gnome-online-accounts + provides = gvfs-goa + conflicts = gvfs-goa + +pkgname = gvfs-mtp-git + pkgdesc = Virtual filesystem implementation for GIO (MTP backend; Android, media player) + depends = gvfs + depends = libmtp + provides = gvfs-mtp + conflicts = gvfs-mtp + +pkgname = gvfs-nfs-git + pkgdesc = Virtual filesystem implementation for GIO (NFS backend) + install = gvfs-nfs.install + depends = gvfs + depends = libnfs + provides = gvfs-nfs + conflicts = gvfs-nfs + +pkgname = gvfs-google-git + pkgdesc = Virtual filesystem implementation for GIO (Google Drive backend) + depends = gvfs-goa + depends = libgdata + provides = gvfs-google + conflicts = gvfs-google + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..cb201b60fbaa --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,172 @@ +pkgbase=gvfs-git +_pkgbase=gvfs +pkgname=(gvfs-git gvfs-{smb,afc,gphoto2,goa,mtp,nfs,google}-git) +pkgver=1.44.0+4+g15330448 +pkgrel=1 +pkgdesc="Virtual filesystem implementation for GIO" +url="https://wiki.gnome.org/Projects/gvfs" +arch=(x86_64) +license=(LGPL) +depends=('avahi' 'dconf' 'fuse3' 'libarchive' 'libcdio-paranoia' 'libsoup' 'udisks2' 'libsecret' + 'libbluray' 'libgudev' 'gcr' 'psmisc' 'gsettings-desktop-schemas>=3.34.0') +makedepends=('dbus' 'libgphoto2' 'libimobiledevice' 'smbclient' 'docbook-xsl' 'gtk3' 'libmtp' + 'gnome-online-accounts' 'libnfs' 'libgdata' 'git' 'gtk-doc' 'python' 'meson' + 'openssh') +source=("git+https://gitlab.gnome.org/GNOME/gvfs.git" + gvfsd.hook) +sha512sums=('SKIP' + 'eb54f22e7d06f226160a2a8cac613f6e761d3f059f98e29c9cf49f0c2afa9126841338812000c402046e8373e56a01f958ecdd169161706a0e0dc09bc6112917') + +pkgver() { + cd $_pkgbase + git describe --tags | sed 's/-/+/g' +} + +build() { + arch-meson $_pkgbase build -D man=true + ninja -C build +} + +check() { + meson test -C build --print-errorlogs +} + +_split() { + local name="$1" src dest; shift + for src; do + echo "$name: /usr/$src" + dest="$srcdir/$name/$src" + mkdir -p "${dest%/*}" + mv -T "$src" "$dest" + rmdir -p --ignore-fail-on-non-empty "${src%/*}" + done +} + +package_gvfs-git() { + replaces=(gvfs-{obexftp,afp}) + optdepends=('gvfs-afc: AFC (mobile devices) support' + 'gvfs-smb: SMB/CIFS (Windows client) support' + 'gvfs-gphoto2: gphoto2 (PTP camera/MTP media player) support' + 'gvfs-mtp: MTP device support' + 'gvfs-goa: gnome-online-accounts (e.g. OwnCloud) support' + 'gvfs-nfs: NFS support' + 'gvfs-google: Google Drive support' + 'gtk3: Recent files support') + provides=('gvfs') + conflicts=('gvfs') + options=(!emptydirs) + + DESTDIR="$pkgdir" meson install -C build + + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook + install -d -o root -g 102 -m 750 "$pkgdir/usr/share/polkit-1/rules.d" + + cd "$pkgdir/usr" + + _split smb \ + lib/gvfsd-smb{,-browse} \ + share/GConf/gsettings/gvfs-smb.convert \ + share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml \ + share/gvfs/mounts/smb{,-browse}.mount + + _split afc \ + lib/gvfs{-afc-volume-monitor,d-afc} \ + lib/systemd/user/gvfs-afc-volume-monitor.service \ + share/dbus-1/services/org.gtk.vfs.AfcVolumeMonitor.service \ + share/gvfs/mounts/afc.mount \ + share/gvfs/remote-volume-monitors/afc.monitor + + _split gphoto2 \ + lib/gvfs{-gphoto2-volume-monitor,d-gphoto2} \ + lib/systemd/user/gvfs-gphoto2-volume-monitor.service \ + share/dbus-1/services/org.gtk.vfs.GPhoto2VolumeMonitor.service \ + share/gvfs/mounts/gphoto2.mount \ + share/gvfs/remote-volume-monitors/gphoto2.monitor + + _split mtp \ + lib/gvfs{-mtp-volume-monitor,d-mtp} \ + lib/systemd/user/gvfs-mtp-volume-monitor.service \ + share/dbus-1/services/org.gtk.vfs.MTPVolumeMonitor.service \ + share/gvfs/mounts/mtp.mount \ + share/gvfs/remote-volume-monitors/mtp.monitor + + _split goa \ + lib/gvfs-goa-volume-monitor \ + lib/systemd/user/gvfs-goa-volume-monitor.service \ + share/dbus-1/services/org.gtk.vfs.GoaVolumeMonitor.service \ + share/gvfs/remote-volume-monitors/goa.monitor + + _split nfs \ + lib/gvfsd-nfs \ + share/gvfs/mounts/nfs.mount + + _split google \ + lib/gvfsd-google \ + share/gvfs/mounts/google.mount +} + +package_gvfs-smb-git() { + pkgdesc+=" (SMB/CIFS backend; Windows client)" + depends=('gvfs' 'smbclient') + provides=('gvfs-smb') + conflicts=('gvfs-smb') + + mv "$srcdir/smb" "$pkgdir/usr" +} + +package_gvfs-afc-git() { + pkgdesc+=" (AFC backend; Apple mobile devices)" + depends=('gvfs' 'libimobiledevice' 'usbmuxd') + provides=('gvfs-afc') + conflicts=('gvfs-afc') + + mv "$srcdir/afc" "$pkgdir/usr" +} + +package_gvfs-gphoto2-git() { + pkgdesc+=" (gphoto2 backend; PTP camera, MTP media player)" + depends=('gvfs' 'libgphoto2') + provides=('gvfs-gphoto2') + conflicts=('gvfs-gphoto2') + + mv "$srcdir/gphoto2" "$pkgdir/usr" +} + +package_gvfs-mtp-git() { + pkgdesc+=" (MTP backend; Android, media player)" + depends=('gvfs' 'libmtp') + provides=('gvfs-mtp') + conflicts=('gvfs-mtp') + + mv "$srcdir/mtp" "$pkgdir/usr" +} + +package_gvfs-goa-git() { + pkgdesc+=" (Gnome Online Accounts backend; cloud storage)" + depends=('gvfs' 'gnome-online-accounts') + provides=('gvfs-goa') + conflicts=('gvfs-goa') + + mv "$srcdir/goa" "$pkgdir/usr" +} + +package_gvfs-nfs-git() { + pkgdesc+=" (NFS backend)" + depends=('gvfs' 'libnfs') + install=gvfs-nfs.install + provides=('gvfs-nfs') + conflicts=('gvfs-nfs') + + mv "$srcdir/nfs" "$pkgdir/usr" +} + +package_gvfs-google-git() { + pkgdesc+=" (Google Drive backend)" + depends=('gvfs-goa' 'libgdata') + provides=('gvfs-google') + conflicts=('gvfs-google') + + mv "$srcdir/google" "$pkgdir/usr" +} + +# vim:set sw=2 et: diff --git a/gvfs-nfs.install b/gvfs-nfs.install new file mode 100644 index 000000000000..4d92e509d26d --- /dev/null +++ b/gvfs-nfs.install @@ -0,0 +1,7 @@ +post_install() { + setcap 'cap_net_bind_service=+ep' usr/lib/gvfsd-nfs +} + +post_upgrade() { + post_install +} diff --git a/gvfsd.hook b/gvfsd.hook new file mode 100644 index 000000000000..6e1f2de338b9 --- /dev/null +++ b/gvfsd.hook @@ -0,0 +1,11 @@ +[Trigger] +Type = Path +Operation = Install +Operation = Upgrade +Operation = Remove +Target = usr/share/gvfs/* + +[Action] +Description = Reloading GVFS config... +When = PostTransaction +Exec = /bin/sh -c 'killall -q -s USR1 gvfsd || true' |