diff options
| author | Adam Vandenberg | 2010-06-28 21:28:01 -0700 |
|---|---|---|
| committer | Adam Vandenberg | 2010-06-30 10:14:33 -0700 |
| commit | 4490b739d5e71912bdd99daa5ab02f9c0b3433e8 (patch) | |
| tree | ff863e852dde4e4f9c11908253cf199fb94cac82 /Library | |
| parent | b583d0ae488d33ed88c40818636de4bdb50db34b (diff) | |
| download | brew-4490b739d5e71912bdd99daa5ab02f9c0b3433e8.tar.bz2 | |
Add flat-.pkg support to CurlDownloadStrategy
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/download_strategy.rb | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index 2fb7d7c97..6176e4970 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -68,6 +68,9 @@ class CurlDownloadStrategy <AbstractDownloadStrategy def stage if @tarball_path.extname == '.jar' magic_bytes = nil + elsif @tarball_path.extname == '.pkg' + # Use more than 4 characters to not clash with magicbytes + magic_bytes = "____pkg" else # get the first four bytes File.open(@tarball_path) { |f| magic_bytes = f.read(4) } @@ -82,6 +85,9 @@ class CurlDownloadStrategy <AbstractDownloadStrategy # TODO check if it's really a tar archive safe_system '/usr/bin/tar', 'xf', @tarball_path chdir + when '____pkg' + safe_system '/usr/sbin/pkgutil', '--expand', @tarball_path, File.basename(@url) + chdir when 'Rar!' quiet_safe_system 'unrar', 'x', {:quiet_flag => '-inul'}, @tarball_path else |
