aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Howell2012-03-09 11:36:34 +0000
committerMax Howell2012-03-16 21:06:17 +0000
commit15f3e9ea771c80dd4af2af8840a3609adc873fd3 (patch)
treedc56f1da977d8285e8ac4c5e5c76fbd572e76b9d
parent7280590e881635f4e47bb619043f5bfd1af05780 (diff)
downloadbrew-15f3e9ea771c80dd4af2af8840a3609adc873fd3.tar.bz2
Doctor check for unlinked not-keg-only brews
Since these cause trouble.
-rw-r--r--Library/Homebrew/cmd/doctor.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb
index d71592032..9d4d0abe1 100644
--- a/Library/Homebrew/cmd/doctor.rb
+++ b/Library/Homebrew/cmd/doctor.rb
@@ -842,6 +842,25 @@ def check_for_outdated_homebrew
end
end
+def check_for_unlinked_but_not_keg_only
+ unlinked = HOMEBREW_CELLAR.children.reject do |rack|
+ if not (HOMEBREW_REPOSITORY/"Library/LinkedKegs"/rack.basename).directory?
+ Formula.factory(rack.basename).keg_only? rescue nil
+ else
+ true
+ end
+ end.map{ |pn| pn.basename }
+
+ if not unlinked.empty? then <<-EOS.undent
+ You have unlinked kegs in your Cellar
+ Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
+ those kegs to fail to run properly once built.
+
+ #{unlinked * "\n "}
+ EOS
+ end
+end
+
end # end class Checks
module Homebrew extend self