Extend native file handling in OS X (was OSXFUSE)

FUSE for macOS

FUSE for macOS

  -  10.1 MB  -  Open Source
FUSE for macOS (was OSXFUSE) allows you to extend macOS's native file handling capabilities via third-party file systems. It is a successor to MacFUSE, which has been used as a software building block by dozens of products, but is no longer being maintained.

FUSE for Mac Features

As a user, installing the FUSE for macOS software package will let you use any third-party FUSE file system. Legacy MacFUSE file systems are supported through the optional MacFUSE compatibility layer.

As a developer, you can use the FUSE SDK to write numerous types of new file systems as regular user space programs. The content of these file systems can come from anywhere: from the local disk, from across the network, from memory, or any other combination of sources.

Writing a file system using FUSE is orders of magnitude easier and quicker than the traditional approach of writing in-kernel file systems.

Since FUSE file systems are regular applications (as opposed to kernel extensions), you have just as much flexibility and choice in programming tools, debuggers, and libraries as you have if you were developing standard macOS applications.

How It Works

In more technical terms, FUSE implements a mechanism that makes it possible to implement a fully functional file system in a user-space program on macOS.

It provides multiple APIs, one of which is a superset of the FUSE API (file system in user space) that originated on Linux. Therefore, many existing FUSE file systems become readily usable on Mac.

The FUSE for Mac OS software consists of a kernel extension and various user space libraries and tools. It comes with C-based and Objective-C-based SDKs. If you prefer another language (say, Python or Java), you should be able to create file systems in those languages after you install the relevant language bindings yourself.

The filesystems repository contains source code for several exciting and useful file systems for you to browse, compile, and build upon, such as sshfs, procfs, AccessibilityFS, GrabFS, LoopbackFS, SpotlightFS, and YouTubeFS.

How to Use

Install the .pkg file by following the installer prompts

Reboot your Mac if prompted after installation

Mount third-party file systems via Terminal or compatible apps

Use FUSE API or a compatible tool to interact with file systems

Manage or uninstall from System Preferences > FUSE

System Requirements
  • macOS 10.13 High Sierra or later
  • Intel or Apple Silicon (Rosetta may be required)
  • Administrator privileges for installation
  • Command Line Tools (for development use)
  • Approximately 50 MB of free disk space
PROS
  • Allows third-party file system support
  • Integrates well with macOS architecture
  • Works with SSHFS and NTFS tools
  • Lightweight and low resource usage
  • Open-source and customizable API
CONS
  • Requires developer-level configuration
  • Not all file systems are fully supported
  • Can pose security risks if misused
  • Rosetta needed for Apple Silicon use
  • Updates may lag behind macOS releases


Why is this app published on FileHorse? (More info)
  • FUSE 5.0.7 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    FUSE 5.0.7 Screenshot 1
  • FUSE 5.0.7 Screenshot 2

What's new in this version:

General:
- Update build process to use Xcode 26.0.1 (macOS 26.0 SDK)
- Update Installer package to use absolute paths when invoking command line tools in the postinstall script
- Replace typeof with the __typeof__ builtin in libfuse3 headers. The typeof keyword is part of the C23 ISO standard, but is not officially supported in older C ISO standards.
- Drop compatibility code for macOS 11 and earlier. macFUSE 5 supports macOS 12 through macOS 26.
- Fix license file formatting. On macOS 26, QuickLook fails to render lists correctly if they are placed inside table cells in rich text documents.

Kernel Backend:
- Preserve a vnode's identity when marking it as dangling. Resetting the identity causes the fchmod(2) system call to fail.
- Resolve symbolic links in the kernel extension path before attempting to load the kernel extension

FSKit Backend:
- Improve support for macOS 26. FSClient now provides information about installed third party file system extensions, enabling more reliable detection of whether a file system extension has been enabled by the user
- Add support for creating a mount point in /Volumes automatically when mounting a volume
- Introduce foundational changes in preparation for new FSKit features in macFUSE 5.1