matil019 / haskell-libfuse3

A Haskell binding for libfuse-3.x
https://hackage.haskell.org/package/libfuse3
MIT License
5 stars 1 forks source link

libfuse3: A Haskell binding to libfuse-3.x

GitHub Actions

Important notes

System dependencies

This package depends on the C library libfuse and pkg-config. Please install them with your system package manager before building this package. For example, on Ubuntu:

sudo apt-get update && sudo apt-get install libfuse3-dev fuse3 pkg-config

NOTE: libfuse3-dev is not available until Ubuntu-20.04 (a.k.a. "focal").

NOTE2: Not to be confused with libfuse-dev (whose version is 2.x). It can coexist with libfuse3-dev, but it is incompatible with this package.

Building from HEAD

This packages uses the ./configure script, but it is not checked into the git repository. To build the source checked out from git, you must generate it from configure.ac before invoking any of the cabal commands:

autoreconf -fiv
# cabal v2-build, etc.

You may have to install autotools or something like that with your system package manager.

Examples

There are two examples, null and passthrough in the example directory. These are the ports of the examples in the official libfuse. They should be good start points for writing your filesystems.

Enable the cabal flag to build them:

cabal v2-configure --flags=examples

Known issues and limitations

If you are able to fix/implement any of these, that would be very appreciated! Please open a PR to contribute.

Related works