48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| class Tap
 | |
|   module Compat
 | |
|     def initialize(user, repo)
 | |
|       super
 | |
| 
 | |
|       return unless user == "caskroom"
 | |
| 
 | |
|       old_initial_revision_var = "HOMEBREW_UPDATE_BEFORE#{repo_var}"
 | |
|       old_current_revision_var = "HOMEBREW_UPDATE_AFTER#{repo_var}"
 | |
| 
 | |
|       new_user = "Homebrew"
 | |
|       new_repo = (repo == "cask") ? repo : "cask-#{repo}"
 | |
| 
 | |
|       old_name = name
 | |
|       old_path = path
 | |
|       old_remote = path.git_origin
 | |
| 
 | |
|       clear_cache
 | |
|       super(new_user, new_repo)
 | |
| 
 | |
|       return unless old_path.directory?
 | |
| 
 | |
|       new_initial_revision_var = "HOMEBREW_UPDATE_BEFORE#{repo_var}"
 | |
|       new_current_revision_var = "HOMEBREW_UPDATE_AFTER#{repo_var}"
 | |
| 
 | |
|       ENV[new_initial_revision_var] ||= ENV[old_initial_revision_var]
 | |
|       ENV[new_current_revision_var] ||= ENV[old_current_revision_var]
 | |
| 
 | |
|       new_name = name
 | |
|       new_path = path
 | |
|       new_remote = default_remote
 | |
| 
 | |
|       ohai "Migrating tap #{old_name} to #{new_name}..." if $stdout.tty?
 | |
| 
 | |
|       if old_path.git?
 | |
|         puts "Changing remote from #{old_remote} to #{new_remote}..." if $stdout.tty?
 | |
|         old_path.git_origin = new_remote
 | |
|       end
 | |
| 
 | |
|       puts "Moving #{old_path} to #{new_path}..." if $stdout.tty?
 | |
|       path.dirname.mkpath
 | |
|       FileUtils.mv old_path, new_path
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   prepend Compat
 | |
| end
 | 
