aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd/untap.rb
blob: 78778e6fc19104a163bb13a5053b363f28fd8572 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
require 'cmd/tap' # for Pathname.recursive_formula

module Homebrew extend self
  def untap
    user, repo = tap_args
    tapd = HOMEBREW_PREFIX/"Library/Taps/#{user}-#{repo}"

    raise "No such tap!" unless tapd.directory?

    tapd.find_formula do |pn|
      pn = HOMEBREW_REPOSITORY/"Library/Formula"/pn.basename
      pn.delete if pn.symlink? and pn.realpath.to_s =~ %r[^#{tapd.realpath}]
    end

    rm_rf tapd
  end
end