Skip to content

Releases

modalfs 0.2.0

Choose a tag to compare

@github-actions github-actions released this 02 Nov 01:42
64d9c31

modalfs 0.2.0 adds browser login and updates the desktop app and its dependencies.

What's changed

  • Connect through your browser. Choose Continue in browser in the app, or run modalfs account login, then approve the connection with Modal. No Modal CLI or manual token copying is required. Importing CLI profiles and entering a token remain available.
  • Clearer account selection and login errors. Ambiguous account names now show the matching account IDs instead of selecting the first match. Expired login links are reported as expired.
  • Updated TLS trust handling. The CLI, daemon and desktop app are built with Go 1.27.3, including Go's eMudhra certificate distrust fix. This does not update the TLS stacks of third-party remote download tools.
  • Wails 3 desktop app. Fixes native settings requests, quitting from a hidden window, and menu bar startup. Signals close the app while leaving the daemon and mounts running.
  • Updated Go and frontend dependencies, CI tooling, and live-test traffic accounting.

Upgrading

Linux desktop users: the app now needs GTK4 and WebKitGTK 6.0, replacing the previous GTK/WebKit stack. On Ubuntu 24.04 or newer, install libgtk-4-1, libwebkitgtk-6.0-4 and fuse3. The CLI does not need GTK or WebKitGTK.

macOS: macOS 13 or later remains required. The app supports Apple Silicon and Intel. It is signed ad hoc, not notarized; see the first-launch instructions.

Connecting again adds a new account; it does not replace an existing account or move its mounts. Use account IDs when workspace names are ambiguous.

Downloads

File For
modalfs-0.2.0-macos.zip Universal Mac app, including the CLI at modalfs.app/Contents/Resources/bin/modalfs.
modalfs-gui-0.2.0-linux-amd64.tar.gz Linux x86-64 desktop app; Ubuntu 24.04 or newer with GTK4, WebKitGTK 6.0 and FUSE 3.
modalfs-0.2.0-{darwin,linux}-{arm64,amd64}.tar.gz Standalone CLI. Linux requires FUSE 3 for mounting; modalfs ui opens the browser interface.
SHA256SUMS SHA-256 checksums for all six archives.

Read the limitations before relying on modalfs for critical data. modalfs is independent of Modal Labs. Mounting, browsing and syncing do not start Modal compute; optional remote downloads do.

Full changelog: v0.1.0...v0.2.0

modalfs 0.1.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 21:50
c83f6bf

The first release of modalfs: mount Modal Volumes as local folders on macOS and Linux. Files stream on demand, edits upload in the background, and mounting never starts any Modal compute.

modalfs is an independent project, not affiliated with or endorsed by Modal Labs. It uses the same API as Modal's SDKs, parts of which are undocumented. Read Limitations and the known issues before relying on it for data you care about. (简体中文说明)

What's in it

  • Mount any Volume v2 as a folder. macOS uses its built-in NFS client (no macFUSE or kernel extension), Linux uses FUSE. Reads fetch only the 8 MiB blocks they touch, and sequential reads prefetch ahead.
  • Small edits upload small. Changing 4 KiB of a 100 GiB file uploads one 8 MiB block. Renames copy the block list on Modal's side and move no data. Large copies upload while they're still being written.
  • Your writes aren't lost. Every write is journaled on disk until Modal has it, survives crashes and power loss, and is replayed at the next mount. If a file changed on Modal while you were editing it, both versions are kept.
  • A mount never moves. Each mount is pinned to its account and volume ID, so switching Modal CLI profiles, or renaming or recreating a volume, never points it at different data.
  • Encrypted volumes (optional). File contents, names and labels are encrypted on your machine before they reach Modal.
  • Remote downloads (off by default). Paste a link and a Modal Function downloads it straight into a volume, with live speed and cost. It's the only feature that runs compute on Modal.
  • A desktop app and a complete CLI. Both drive the same background daemon. Closing the window never unmounts anything. The UI is in English, 繁體中文 and 简体中文.

Downloads

File For
modalfs-0.1.0-macos.zip The Mac app, macOS 13 or later, Apple Silicon and Intel. The CLI is inside it, in modalfs.app/Contents/Resources/bin/modalfs.
modalfs-gui-0.1.0-linux-amd64.tar.gz The desktop app for Linux on x86-64: Ubuntu 24.04 or newer, WebKitGTK 4.1 (libwebkit2gtk-4.1-0) and FUSE 3 (fuse3).
modalfs-0.1.0-{darwin,linux}-{arm64,amd64}.tar.gz The CLI alone, for servers, ARM64 Linux or older distributions. modalfs ui serves the same interface in a browser. Linux needs FUSE 3.
SHA256SUMS Checksums: shasum -a 256 -c SHA256SUMS --ignore-missing

First launch on macOS: the app is signed ad hoc, not notarized, so macOS asks before opening it the first time. On macOS 15 and later, try to open it once, then click Open Anyway in System Settings → Privacy & Security. On macOS 13 and 14, right-click modalfs.app in Finder and choose Open.

Good to know

  • Modal has no file locks or compare-and-swap. modalfs looks for a change on Modal before each commit and keeps a conflict copy, but avoid having a Modal container and your machine write the same file at the same time.
  • Modal ignores file modes: files saved through modalfs are 0666 inside containers, so run chmod +x there for scripts. Symlinks can't be read or created through Modal's API.
  • On macOS, a copy larger than the cache size pauses in long stretches; keep the cache size above your largest copy for now.
  • BitTorrent downloads upload to peers, which Modal's terms (§1.5) forbid. Everything you do through modalfs falls under Modal's Terms of Service.

Found a problem? Open an issue.