diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb
index 4ba5b78031b71467d6055c3569dd1572215e6c49..382dc5a7155370706305df8f88e429aa9298d2a5 100644
--- a/Library/Homebrew/extend/pathname.rb
+++ b/Library/Homebrew/extend/pathname.rb
@@ -93,6 +93,12 @@ class Pathname
     open("w", *open_args) { |f| f.write(content) }
   end
 
+  def write_binary binary_content
+    raise "Will not overwrite #{to_s}" if exist?
+    dirname.mkpath
+    File.open(self, 'wb') {|f| f.write binary_content }
+  end
+
   # NOTE always overwrites
   def atomic_write content
     require "tempfile"