To Repair or not to Repair

I don't really understand why everyone's all of a sudden interested in the Repair Permissions function of Disk Utility. But lately there's been a flurry of writings on the subject of whether or not you should repair permissions before and/or after a software update. It started way the hell back in god-knows-when (actually it was in May of 2005) with an article by a guy called Rosyna who happens to make Unsanity's haxies. This was only recently followed up with two posts by the brilliant author of Daring Fireball, John Gruber. In his second post he blasts MacFixIt for recommending the procedure. And now we have a rather thorough response from them as well.

Why, it's a regular permissions flame war, I tell ya.

Well, I wanted to weigh in on this from my own personal experience, briefly. As someone who manages rooms full of Macintosh computers that are chock full of every imaginable piece of software — both from Apple and third-party vendors — on a daily basis, I have to say, repairing permissions before and/or after a software update — or on a regular basis for that matter — is a perfectly reasonable precautionary measure. I can't tell you how many times a simple permissions repair has fixed an errant problem on a workstation or a client computer. Repair Permissions has saved my ass on countless occasions. And as far as repairing permissions affecting software updates goes, it seems to me that if an incorrect permission can affect overall system or application behavior, it's quite likely it could affect a software update. What happens when the software update package runs and hits a file it's supposed to modify or replace but can't because the permissions are incorrect? Well, seems to me like that could screw things up and leave you with an incomplete install of the update. And that could be bad. This doesn't sound like voodoo to me; it sounds like common sense.

So why doesn't Apple recommend repairing permissions before/after software updates? Well, I have long thought they should. In fact, I think it would be really smart if Apple's software updaters checked the permissions of any dependencies needed by the updater and alerted you to any inconsistencies, then allowed you to choose whether or not to proceed with a repair of the incorrect permissions, and finally proceeded with the update. I doubt this will happen, but a boy can dream. I think the reason Apple doesn't recommend repairing permissions on any sort of regular basis, or before or after a software update, is because they are loathe to admit the generally sad state of permissions settings in the OS. Permissions get changed on a very regular basis. Epson printer software regularly changes permissions on my systems. Flash Player updates do too. And that's just off the top of my head. The fact is, just about any third-party app that installs with an installer (as opposed to drag and drop) can change permissions on any file it wants, and this happens routinely. I've even seen Apple software updates change permissions on my systems (though, admittedly, this hasn't happened for a long time). Basically, Apple just doesn't want to say up front, "Look, this software update might break something, or a third-party app might have changed something that will break something when you install this update, so you should take certain precautions," because doing so would be like saying, "there are huge problems with our permissions model which has gotten much better, but is still seriously flawed in many respects."

So there's an unspoken rule that you should do some general permissions repair on a semi-regular basis. Actually, it's not even unspoken, it's just buried in Apple's Knowledge Base. The fact that the Repair Permissions function exists at all is proof that there is wonkiness in the permissions system, and that running this routine can actually fix stuff. It sure makes a lot of sense to me to perform whatever fixes you can before running a software or OS update, and if that includes Repair Permissions, then that's fine. It takes about one minute of my time and, if nothing else, is well worth the peace of mind it provides.

My question is, why now, guys? Why all of a sudden is this such an issue? The Repair Permissions function has been around for years, and MacFixIt has recommended using it for almost as long. And why John Gruber cares what I do to my system before and after a software update is beyond me. But frankly, I think I trust the MacFixIt guys — and myself — on this one. Don't get me wrong. I love Daring Fireball. It's one of my favorite sites. But MacFixIt — like myself — is in the business of troubleshooting. They/we know about what works and what doesn't. Out there. In the big, bad, complicated world of multiple computers with every imaginable combination of hardware and software, where things most definitely and most decidedly go very, very wrong. I mean, where do you go for troubleshooting advice?

Anyway, I think this whole thing is silly. I respect both these sites immensely, and it pains me to see them argue over such a trivial piece of advice.

Guys, can't we all just get along?