Skip to content
Fuse bindings for Python.
Python C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE.txt
README.md
__init__.py
bridge.c
bridge.h
compiler_tools.py
hello.py
pyfuse.py

README.md

Pyfuse: A tool for simple FUSE Filesystems

Introduction

Pyfuse is a Python 3-based library for making easy-to-write FUSE filesystems. It uses Python's ctypes module and your system's C compiler to generate a portable bridge library at import time, and then hooks into all of the FUSE interfaces that you need to get a basic filesystem up and running.

The basic idea is that Pyfuse hides most of the FUSE weirdness and ctypes weirdness, and allows you to get down to the business of implementing your filesystem.

License

Pyfuse is licensed under GPLv2.

Naming

There's a name collision with the other Pyfuse module. I know.

Requirements

Pyfuse has been tested and works on Fedora, Ubuntu, and MacOS. It'll probably work on just about anything with Python 3.4+, a FUSE installation (libfuse and libfuse-dev on Linux, OSXFUSE on MacOS), a C compiler, and a set of system headers (you'll need to install the XCode CLI tools on MacOS to get these).

Current Status

At present, Pyfuse is working and has been functionally tested. There are no known bugs, although I might eventually add ioctl support. There's a sample filesystem implemented in hello.py.

Use with pride!

You can’t perform that action at this time.