Fix extracting .pax archives.
This commit is contained in:
parent
1fe8cf7079
commit
06549c751b
@ -30,6 +30,7 @@ module UnpackStrategy
|
||||
def self.strategies
|
||||
@strategies ||= [
|
||||
Tar, # needs to be before Bzip2/Gzip/Xz/Lzma
|
||||
Pax,
|
||||
Gzip,
|
||||
Lzma,
|
||||
Xz,
|
||||
@ -78,7 +79,7 @@ module UnpackStrategy
|
||||
end
|
||||
|
||||
def self.from_extension(extension)
|
||||
strategies.sort_by { |s| s.extensions.map(&:length).max(0) }
|
||||
strategies.sort_by { |s| s.extensions.map(&:length).max || 0 }
|
||||
.reverse
|
||||
.find { |s| s.extensions.any? { |ext| extension.end_with?(ext) } }
|
||||
end
|
||||
@ -165,6 +166,7 @@ require "unpack_strategy/mercurial"
|
||||
require "unpack_strategy/microsoft_office_xml"
|
||||
require "unpack_strategy/otf"
|
||||
require "unpack_strategy/p7zip"
|
||||
require "unpack_strategy/pax"
|
||||
require "unpack_strategy/pkg"
|
||||
require "unpack_strategy/rar"
|
||||
require "unpack_strategy/self_extracting_executable"
|
||||
|
||||
24
Library/Homebrew/unpack_strategy/pax.rb
Normal file
24
Library/Homebrew/unpack_strategy/pax.rb
Normal file
@ -0,0 +1,24 @@
|
||||
module UnpackStrategy
|
||||
class Pax
|
||||
include UnpackStrategy
|
||||
|
||||
using Magic
|
||||
|
||||
def self.extensions
|
||||
[".pax"]
|
||||
end
|
||||
|
||||
def self.can_extract?(_path)
|
||||
false
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def extract_to_dir(unpack_dir, basename:, verbose:)
|
||||
system_command! "pax",
|
||||
args: ["-rf", path],
|
||||
chdir: unpack_dir,
|
||||
verbose: verbose
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
x
Reference in New Issue
Block a user