Tuesday, March 22, 2011

Disabling Dropbox’s Haxie

Dropbox injects code into the Finder in order to draw the green and blue badges atop your icons. I prefer to run a clean system, and it turns out that you can prevent your Finder from being patched by running these two commands in Terminal:

sudo rm -rf /Library/DropboxHelperTools
rm /Applications/Dropbox.app/Contents/Resources/DropboxHelperInstaller.tgz

I first heard about this last year, and indeed it does not seem to interfere with any non-cosmetic functionality. It was also recently recommended in the forum (via John Gruber). Since the haxie is not strictly necessary, I think Dropbox should provide an option in the user interface to turn it off.

Update (2011-04-01): You’ll have to do this each time Dropbox updates itself to a new version.

Update (2011-12-06): With the current version of Dropbox:

sudo rm -rf /Library/DropboxHelperTools
rm /Applications/Dropbox.app/Contents/Resources/DropboxPlugin.plugin.tgz

Update (2012-02-10): With the current version of Dropbox:

sudo rm -rf /Library/DropboxHelperTools
rm /Applications/Dropbox.app/Contents/Resources/DropboxBundle.bundle.tgz

Update (2012-08-16): With the current version of Dropbox:

sudo rm -rf /Library/DropboxHelperTools
rm /Applications/Dropbox.app/Contents/Resources/DropboxHelperInstaller.tgz

8 Comments RSS · Twitter

Interesting. That's why I've never installed Dropbox.

(Though my one tangential concern from reading that one comment in that forum is a worry that Lion is going to somehow stop all Mach Injection. I assume I'm over-reading, but I'm paranoid about Cupertino these days. And if I can't run things like QuicKeys, I'll never go beyond Snow Leopard on the platform. I definitely prefer to run a clean system, except with software I explicitly trust...)

I always wondered how they did it. I like the blue and green icons :-)

Bill Cheeseman

Yikes! I'll have to apply your fix immediately. But what about the APE supporting software itself? -- is it installed by DropBox, too? Where?

Anybody who includes haxies in their product should prominently inform their customers.

"Yikes! I'll have to apply your fix immediately. But what about the APE supporting software itself?"

I haven't installed DropBox cuz I don't like its mandatory use of the methods we're discussing, so I can't speak from experience. But I don't think it's actually using Unsanity's APE stuff. You can use regular old Mach Inject without using APE - aka stuff like the wonderful QuicKeys.

In other words, I think Michael is using the word "haxie" to refer to generic Mach Inject methods, not APE. Though again, I'm not speaking from experience with Dropbox.

(And BTW, you are a golden god, Bill Cheeseman. I couldn't do half the stuff I do on the platform without PreFab. I can never memorize your new company name, so I'll just keep on calling it PreFab.)

"Anybody who includes haxies in their product should prominently inform their customers."

Yup. I'm happy to run QuicKeys, BetterToolTouch, and DefaultFolderX because I understand the cost/benefit tradeoffs involved. But Dropbox seemed to me to use this kind of stuff when it was essentially unnecessary, and that made me not trust their software developers.

Dropbox doesn’t use Application Enhancer. I use “haxie” in the generic sense of any code injection: mach_inject, APE, input managers, scripting additions, contextual menu plug-ins, etc.

The Finder injection and undisclosed poor metadata handling always put me off and didn’t give me much confidence in the Dropbox engineers. However, they’ve since addressed the latter, and I found that the former isn’t required, so I’ve been happily using it since. It’s not perfect, but iDisk and SugarSync have far more serious problems, in my opinion.

"I use “haxie” in the generic sense of any code injection: mach_inject, APE, input managers, scripting additions, contextual menu plug-ins, etc."

To be overly semantic, I wish we had another word besides "haxie" to describe such things.

For one, we should let Unsanity have their unofficial trademark. They try their hardest to write useful stuff in a creative way, and if nothing else, they certainly write the funniest release notes in the business. Props to the crazy ones, even if I removed APE in Snowy due to instability. (I did love the genuine functionality WindowShadeX gave me, and miss it.)

But more importantly, Unsanity's Haxie™ framework seems to be mucking around in a much lower level of your box than other injection methods. I mean, they install inside /System fergawdsakes. Among other things, I can at least quarantine stuff like Default Folder X and QuicKeys to my /Users/Me folder, which lets me troubleshoot into a pristine account when necessary.

But I do fully understand why you used the word "haxie" generically, since we don't seem to have another simple word in common usage. As the the official arbiter of truth says:

"Today, many people call such system enhancement products for Mac OS X "haxies", even though not all use APE."

I just wish we had a different word. Since it seems to be Rentzsch who invented this stuff, I propose the word "wolfs" for generic haxies. Of course, since words need to be generally understood to be useful in communication, "wolfs" or some other better coinage likely won't take root. But in Chucky's perfect world of semantics...

Arjen van Bochoven

In DropBox 1.4.0:

sudo rm -rf /Library/DropboxHelperTools
rm /Applications/Dropbox.app/Contents/Resources/DropboxHelperInstaller.tgz

[…] Previously: Dropbox Modifies TCC.db to Give Itself Accessibility Access, Disabling Dropbox’s Haxie. […]

Leave a Comment