39 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require 'formula'
 | |
| require 'bottles'
 | |
| require 'tab'
 | |
| 
 | |
| module Homebrew extend self
 | |
|   def bottle_formula f
 | |
|     unless f.installed?
 | |
|       return ofail "Formula not installed: #{f.name}"
 | |
|       return
 | |
|     end
 | |
| 
 | |
|     unless built_as_bottle? f
 | |
|       return ofail "Formula not installed with '--build-bottle': #{f.name}"
 | |
|     end
 | |
| 
 | |
|     directory = Pathname.pwd
 | |
|     bottle_version = bottle_new_version f
 | |
|     filename = bottle_filename f, bottle_version
 | |
| 
 | |
|     HOMEBREW_CELLAR.cd do
 | |
|       ohai "Bottling #{f.name} #{f.version}..."
 | |
|       # Use gzip, faster to compress than bzip2, faster to uncompress than bzip2
 | |
|       # or an uncompressed tarball (and more bandwidth friendly).
 | |
|       safe_system 'tar', 'czf', directory/filename, "#{f.name}/#{f.version}"
 | |
|       puts "./#{filename}"
 | |
|       puts "bottle do"
 | |
|       puts "  version #{bottle_version}" if bottle_version > 0
 | |
|       puts "  sha1 '#{(directory/filename).sha1}' => :#{MacOS.cat}"
 | |
|       puts "end"
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def bottle
 | |
|     ARGV.formulae.each do|f|
 | |
|       bottle_formula Formula.factory f
 | |
|     end
 | |
|   end
 | |
| end
 | 
