From 0d44609dfb046c673ff2f745d2287ed9734791fa Mon Sep 17 00:00:00 2001 From: Les Hill Date: Sun, 19 Jun 2011 09:20:47 -0700 Subject: [PATCH] doctor: check /usr/local for writablity - Airfoil during the install of InstantOn changes /usr/local to root:wheel ownership Signed-off-by: Adam Vandenberg --- Library/Homebrew/cmd/doctor.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb index 91df75d682..9374d19aa4 100644 --- a/Library/Homebrew/cmd/doctor.rb +++ b/Library/Homebrew/cmd/doctor.rb @@ -240,6 +240,24 @@ def __check_subdir_access base end end +def check_access_usr_local + return unless HOMEBREW_PREFIX.to_s == '/usr/local' + + unless Pathname('/usr/local').writable? + puts <<-EOS.undent + The /usr/local directory is not writable. + + Even if this folder was writable when you installed Homebrew, other + software may change permissions on this folder. Some versions of the + "InstantOn" component of Airfoil are known to do this. + + You should probably change the ownership and permissions of /usr/local + back to your user account. + + EOS + end +end + def check_access_share_locale __check_subdir_access 'share/locale' end @@ -721,6 +739,7 @@ module Homebrew extend self check_for_other_package_managers check_for_x11 check_for_nonstandard_x11 + check_access_usr_local check_access_include check_access_etc check_access_share