Tag Archives: fix

MacFUSE, EncFS, Snow Leopard, and MacBook Pro 2011

There is a problem with modern Macs and MacFUSE: Since every recently shipped Mac has set the Mac OS X kernel to 64bit mode by default, MacFUSE 2.0.3 wont run properly anymore.

Unfortunately, there hasn’t been any official release that fully supports the 64bit kernel yet. However, there seem to be two unofficial releases (namely 2.1.7 and 2.1.9), that work around this problem. Some reading in several Google groups indicates to me, that at least the 2.1.7 “release” should be avoided, because it suffers from serious issues (e.g. it is not considered to be thread safe).

However, the second release seems to work fine for people.

Remove MacFUSE first

Before you download and install this version, make sure to unsinstall the current installation of MacFUSE first.

You can do so by opening the System Preferences and choose “Remove MacFUSE” from the MacFUSE preference panel.

Also, if you installed MacFUSE using Macports, make sure to uninstall the package using macports.

$ sudo port uninstall macfuse

In order to make sure, that MacFUSE has been successfully removed, check that the following files are not present anymore.

  • MacFUSE file system bundle (/Library/Filesystems/fusefs.fs)
  • MacFUSE Objective-C framework (/Library/Frameworks/MacFUSE.framework)
  • MacFUSE C-based libraries (/usr/local/lib/*fuse*.dylib) and headers (/usr/local/include/fuse*)
  • MacFUSE preference pane (/Library/PreferencePanes/MacFUSE.prefPane)

(List taken from the MacFUSE FAQ.)

Remove EncFS

In my case, I need MacFUSE in order to use EncFS to store encrypted files on my Dropbox. If you are using some other filesystem with MacFUSE I strongly suggest to remove it first and reinstall it later in order to make sure, that the 64bit version is used.

There are several ways to install encfs. Depending on which you chose, there are different ways to remove it again.

In the course of this tutorial we will later install encfs in /usr/local/. So just make sure that it not installed in any other path anymore. Especially, if you installed it using macports, uninstall it now.

$ sudo port uninstall encfs

Remove macports

I highly recommend to switch from MacPorts to Homebrew. The later is a replacement for the former and seems to be much more actively supported. Find instructions on how to remove macports in the macports online documentation.

When done, checkout Homebrew and install it as described on its GitHub page. Use the default install prefix. This will make Homebrew install packages in /usr/local/.


In order to install MacFUSE and EncFS on Snow Leopard in 64bit mode, you will need the following:

Install EncFS 1.7.4 using Homebrew

Simply enter the following line in a terminal window.

$ brew install encfs

Homebrew will download and install all required dependencies automatically.

Fixing a mysterious iChat Agent crash

I’ve been haunted by a mysterious iChat problem for the past week. Once in a while (speak: randomly) iChat would disconnect from all accounts and display an error message, telling me that the iChat Agent unexpectedly quit. I then had to reconnect my accounts manually.

In system.log the following entry caught my attention:
iChatAgent[191]: WARNING: iChatAgent exception caught on main thread: *** -[NSCFArray objectAtIndex:]: index (0) beyond bounds (0)
Obviously iChat Agent tries to acces an empty array and this throws an exception. After some googleing, I found a post in the Apple Discussion Groups mentioning this crash happens when a buddy connects or disconnects. The solution is as simple as weird. Just remove some buddy and add him again! No problems again for me.