Technology for the future: MacFUSE

Introduction: I can’t say for certain, but with concerns about BitTorrent making the rounds (P2P as a concept and technology should be fine long-term) I’m curious about two new technologies with a lot of future-shaping potential — one that I was already aware of and a new one that I just found out about yesterday…

I previously covered Adobe’s Apollo and now I’d like to discuss Amit Singh of Google’s MacFUSE.

FUSE

SSHFS iconLet me first state that this topic is going to sound downright dorky, but it’s actually really cool (as any geek would agree). Second, it took me a bit of research, some code digesting and a couple app installs to actually grok this, but now that I do, I think it’s an amazingly powerful demonstration of future web technology. Anyway, don’t say I didn’t warn you.

First, FUSE is a Linux fanboy’s dream — it allows you to hook up your file manager to just about any “collection of stuff”. A germane example might be connecting your Linux computer with a Windows machine in order to read, write and delete files. A less obvious example might be hooking up the Mac Finder up to an RSS feed and treating it like a hard drive where each post represents individual files that you can copy, move and delete.

Not that you would, but you could.

And in fact, Amit Singh, who built MacFUSE, demonstrates that use case in this excellent video. If that doesn’t give you goose-pimples, well… what if you could create “true smart folders, where the folders’ contents are dynamically generated by querying Spotlight.” No? Hmm. Ok.

Well, I’ll leave with you with two examples that might start to shed some light on what’s so interesting about this technology and then follow up with another post that extrapolates on an idea I’ve mentioned before and where I see kind of technology heading (perhaps not in its current form but in a more polished state).

SSHFS

So, let’s say that you want convenient access to SSH storage on your Mac. Ok, no problem. Just install MacFUSE Core, restart, then install sshfs (both files are available here). Load up sshfs, connect to your remote host (for example, on TextDrive, you’d used something like nelson.textdrive.com), enter your password and sshfs’ll mount the remote drive on your desktop, which you can then browse as though it were a local drive — moving, copying, drag and dropping files. In fact, I used this trick to upload the photo in this post.

GmailFS

The second example is definitely not for the faint of heart (and honestly, I couldn’t really get it to work though it compiled and connected just fine). The goal is to enable you to mount your Gmail account on your desktop — which might start to reveal Google’s interest in developing FUSE (more on that later). (Oh, and for the record, gDisk already serves this purpose very well, FYI). So, take a look at the detailed instructions laid out by Jean-Matthieu and then crack open that command line. You’ll need some knowledge of compiling apps (and you’ll need Apple’s developer tools) but it’s still pretty cool to be able to type mount -ovolname=bla -t gmailfs /usr/local/bin/gmailfs.py ~/gmailfs and have your Gmail account pop up on your desktop. Sort of.

Finally, as a bonus, you can mount a number of other services, including RubyForge and soon Blogger.

Given this advance (and Amit’s demonstration of hooking into Picasa, an RSS feed, Gmail, Google Docs and Spotlight) it’s just a matter of time before we’re able to connect natively to remote web services, as we do today over FTP, AFS and Bonjour. I’ll elaborate on just what that might mean in my next post.

7 Comments

  1. at 7am on Jan 26th # |

    I had this exact sort of revelation when Alex Russell was showing me the Jot database technology. Basically, what FUSE creates the potential for was already quite possible using WebDAV.

    WebDAV is really just a protocol extension to HTTP, but the very cool thing about it is that you can *already natively mount it on every popular operating system* including Windows, Linux, and OS X. Mount it. Like a local file system.

    Much like HTTP was originally intended to directly expose a limited set of the server’s filesystem, that’s how DAV has been used for the most part so far. Obviously though, the server implementation can choose not to expose an actual file system, but a virtual file system…

    So with Jot, their database being a very awesome tree-representable node graph, they have an interface to their database via DAV, meaning you can navigate the database quite transparently through the local file system. What’s more, is for every node in the database, you’d get a directory containing several representations of that node (XML, HTML, plain text, etc) that you could open and change, hit save and it would be written to the database.

    That’s when I realized the power of DAV, but not just that, the idea of using the local file system as an interface to very non-file-related systems, like web services, etc.

    I’m not sure why WebDAV isn’t taken advantage more in this way, but I guess we’ll see a lot more of this sort of thing with MacFUSE… for whatever reason… oh yeah, cause you’re blogging about it and evangelizing it. :P

    That reminds me, let’s talk about web hooks more sometime?

  2. Daryl said
    at 1pm on Jan 26th # |

    I’m not sure I understand the benefit of being able to browse something like gmail as if it were a filesystem. Isn’t what gmail offers the snazzy ui that makes mail more manageable? Same for feeds. I don’t see why I’d need to treat feed items like files when there are applications that are built to facilitate convenient viewing of them.

    I suppose there’s potential value in being able to see things like this as files if you’re wanting to do some sort of text analysis (maybe a dashboard widget that scans all your feeds and mail for certain strings and pops those items up in nice Macish light-blue bubbles or something). Is it that sort of mashability that you find so tantalizing? If so, it’s not for me, but I guess I can see the appeal to many.

  3. at 1pm on Jan 26th # |

    Hey Daryl,

    It’s so funny that you seem consistently able to debunk my enthusiasm. ;) It really pushes me to clarify my vision and why things excite me!

    As for your point, I have to write more about it, and then you’ll understand why it’s so interesting to me. RSS and Gmail are only simple examples with obvious object types (posts and messages, respectively). What I have in mind is so much more interesting that I think you’ll agree with where I’m coming from once I explain it.

  4. Daryl said
    at 6am on Jan 29th # |

    I eagerly await your clarification! I don’t mean to be such a wet blanket — I think I’m just something of a luddite at heart and have to be dragged along. :)

  5. Emma said
    at 3pm on Feb 16th # |

    I agree I am not sure either if gmail will work as a desktop application. It will be interesting to see how well this goes.Thanks for the tip I will try it and see if it gives me everything I need. With all the junk mail today I do find gmail much easier than my traditional outlook express. Thanks again for the tip. Emma x

  6. Eric said
    at 9am on Mar 1st # |

    I’m confused by one thing. If I want to mount a volume from my ssh enabled account, I can use MacFuse with sshfs, or I can use sshfs all by itself (http://www.pqrs.org/tekezo/macosx/sshfs/).

    What are the reasons and benefits to use MacFuse in addition to sshfs rather than just use sshfs by itself?

    – Eric

  7. at 12pm on Mar 1st # |

    @Eric: Probably not a whole lot of difference, except with MacFUSE you can mount *arbitrary* file systems besides over SSH. That’s about it.

One Trackback

  1. [...] Register « Technology for the future: MacFUSE [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*