diff options
| author | Max Howell | 2012-08-10 09:33:33 -0400 |
|---|---|---|
| committer | Max Howell | 2012-08-10 09:33:44 -0400 |
| commit | 45b84df1bdcbdcd75022e024d1cf400f1c73fdaa (patch) | |
| tree | 0b509263c88e961c6558f10d616bb66dcc7b6de8 /Library | |
| parent | f5eaef0aeef134468f3681962d4bf2934ec015d3 (diff) | |
| download | brew-45b84df1bdcbdcd75022e024d1cf400f1c73fdaa.tar.bz2 | |
Be more verbose when users insist on being sudoers
If you google for "Cowardly refusing to sudo brew" you get a lot of confused users who didn't read any of the Homebrew documentation and then had a hissy-fit.
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/install.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/link.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/exceptions.rb | 8 |
3 files changed, 11 insertions, 7 deletions
diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index aa7987048..319b277fd 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -2,7 +2,7 @@ require 'formula_installer' require 'hardware' require 'blacklist' -module Homebrew extend self +module Homebrew extend self def install raise FormulaUnspecifiedError if ARGV.named.empty? @@ -15,9 +15,7 @@ module Homebrew extend self end unless ARGV.force? if Process.uid.zero? and not File.stat(HOMEBREW_BREW_FILE).uid.zero? - # note we only abort if Homebrew is *not* installed as sudo and the user - # calls brew as root. The fix is to chown brew to root. - abort "Cowardly refusing to `sudo brew install'" + raise "Cowardly refusing to `sudo brew install'\n#{SUDO_BAD_ERRMSG}" end install_formulae ARGV.formulae diff --git a/Library/Homebrew/cmd/link.rb b/Library/Homebrew/cmd/link.rb index 2595af3b8..8e942cd91 100644 --- a/Library/Homebrew/cmd/link.rb +++ b/Library/Homebrew/cmd/link.rb @@ -4,9 +4,7 @@ module Homebrew extend self raise KegUnspecifiedError if ARGV.named.empty? if Process.uid.zero? and not File.stat(HOMEBREW_BREW_FILE).uid.zero? - # note we only abort if Homebrew is *not* installed as sudo and the user - # calls brew as root. The fix is to chown brew to root. - abort "Cowardly refusing to `sudo brew link'" + raise "Cowardly refusing to `sudo brew link'\n#{SUDO_BAD_ERRMSG}" end if ARGV.force? then mode = :force diff --git a/Library/Homebrew/exceptions.rb b/Library/Homebrew/exceptions.rb index 9ed6646f1..5dd2209b2 100644 --- a/Library/Homebrew/exceptions.rb +++ b/Library/Homebrew/exceptions.rb @@ -179,3 +179,11 @@ class ChecksumMismatchError < RuntimeError super + advice.to_s end end + +module Homebrew extend self + SUDO_BAD_ERRMSG = <<-EOS.undent + You can use brew with sudo, but only if the brew executable is owned by root. + However, this is both not recommended and completely unsupported so do so at + your own risk. + EOS +end |
