# Maintainer: Natanael Copa pkgname=fuse3 _pkgname=fuse pkgver=3.6.2 pkgrel=2 pkgdesc="The reference implementation of the Linux FUSE (Filesystem in Userspace) interface" url="https://github.com/libfuse/libfuse" arch="all" license="GPL-2.0-only LGPL-2.1-only" depends="fuse-common" makedepends="gettext-dev linux-headers meson eudev-dev python3 py3-six py3-pluggy py3-attrs py3-py" checkdepends="py3-pytest" subpackages="$pkgname-dev $pkgname-doc fuse-common:_common fuse-openrc:_openrc $pkgname-libs" source="https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.xz fix-realpath.patch add-includes.patch fuse.initd" options="suid !check" # check is currently broken: https://github.com/libfuse/libfuse/issues/293 builddir="$srcdir"/$_pkgname-$pkgver # secfixes: # 3.2.5-r0: # - CVE-2018-10906 build() { cd "$builddir" meson \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ --buildtype=release \ . output ninja -C output } check() { cd "$builddir" python3 -m pytest test/ } package() { cd "$builddir" DESTDIR="$pkgdir" ninja -C output install rm -r "$pkgdir"/dev "$pkgdir"/etc/init.d install -Dm755 "$srcdir"/fuse.initd "$pkgdir"/etc/init.d/fuse # create config install -d "$pkgdir"/etc cat >"$pkgdir"/etc/fuse.conf << _EOF_ # Set the maximum number of FUSE mounts allowed to non-root users. # The default is 1000. # #mount_max = 1000 # Allow non-root users to specify the 'allow_other' or 'allow_root' # mount options. # #user_allow_other _EOF_ } _common() { pkgdesc="Common files for fuse2 and fuse3" mkdir -p "$subpkgdir"/etc/ mv "$pkgdir"/etc/fuse.conf "$subpkgdir"/etc/ } _openrc() { default_openrc install_if="openrc fuse-common=$pkgver-r$pkgrel" } sha512sums="e5eb10c66e8585d47430e289d059a3a58ebf3823304fa35e9be413c8d194401ff5093fac82c7c6911b3c5afde6c1c156aa671d333b193d2d739a7ed1632c4bd8 fuse-3.6.2.tar.xz 1a9e1d1e8a7b0778ffde328e4322c73b5d57ec98d52767c846d755cce861ab27989823a75b6c5f994432ddb77fa351dfa4a8f948c9467c5f7d5f471e4608358b fix-realpath.patch 45da040bc5baf6ffd78e5a43ed070042f845b0829edfa5591f3304503f2ffaa6c642e18eb46aa0b661a0284a0505892f1ce4097530696f1739ffaf85c422ac13 add-includes.patch 7f6a503ef23cfa8b809c544375c2d83ad56525269b48ad1a7dff0ce36f4bf2f2a3fafed9dc70a71ff6281b261db5f01829e16c06f041921a5d8c8d715a04a8c1 fuse.initd"