aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMike McQuaid2017-03-23 10:00:47 +0000
committerGitHub2017-03-23 10:00:47 +0000
commitf8cf506670bfd9d6d931411eb0c4b74c040f90df (patch)
tree65269aab65e026f16bdde916752401fdf55ea85e /Library
parent53bcec7679edab4df0b355dfbbef85175da9e75f (diff)
parent4cae6a724e6d684eb157dd6d7328755694f228b2 (diff)
downloadbrew-f8cf506670bfd9d6d931411eb0c4b74c040f90df.tar.bz2
Merge pull request #2372 from MikeMcQuaid/link-keg-only-path-message
link: tell users of `brew link --force` about opt.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cmd/link.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/Library/Homebrew/cmd/link.rb b/Library/Homebrew/cmd/link.rb
index 98cf98bf7..293f09eef 100644
--- a/Library/Homebrew/cmd/link.rb
+++ b/Library/Homebrew/cmd/link.rb
@@ -44,6 +44,7 @@ module Homebrew
elsif keg_only && !ARGV.force?
opoo "#{keg.name} is keg-only and must be linked with --force"
puts "Note that doing so can interfere with building software."
+ puts_keg_only_path_message(keg)
next
elsif mode.dry_run && mode.overwrite
puts "Would remove:"
@@ -53,6 +54,7 @@ module Homebrew
elsif mode.dry_run
puts "Would link:"
keg.link(mode)
+ puts_keg_only_path_message(keg) if keg_only
next
end
@@ -69,10 +71,25 @@ module Homebrew
else
puts "#{n} symlinks created"
end
+
+ if keg_only && !ARGV.homebrew_developer?
+ puts_keg_only_path_message(keg)
+ end
end
end
end
+ def puts_keg_only_path_message(keg)
+ bin = keg/"bin"
+ sbin = keg/"sbin"
+ return if !bin.directory? && !sbin.directory?
+
+ opt = HOMEBREW_PREFIX/"opt/#{keg.name}"
+ puts "\nIf you need to have this software first in your PATH instead consider running:"
+ puts " #{Utils::Shell.prepend_path_in_shell_profile(opt)}/bin" if bin.directory?
+ puts " #{Utils::Shell.prepend_path_in_shell_profile(opt)}/sbin" if sbin.directory?
+ end
+
def keg_only?(rack)
Formulary.from_rack(rack).keg_only?
rescue FormulaUnavailableError, TapFormulaAmbiguityError, TapFormulaWithOldnameAmbiguityError