Sha256: 959af6551e0425f7093f909feba69f75a98de4b3db78d41ac023e94f58678717

Contents?: true

Size: 428 Bytes

Versions: 8

Compression:

Stored size: 428 Bytes

Contents

# frozen_string_literal: true

require 'zip'
require 'plist'

module MooTool
  # Represents a single IPSW package
  class IPSW
    def initialize(file)
      @file = file
      @zip = Zip::File.open(file)
      manifest = @zip.find_entry('BuildManifest.plist')

      raise 'Invalid IPSW, does not contain BuildManifest.plist' unless manifest

      @manifest = Plist.parse_xml(manifest.get_input_stream.read)
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
mootool-0.2.7 lib/mootool/models/ipsw.rb
mootool-0.2.6 lib/mootool/models/ipsw.rb
mootool-0.2.5 lib/mootool/models/ipsw.rb
mootool-0.2.4 lib/mootool/models/ipsw.rb
mootool-0.2.3 lib/mootool/models/ipsw.rb
mootool-0.2.2 lib/mootool/models/ipsw.rb
mootool-0.2.1 lib/mootool/models/ipsw.rb
mootool-0.2 lib/mootool/models/ipsw.rb