brew/Library/Homebrew/cmd/uninstall.rb
Charlie Sharpsteen 94dba21f7d Centralize definition of rack in formula.rb
`rack` is a commonly used alias for `formula.prefix.parent`---so common that it
gets defined and used quite a bit. This patch makes `rack` an official method
of the `Formula` class.
2011-09-16 08:55:38 -07:00

31 lines
683 B
Ruby

require 'keg'
module Homebrew extend self
def uninstall
unless ARGV.force?
ARGV.kegs.each do |keg|
puts "Uninstalling #{keg}..."
keg.unlink
keg.uninstall
end
else
ARGV.formulae.each do |f|
if f.rack.directory?
puts "Uninstalling #{f}..."
f.rack.children.each do |keg|
if keg.directory?
keg = Keg.new(keg)
keg.unlink
keg.rmtree
end
end
f.rack.rmtree
end
end
end
rescue MultipleVersionsInstalledError => e
onoe e
puts "Use `brew remove --force #{e.name}` to remove all versions."
end
end