oxfuse 0.4.2
Object-oriented binding for libfuse3
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
This project is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.
Official repositories:
Keywords: dlang, d, fuse, libfuse, libfuse3, binding, wrapper.
About
OXFuse (Object-oriented eXtension of FUSE) is a D language binding for libfuse3. This project allows to write filesystem for Linux.
Features
- To create your own file system, you should inherit from
the
oxfuse.FileSystem
class and overload any methods (file operations). - This library allows to use fourty operations from libfuse
(all except
write_buf()
/read_buf()
). - The behavior of all non-overloaded functions is determined by FUSE and the OS kernel.
- The library doesn't contain bindings to functions which parse command line arguments. Parsing is proposed to be done using the D language tools.
- Error situations with accompanying messages and
errno
are based onFuseException
and thefe()
function. - The original library broke backward
compatibility for the
fuse_config
andfuse_file_info
structures. Our library takes into account the current system version of libfuse3. All structures in the final build have the correct versions. - Currently, only the high-level part has been ported, the low-level part is not available.
Documentation
https://os-18.codeberg.page/oxfuse/
The "examples/" directory contains several different implementations of file systems.
Useful imformation is also available here: https://github.com/libfuse/libfuse/wiki.
Ready-made packages
The page contains information about installing several packages, including OXFuse.
Build from source
Preparing
You must have make and at least one of these compilers:
Also the library needs libfuse3.
Simple building and installing
Creating of static and dynamic libraries for the ldc2 compiler (by default):
make
Installation (root rights may be required):
make install
The Makefile contains variables:
DESTDIR
specifies the root directory for installing (empty, by default);PREFIX
points to the base directory likeusr/local
orusr
.
Installation directory is defined as $(DESTDIR)/$(PREFIX)
in the Makefile.
You can install the library files in any directory, like $HOME/.local
:
make install DESTDIR=$HOME PREFIX=.local
Uninstall:
make uninstall
If you installed the project in some alternative directory:
make uninstall DESTDIR=$HOME PREFIX=.local
Other compilers
Compiler by default is ldc2. You can choose other compiler (for example, gdc):
make DC=gdc
Installing:
make install DC=gdc
Uninstalling:
make uninstall DC=gdc
Feedback
Questions, suggestions, comments, bugs:
Also use the repository service tools.
- Registered by Eugene 'Vindex' Stulin
- 0.4.2 released 8 days ago
- os-18/oxfuse
- codeberg.org/os-18/oxfuse
- BSL-1.0 or LGPL-3.0+
- Copyright © 2023-2025, Eugene 'Vindex' Stulin
- Authors:
- Dependencies:
- none
- Versions:
-
0.4.2 2025-Mar-04 0.4.1 2025-Mar-04 0.4.0 2025-Mar-04 0.3.4 2025-Feb-19 0.3.3 2025-Feb-18 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
23 downloads this month
-
47 downloads total
-
- Score:
- 0.5
- Short URL:
- oxfuse.dub.pm