summaryrefslogtreecommitdiff
path: root/sys-fs/fuse
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-fs/fuse
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-fs/fuse')
-rw-r--r--sys-fs/fuse/Manifest14
-rw-r--r--sys-fs/fuse/files/fuse-2.9.3-kernel-types.patch19
-rw-r--r--sys-fs/fuse/files/fuse-fbsd.init23
-rw-r--r--sys-fs/fuse/files/fuse.init35
-rw-r--r--sys-fs/fuse/fuse-2.9.7.ebuild83
-rw-r--r--sys-fs/fuse/fuse-3.0.0_rc3.ebuild86
-rw-r--r--sys-fs/fuse/fuse-3.1.0.ebuild44
-rw-r--r--sys-fs/fuse/fuse-3.1.1.ebuild48
-rw-r--r--sys-fs/fuse/metadata.xml12
9 files changed, 364 insertions, 0 deletions
diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest
new file mode 100644
index 000000000000..40ce621d4ac8
--- /dev/null
+++ b/sys-fs/fuse/Manifest
@@ -0,0 +1,14 @@
+AUX fuse-2.9.3-kernel-types.patch 434 SHA256 f8953ffaa7b5ee118193058e9468fb4113018931d31b42146a150a36edf29604 SHA512 909d43fbe190400d4beabd9801bf554e38a5bb5a3545930883976f42a2090c8768e485183949269639ddeae5bae5490b37dc23f031c48d6c4fd4c9facf08b66b WHIRLPOOL 7872c4af8ab9ce26fbce8636f99916dc090e4022aa942b5502ff1f508ac6ff7f3122ea011ac32cbb49000536b88ebef2ee216c273394348703f86550c9887953
+AUX fuse-fbsd.init 468 SHA256 9239983ac7fa845844c0b2534cad199f70b60be71b2aaea7699a5f224584d03d SHA512 c8ae0e1932e34e2078bb8a1ab47c6d2d489f832f7adb118668624d3f0695ebf8b3ac2468a8db98579ef30078eac6989421aae7d7893e30a50e5c35d0a00ad6a9 WHIRLPOOL 6dbb6aa019c9cd93c896389987555e86e798256328b56947204bbce1303d909fc9789db7febb753e22a79718491a60d7c99d4e3aa6c776eb214f88ff440ca889
+AUX fuse.init 757 SHA256 66ce65e2459fef26bb1711d706a23643a9af7a80e03ee6be836a377310b00682 SHA512 7f6a503ef23cfa8b809c544375c2d83ad56525269b48ad1a7dff0ce36f4bf2f2a3fafed9dc70a71ff6281b261db5f01829e16c06f041921a5d8c8d715a04a8c1 WHIRLPOOL 0b2691f1174a271d4de08cadbad14f7d150a30d2bbf02aa7e8090e139bd5f7a9a5fc1cd2cef510e3c299e19b66db480fac1d528c7bca18d18b4024c9a710a322
+DIST fuse-2.9.7.tar.gz 661138 SHA256 832432d1ad4f833c20e13b57cf40ce5277a9d33e483205fc63c78111b3358874 SHA512 f47304d9c7a1815f7a2905b7bdb7785d4c10292a80c8dc1ec45d895af96bc6ffd6d84ff2617bd976a1d0867ab8ec1a404a5a05ace85a69ecca830f371d08f8e2 WHIRLPOOL 826f77920356c129cda5ca158e37327688d2aa044c0ecdaabe8d52e724b0349813460d876571672bcb59a5b8004018593abdb314187b6b6706fee69b9eadaae7
+DIST fuse-3.0.0rc3.tar.gz 744606 SHA256 f8c64ebc8e3e29c33f0877c673a4a1a060569299690f32dc682ba4a2aa1ee50b SHA512 a50d12d70ee44c217f198a231bf37b323d36741aacb5d6b2fbf6f8cfc645d9106d7f05f7cc7be29bd64098b48797f8c53a239194bf49e714b9a0dc12bf885e35 WHIRLPOOL 55a66383ca712458d5006a043ca71f157522621df9283e6c42b6c44b2548869a72b7804485db69be3d60c194da906bf4660fb16fab10f8d5afae60eb4670c7a8
+DIST fuse-3.1.0.tar.gz 809470 SHA256 b4d496fd39b9bf69b7cdeea1cbe6e8e3794dfaafe2a16ffac01a4ff10336e19e SHA512 e6278aef67162439b736af28528edb0f39a4513f584e5949a269cc3bc07a14436e6f0b69dbe8002db6f60de9139c452568b5a091baa49119a7f61422b7aec84c WHIRLPOOL 8a4eb0cb79131da2eba550edaa1ff5b1eb02eecfb7157f3257d81427c37b404718e67593d67106f5cb09724a1dd9997f4e3c472915ff74e8fdb3f86d9daf1008
+DIST fuse-3.1.1.tar.gz 819205 SHA256 4e89cf58d0b498fc37f7474193fe9c17dbd3b5d14e5abc6ff629b33e81f1d213 SHA512 38c61380f08cc9cde576d4d8fdc3b9a7c703c753ae9c477ec5210fddfe235055dc925e024ba74f3200576974f901d05b5d138cecf1baffe7b17f17ed23fdc391 WHIRLPOOL 64c9716d1e6f02d2eedf0ab5865dc3684bdcaac637fcd577d9b90ba739c8a0c16d2b29a2e5dafa98c54b73e4972c5a95169bb58fb56c39f0e995a45deec246e3
+EBUILD fuse-2.9.7.ebuild 2217 SHA256 31627c78e9755b9c475cfe537962b19b1d184eafe23cfe90f2e41ac3798aaad9 SHA512 40735712f825b32f9db1078d78549be073db57329ffc243ef0cd46b8faf06fcb7961143d2779a8bc1ea8cdbfc0328110d9cc460f93e3eed8f51a58894d12287c WHIRLPOOL 057f8004a77e826c707d9748e126984501880027882184a49c04aedfdd5d6ba0e1a3de3a46c28c0805decc51b96e1694f65ac982b3b64631a1f49bf4e255cbda
+EBUILD fuse-3.0.0_rc3.ebuild 2175 SHA256 771fb3d7a739f39d230b6739d9af371f1bd4a1dcec3130eee57fcc7147ae152c SHA512 683cb8c47f8d592305e83c01a926a305ebf89b7d1f35394d93c3dc6afdf99c1f778468147191fb2689947491cbbbb23a97ec028f4c68e3eac7460b8318e96e3f WHIRLPOOL 398d1053e45dffab51e1183be334d929890b5b04cca87d437558831b670cd1bf9a6bc3b61979df2710d2888b245f7c45fb1dd5e3c2c4cdcf8d4caaaea3d9d45b
+EBUILD fuse-3.1.0.ebuild 982 SHA256 5330d0cd089d7e1cb53f7af9cf61eb67a0fd90ebb7d0702e74309fbcd7c54d25 SHA512 8730ae6ce93a3a09574531acfa1029d649c26353aa45da6d25426db93cdcad94df87f0f18ae0fdecc304d6619d2b385d6d3423240356fde7cfd7bac120fc3e36 WHIRLPOOL 53b82344ec6e65fec5903aaa8062ad465f4085f59968075359c89fa620d62ac080c68493d9a2662645d37cfbd8f5aaed18b0bd2dd2d28d405b0d3d1fa79f6f59
+EBUILD fuse-3.1.1.ebuild 1032 SHA256 20d7867815701812fb1d58f84ecd1e57f02ee5759aef7761fa8e9b8c5481f526 SHA512 4fc85ec2409032548ecc680c851604bdafd9e07a42419800004f04dbd64a7d6604325af8e35716e389194e1d6a97b350ae4b82efb6597232244471570f18790f WHIRLPOOL f16e49bc4faf2fae1c63ce69b7ee7070e547ec88295c101c0bf0069f1d95603b6e05ba32b743d5d1358328c3966f4a5b213ba3e7e516b87ef8eed051ece515a8
+MISC ChangeLog 4825 SHA256 1bad0da6f3fec7e8fd99034c9295289647baf7192a7bd80272f3734ead14a302 SHA512 10f21481199ec2ab74666ba1520678899858a9d96b43969fab82e887dc08a91a7b6976038abc5cc499eee149a6b04a6bb3ebc4fb8471afc171e0075bba3d2068 WHIRLPOOL cab9bcdf9559cb2671986e3e1d97852ed96767d6f8c09aab422c2ee4931f9293c5b6df211da42e061fffe39699932b9b71c76ed32e26c34e6857d4ae479091ef
+MISC ChangeLog-2015 27380 SHA256 d51b5a7d22daccf5a2f8355ad8abc927d7b9614726faeda6ba6e0d912a92ed19 SHA512 0af668df05e347b91dda98b6ffdbe6d81dcd3f0ca0c2c9cc7def2f2789674297d58df3315d0fb41e7a3ea73e00aaf0eeecb159c8e898fa873a7f2934f5ef5209 WHIRLPOOL 46dc9df38275bcef89c4b58fdafc4782b7bf538ad850a68866df1ca1dfb7a320b8cf7fbe216db290bc2ced8b9f1a52ae4ce9f4a98102a659c6a39897ba8eafc2
+MISC metadata.xml 391 SHA256 49dc941699b6c5c7493484a85434f36620e66f30fbfd314693df4d06be898662 SHA512 181d574140e8459c76d7392cf63eec85e1b40142b31b9ac1a19bf657c8482b581c1ea23fdae6a523bbad4943e3245409dfc14eea38243b78ef541e3cad49a180 WHIRLPOOL 61f3e35760261757272f95f604f8e796437193ea331153c3464873a3fcf4fe5821b057798e69ebcc4229acf8989d2378fd083ba2f6520b1fb525df4aa35e7e1a
diff --git a/sys-fs/fuse/files/fuse-2.9.3-kernel-types.patch b/sys-fs/fuse/files/fuse-2.9.3-kernel-types.patch
new file mode 100644
index 000000000000..52d9658a2d88
--- /dev/null
+++ b/sys-fs/fuse/files/fuse-2.9.3-kernel-types.patch
@@ -0,0 +1,19 @@
+this is a minimal version of:
+https://sourceforge.net/p/fuse/fuse/ci/6b02a7082ae4c560427ff95b51aa8930bb4a6e1f/
+
+--- a/include/fuse_kernel.h
++++ b/include/fuse_kernel.h
+@@ -88,12 +88,7 @@
+ #ifndef _LINUX_FUSE_H
+ #define _LINUX_FUSE_H
+
+-#include <sys/types.h>
+-#define __u64 uint64_t
+-#define __s64 int64_t
+-#define __u32 uint32_t
+-#define __s32 int32_t
+-#define __u16 uint16_t
++#include <linux/types.h>
+
+ /*
+ * Version negotiation:
diff --git a/sys-fs/fuse/files/fuse-fbsd.init b/sys-fs/fuse/files/fuse-fbsd.init
new file mode 100644
index 000000000000..27d90cc867f3
--- /dev/null
+++ b/sys-fs/fuse/files/fuse-fbsd.init
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need localmount
+}
+
+start() {
+ ebegin "Starting fuse"
+ if ! kldstat -q -m fuse; then
+ kldload fuse >/dev/null 2>&1 || eerror $? "Error loading fuse module"
+ fi
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping fuse"
+ if kldstat -q -m fuse; then
+ kldunload fuse >/dev/null 2>&1 || eerror $? "Error unloading fuse module"
+ fi
+ eend ${?}
+}
diff --git a/sys-fs/fuse/files/fuse.init b/sys-fs/fuse/files/fuse.init
new file mode 100644
index 000000000000..6c99929c2266
--- /dev/null
+++ b/sys-fs/fuse/files/fuse.init
@@ -0,0 +1,35 @@
+#!/sbin/openrc-run
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+MOUNTPOINT=/sys/fs/fuse/connections
+
+depend() {
+ need localmount
+}
+
+start() {
+
+ ebegin "Starting fuse"
+ if ! grep -qw fuse /proc/filesystems; then
+ modprobe fuse >/dev/null 2>&1 || eerror $? "Error loading fuse module"
+ fi
+ if grep -qw fusectl /proc/filesystems && \
+ ! grep -qw $MOUNTPOINT /proc/mounts; then
+ mount -t fusectl none $MOUNTPOINT >/dev/null 2>&1 || \
+ eerror $? "Error mounting control filesystem"
+ fi
+ eend ${?}
+
+}
+
+stop() {
+
+ ebegin "Stopping fuse"
+ if grep -qw $MOUNTPOINT /proc/mounts; then
+ umount $MOUNTPOINT >/dev/null 2>&1 || \
+ eerror $? "Error unmounting control filesystem"
+ fi
+ eend ${?}
+
+}
diff --git a/sys-fs/fuse/fuse-2.9.7.ebuild b/sys-fs/fuse/fuse-2.9.7.ebuild
new file mode 100644
index 000000000000..552bdfe7e681
--- /dev/null
+++ b/sys-fs/fuse/fuse-2.9.7.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils libtool linux-info udev toolchain-funcs
+
+DESCRIPTION="An interface for filesystems implemented in userspace"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="examples kernel_linux kernel_FreeBSD static-libs"
+
+PDEPEND="kernel_FreeBSD? ( sys-fs/fuse4bsd )"
+DEPEND="virtual/pkgconfig"
+
+pkg_setup() {
+ if use kernel_linux ; then
+ if kernel_is lt 2 6 9 ; then
+ die "Your kernel is too old."
+ fi
+ CONFIG_CHECK="~FUSE_FS"
+ FUSE_FS_WARNING="You need to have FUSE module built to use user-mode utils"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ local PATCHES=( "${FILESDIR}"/${PN}-2.9.3-kernel-types.patch )
+ # sandbox violation with mtab writability wrt #438250
+ # don't sed configure.in without eautoreconf because of maintainer mode
+ sed -i 's:umount --fake:true --fake:' configure || die
+ elibtoolize
+
+ default
+}
+
+src_configure() {
+ econf \
+ INIT_D_PATH="${EPREFIX}/etc/init.d" \
+ MOUNT_FUSE_PATH="${EPREFIX}/sbin" \
+ UDEV_RULES_PATH="${EPREFIX}/$(get_udevdir)/rules.d" \
+ $(use_enable static-libs static) \
+ --disable-example
+}
+
+src_install() {
+ local DOCS=( AUTHORS ChangeLog README.md README.NFS NEWS doc/how-fuse-works doc/kernel.txt )
+ default
+
+ if use examples ; then
+ docinto examples
+ dodoc example/*
+ fi
+
+ if use kernel_linux ; then
+ newinitd "${FILESDIR}"/fuse.init fuse
+ elif use kernel_FreeBSD ; then
+ insinto /usr/include/fuse
+ doins include/fuse_kernel.h
+ newinitd "${FILESDIR}"/fuse-fbsd.init fuse
+ else
+ die "We don't know what init code install for your kernel, please file a bug."
+ fi
+
+ prune_libtool_files
+ rm -rf "${D}"/dev
+
+ dodir /etc
+ cat > "${ED}"/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
+}
diff --git a/sys-fs/fuse/fuse-3.0.0_rc3.ebuild b/sys-fs/fuse/fuse-3.0.0_rc3.ebuild
new file mode 100644
index 000000000000..43bf6fd1bdd8
--- /dev/null
+++ b/sys-fs/fuse/fuse-3.0.0_rc3.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils libtool linux-info udev toolchain-funcs
+
+MY_P=${P/_/}
+
+DESCRIPTION="An interface for filesystems implemented in userspace"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/${MY_P}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="examples kernel_linux kernel_FreeBSD static-libs"
+
+PDEPEND="kernel_FreeBSD? ( sys-fs/fuse4bsd )"
+DEPEND="virtual/pkgconfig"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ if use kernel_linux ; then
+ if kernel_is lt 2 6 9 ; then
+ die "Your kernel is too old."
+ fi
+ CONFIG_CHECK="~FUSE_FS"
+ FUSE_FS_WARNING="You need to have FUSE module built to use user-mode utils"
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ # sandbox violation with mtab writability wrt #438250
+ # don't sed configure.in without eautoreconf because of maintainer mode
+ sed -i 's:umount --fake:true --fake:' configure || die
+ elibtoolize
+
+ default
+}
+
+src_configure() {
+ econf \
+ INIT_D_PATH="${EPREFIX}/etc/init.d" \
+ MOUNT_FUSE_PATH="${EPREFIX}/sbin" \
+ UDEV_RULES_PATH="${EPREFIX}/$(get_udevdir)/rules.d" \
+ $(use_enable static-libs static) \
+ --disable-example
+}
+
+src_install() {
+ local DOCS=( AUTHORS README.md doc/README.NFS doc/kernel.txt )
+ default
+
+ if use examples ; then
+ docinto examples
+ dodoc example/*
+ fi
+
+ if use kernel_linux ; then
+ newinitd "${FILESDIR}"/fuse.init fuse
+ elif use kernel_FreeBSD ; then
+ insinto /usr/include/fuse
+ doins include/fuse_kernel.h
+ newinitd "${FILESDIR}"/fuse-fbsd.init fuse
+ else
+ die "We don't know what init code install for your kernel, please file a bug."
+ fi
+
+ prune_libtool_files
+ rm -rf "${D}"/dev
+
+ dodir /etc
+ cat > "${ED}"/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
+}
diff --git a/sys-fs/fuse/fuse-3.1.0.ebuild b/sys-fs/fuse/fuse-3.1.0.ebuild
new file mode 100644
index 000000000000..ac994543f9a4
--- /dev/null
+++ b/sys-fs/fuse/fuse-3.1.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit meson multilib-minimal
+
+DESCRIPTION="An interface for filesystems implemented in userspace"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="3"
+#KEYWORDS="~amd64"
+RESTRICT="test"
+
+DOCS=( AUTHORS README.md doc/README.NFS doc/kernel.txt )
+
+src_prepare() {
+ default
+ # passthough_ll is broken on systems with 32-bit pointers
+ cat /dev/null > example/meson.build || die
+}
+
+multilib_src_configure() {
+ meson_src_configure
+}
+
+multilib_src_compile() {
+ eninja
+}
+
+multilib_src_install() {
+ DESTDIR="${D}" eninja install
+}
+
+multilib_src_install_all() {
+ default
+ rm "${ED%/}"/dev/fuse || die
+ rmdir "${ED%/}"/dev || die
+ rm "${ED%/}"/etc/init.d/fuse3 || die
+ rmdir "${ED%/}"/etc{/init.d,} || die
+ mv "${ED%/}"/usr/share/man/man8/mount.fuse{,3}.8.gz || die
+}
diff --git a/sys-fs/fuse/fuse-3.1.1.ebuild b/sys-fs/fuse/fuse-3.1.1.ebuild
new file mode 100644
index 000000000000..f2e588be8b69
--- /dev/null
+++ b/sys-fs/fuse/fuse-3.1.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit meson multilib-minimal
+
+DESCRIPTION="An interface for filesystems implemented in userspace"
+HOMEPAGE="https://github.com/libfuse/libfuse"
+SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="3"
+#KEYWORDS="~amd64"
+RESTRICT="test"
+
+DEPEND="
+ virtual/pkgconfig
+"
+
+DOCS=( AUTHORS ChangeLog.rst README.md doc/README.NFS doc/kernel.txt )
+
+src_prepare() {
+ default
+ # passthough_ll is broken on systems with 32-bit pointers
+ cat /dev/null > example/meson.build || die
+}
+
+multilib_src_configure() {
+ meson_src_configure
+}
+
+multilib_src_compile() {
+ eninja
+}
+
+multilib_src_install() {
+ DESTDIR="${D}" eninja install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ rm "${ED%/}"/dev/fuse || die
+ rmdir "${ED%/}"/dev || die
+ rm "${ED%/}"/etc/init.d/fuse3 || die
+ rmdir "${ED%/}"/etc{/init.d,} || die
+ mv "${ED%/}"/usr/share/man/man8/mount.fuse{,3}.8.gz || die
+}
diff --git a/sys-fs/fuse/metadata.xml b/sys-fs/fuse/metadata.xml
new file mode 100644
index 000000000000..42343713afc0
--- /dev/null
+++ b/sys-fs/fuse/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>radhermit@gentoo.org</email>
+ <name>Tim Harder</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:fuse:fuse</remote-id>
+ <remote-id type="github">libfuse/libfuse</remote-id>
+ </upstream>
+</pkgmetadata>