Class: UnpackStrategy::Lzma
- Inherits:
-
Object
- Object
- UnpackStrategy::Lzma
show all
- Includes:
- UnpackStrategy
- Defined in:
- Library/Homebrew/unpack_strategy/lzma.rb
Overview
Strategy for unpacking LZMA archives.
Instance Attribute Summary
#merge_xattrs, #path
Class Method Summary
collapse
Instance Method Summary
collapse
detect, #extract, #extract_nestedly, from_extension, from_magic, from_type, #initialize
#system_command, #system_command!
Class Method Details
15
16
17
|
# File 'Library/Homebrew/unpack_strategy/lzma.rb', line 15
def self.(path)
path.magic_number.match?(/\A\]\000\000\200\000/n)
end
|
.extensions ⇒ Object
11
12
13
|
# File 'Library/Homebrew/unpack_strategy/lzma.rb', line 11
def self.extensions
[".lzma"]
end
|
Instance Method Details
#dependencies ⇒ Object
28
29
30
|
# File 'Library/Homebrew/unpack_strategy/lzma.rb', line 28
def dependencies
@dependencies ||= [Formula["xz"]]
end
|
19
20
21
22
23
24
25
26
|
# File 'Library/Homebrew/unpack_strategy/lzma.rb', line 19
def (unpack_dir, basename:, verbose:)
FileUtils.cp path, unpack_dir/basename, preserve: true
quiet_flags = verbose ? [] : ["-q"]
system_command! "unlzma",
args: [*quiet_flags, "--", unpack_dir/basename],
env: { "PATH" => PATH.new(Formula["xz"].opt_bin, ENV["PATH"]) },
verbose: verbose
end
|