summaryrefslogtreecommitdiff
path: root/filesystems/afuse
diff options
context:
space:
mode:
Diffstat (limited to 'filesystems/afuse')
-rw-r--r--filesystems/afuse/Makefile30
-rw-r--r--filesystems/afuse/distinfo3
-rw-r--r--filesystems/afuse/files/afuse.195
-rw-r--r--filesystems/afuse/files/patch-src_afuse.c11
-rw-r--r--filesystems/afuse/files/pkg-message.in8
-rw-r--r--filesystems/afuse/pkg-descr16
-rw-r--r--filesystems/afuse/pkg-plist3
7 files changed, 166 insertions, 0 deletions
diff --git a/filesystems/afuse/Makefile b/filesystems/afuse/Makefile
new file mode 100644
index 000000000000..808794a7224b
--- /dev/null
+++ b/filesystems/afuse/Makefile
@@ -0,0 +1,30 @@
+PORTNAME= afuse
+PORTVERSION= 0.4.1
+PORTREVISION= 2
+CATEGORIES= filesystems
+MASTER_SITES= https://BSDforge.com/projects/source/sysutils/afuse/
+PKGNAMEPREFIX= fusefs-
+
+MAINTAINER= portmaster@BSDforge.com
+COMMENT= File system automounting implemented in user-space using FUSE
+WWW= https://github.com/pcarrier/afuse
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+USES= cpe fuse pkgconfig
+GNU_CONFIGURE= yes
+
+PORTDOCS= AUTHORS README
+
+OPTIONS_DEFINE= DOCS
+DOCS_SUB_FILES= pkg-message
+
+post-install:
+ ${INSTALL_MAN} ${FILESDIR}/afuse.1 ${STAGEDIR}${PREFIX}/share/man/man1
+
+post-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/filesystems/afuse/distinfo b/filesystems/afuse/distinfo
new file mode 100644
index 000000000000..3dca6b32c27b
--- /dev/null
+++ b/filesystems/afuse/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1730905207
+SHA256 (afuse-0.4.1.tar.gz) = c6e0555a65d42d3782e0734198bbebd22486386e29cb00047bc43c3eb726dca8
+SIZE (afuse-0.4.1.tar.gz) = 121957
diff --git a/filesystems/afuse/files/afuse.1 b/filesystems/afuse/files/afuse.1
new file mode 100644
index 000000000000..f6212f74aa3f
--- /dev/null
+++ b/filesystems/afuse/files/afuse.1
@@ -0,0 +1,95 @@
+.TH AFUSE 1 "October 12, 2006"
+.SH NAME
+AFUSE \- automounting file system implemented in user-space using FUSE
+.SH DESCRIPTION
+usage: afuse mountpoint [options]
+.SS "general options:"
+.TP
+\fB\-o\fR opt,[opt...]
+mount options
+.TP
+\fB\-h\fR \fB\-\-help\fR
+print help
+.TP
+\fB\-V\fR \fB\-\-version\fR
+print FUSE version information
+.SS "AFUSE options:"
+.TP
+\fB\-o\fR \fB\ mount_template=CMD\fR
+template for CMD to execute to mount (*)
+.TP
+\fB\-o\fR \fB\ unmount_template=CMD\fR
+template for CMD to execute to unmount (*) (**)
+.TP
+(*) - When executed, %r and %m are expanded in templates to the root
+directory name for the new mount point, and the actual directory to
+mount onto respectively to mount onto. Both templates are REQUIRED.
+.TP
+(**)- The unmount command must perform a lazy unmount operation. E.g. the
+\-u \-z options to fusermount, or \-l for regular mount.
+.SS "FUSE options:"
+.TP
+\fB\-d\fR \fB\-o\fR debug
+enable debug output (implies \fB\-f\fR)
+.TP
+\fB\-f\fR
+foreground operation
+.TP
+\fB\-s\fR
+disable multi\-threaded operation
+.TP
+\fB\-o\fR allow_other
+allow access to other users
+.TP
+\fB\-o\fR allow_root
+allow access to root
+.TP
+\fB\-o\fR nonempty
+allow mounts over non\-empty file/dir
+.HP
+\fB\-o\fR default_permissions enable permission checking by kernel
+.TP
+\fB\-o\fR fsname=NAME
+set filesystem name
+.TP
+\fB\-o\fR large_read
+issue large read requests (2.4 only)
+.TP
+\fB\-o\fR max_read=N
+set maximum size of read requests
+.TP
+\fB\-o\fR hard_remove
+immediate removal (don't hide files)
+.TP
+\fB\-o\fR use_ino
+let filesystem set inode numbers
+.TP
+\fB\-o\fR readdir_ino
+try to fill in d_ino in readdir
+.TP
+\fB\-o\fR direct_io
+use direct I/O
+.TP
+\fB\-o\fR kernel_cache
+cache files in kernel
+.TP
+\fB\-o\fR umask=M
+set file permissions (octal)
+.TP
+\fB\-o\fR uid=N
+set file owner
+.TP
+\fB\-o\fR gid=N
+set file group
+.TP
+\fB\-o\fR entry_timeout=T
+cache timeout for names (1.0s)
+.TP
+\fB\-o\fR negative_timeout=T
+cache timeout for deleted names (0.0s)
+.TP
+\fB\-o\fR attr_timeout=T
+cache timeout for attributes (1.0s)
+.SH AUTHOR
+This manual page was written by Varun Hiremath <varunhiremath@gmail.com>,
+for the Debian project (but may be used by others).
diff --git a/filesystems/afuse/files/patch-src_afuse.c b/filesystems/afuse/files/patch-src_afuse.c
new file mode 100644
index 000000000000..31a49171dcfc
--- /dev/null
+++ b/filesystems/afuse/files/patch-src_afuse.c
@@ -0,0 +1,11 @@
+--- src/afuse.c.orig 2013-02-13 02:36:47 UTC
++++ src/afuse.c
+@@ -29,7 +29,7 @@
+ #include <string.h>
+ #include <stddef.h>
+ #include <unistd.h>
+-#include <alloca.h>
++//#include <alloca.h>
+ #include <fcntl.h>
+ #include <dirent.h>
+ #include <errno.h>
diff --git a/filesystems/afuse/files/pkg-message.in b/filesystems/afuse/files/pkg-message.in
new file mode 100644
index 000000000000..bf89bc245d9b
--- /dev/null
+++ b/filesystems/afuse/files/pkg-message.in
@@ -0,0 +1,8 @@
+[
+{ type: install
+ message: <<EOM
+Additional info about program usage can be found at
+%%DOCSDIR%%/README.
+EOM
+}
+]
diff --git a/filesystems/afuse/pkg-descr b/filesystems/afuse/pkg-descr
new file mode 100644
index 000000000000..7372b291f353
--- /dev/null
+++ b/filesystems/afuse/pkg-descr
@@ -0,0 +1,16 @@
+Afuse is an automounting file system implemented in user-space
+using FUSE. Afuse currently implements the most basic
+functionality that can be expected by an automounter; that is it
+manages a directory of virtual directories. If one of these virtual
+directories is accessed and is not already automounted, afuse will
+attempt to mount a filesystem onto that directory. If the mount
+succeeds the requested access proceeds as normal, otherwise it will
+fail with an error.
+
+The advantage of using afuse over traditional automounters is that
+afuse is designed to run entirely in user-space by individual users.
+This way an automounting action can take advantage of the invoking
+users environment, for example allowing access to an ssh-agent for
+password-less sshfs mounts, or allowing access to a graphical
+environment to get user input to complete a mount (i.e. popping up
+a window asking for a password).
diff --git a/filesystems/afuse/pkg-plist b/filesystems/afuse/pkg-plist
new file mode 100644
index 000000000000..ca1d3709154f
--- /dev/null
+++ b/filesystems/afuse/pkg-plist
@@ -0,0 +1,3 @@
+bin/afuse
+@comment bin/afuse-avahissh
+share/man/man1/afuse.1.gz