From 32b1d46c966c790f1a04b1848ebc25b1170f5295 Mon Sep 17 00:00:00 2001 From: Sijawusz Pur Rahnama Date: Sun, 28 Oct 2012 19:29:24 +0100 Subject: [PATCH] Add support for 7zip archives Closes Homebrew/homebrew#15723. Signed-off-by: Jack Nagel --- Library/Homebrew/download_strategy.rb | 3 +++ Library/Homebrew/extend/pathname.rb | 1 + 2 files changed, 4 insertions(+) diff --git a/Library/Homebrew/download_strategy.rb b/Library/Homebrew/download_strategy.rb index f0347d7621..4eea660953 100644 --- a/Library/Homebrew/download_strategy.rb +++ b/Library/Homebrew/download_strategy.rb @@ -98,6 +98,9 @@ class CurlDownloadStrategy < AbstractDownloadStrategy when :rar raise "You must install unrar: brew install unrar" unless which "unrar" quiet_safe_system 'unrar', 'x', {:quiet_flag => '-inul'}, @tarball_path + when :p7zip + raise "You must install 7zip: brew install p7zip" unless which "7zr" + safe_system '7zr', 'x', @tarball_path else # we are assuming it is not an archive, use original filename # this behaviour is due to ScriptFileFormula expectations diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index bfbb448cf1..8e4842a83f 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -194,6 +194,7 @@ class Pathname case extname when ".tar.gz", ".tgz", ".tar.bz2", ".tbz" then :tar when ".zip" then :zip + when ".7z" then :p7zip end end end