hackmac 1.0.5 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ace51823e51276ddb181a0b55a6b6173a873fd6f13bf111687f110a26deb7d72
4
- data.tar.gz: 6658c11201212e3ea27c6bf4b8df414869f731dd2fb558119a9b2095b303e825
3
+ metadata.gz: 4ad8e3378122361187eaf1d6691ff4526382f521e8fb27f6097b2fda30ca7de9
4
+ data.tar.gz: 6ced7ebfe46a8e0cd6717952052fd030a0ae8de0581c0863ce3d7d5f35754a02
5
5
  SHA512:
6
- metadata.gz: 3ce29bc9aaa862befea4810dd5f415a433e01a68f2323344adb9794fa43c705d9d4ef68315c093b1b6979d8079a827c2e67d9530eeaafbb07902e015aa5b5291
7
- data.tar.gz: a24dafd13030188a63939eb5fc4795483ddea96837a21b67ae2c6f397b8e56516d99407108937dba6e2d59ce1e5bfe5607f6ace9cbadcb82430476636203a569
6
+ metadata.gz: c37fa57e337228bb7b4ed3980e9cb442e1ee6e5e60cb69e8a276fcff126ba1b220a2f548396897a8e25a8db622902be5f6fcc6a839930d67c8ce1e7bb780bdba
7
+ data.tar.gz: '09f715b888e62586f0ccde586c745474d3c77c695f26e3d4979f26f0269a997773827cb8c2062bcf732b1567b5329988bd9af6104f728163dc99f29064cb3d07'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.5
1
+ 1.1.0
data/bin/efi CHANGED
@@ -68,6 +68,10 @@ def usage
68
68
 
69
69
  Upgrade OpenCore on this partition to newest version
70
70
 
71
+ oc_validate EFI partition
72
+
73
+ validates config.plist in the given EFI
74
+
71
75
  diff EFI partition
72
76
 
73
77
  argument DEVICE (defaults to #{default_dev})
@@ -187,6 +191,10 @@ when 'oc_upgrade'
187
191
  mdev = device_name(ARGV.shift)
188
192
  ocu = OCUpgrader.new(mdev: mdev, config: $config)
189
193
  ocu.perform
194
+ when 'oc_validate'
195
+ mdev = device_name(ARGV.shift)
196
+ ocv = OCValidator.new(mdev: mdev, config: $config)
197
+ ocv.perform or exit 1
190
198
  else
191
199
  fail "don't know how to #{command}"
192
200
  end
data/hackmac.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: hackmac 1.0.5 ruby lib
2
+ # stub: hackmac 1.1.0 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "hackmac".freeze
6
- s.version = "1.0.5"
6
+ s.version = "1.1.0"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
@@ -12,8 +12,8 @@ Gem::Specification.new do |s|
12
12
  s.description = "This ruby gem provides some useful tools for working with a Hackintosh.".freeze
13
13
  s.email = "flori@ping.de".freeze
14
14
  s.executables = ["efi".freeze, "gfxmon".freeze, "usb".freeze]
15
- s.extra_rdoc_files = ["README.md".freeze, "lib/hackmac.rb".freeze, "lib/hackmac/asset_tools.rb".freeze, "lib/hackmac/config.rb".freeze, "lib/hackmac/disks.rb".freeze, "lib/hackmac/github_source.rb".freeze, "lib/hackmac/kext.rb".freeze, "lib/hackmac/kext_upgrader.rb".freeze, "lib/hackmac/oc.rb".freeze, "lib/hackmac/oc_upgrader.rb".freeze, "lib/hackmac/plist.rb".freeze, "lib/hackmac/url_download.rb".freeze, "lib/hackmac/utils.rb".freeze, "lib/hackmac/version.rb".freeze]
16
- s.files = [".gitignore".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "bin/efi".freeze, "bin/gfxmon".freeze, "bin/usb".freeze, "hackmac.gemspec".freeze, "lib/hackmac.rb".freeze, "lib/hackmac/asset_tools.rb".freeze, "lib/hackmac/config.rb".freeze, "lib/hackmac/disks.rb".freeze, "lib/hackmac/github_source.rb".freeze, "lib/hackmac/kext.rb".freeze, "lib/hackmac/kext_upgrader.rb".freeze, "lib/hackmac/oc.rb".freeze, "lib/hackmac/oc_upgrader.rb".freeze, "lib/hackmac/plist.rb".freeze, "lib/hackmac/url_download.rb".freeze, "lib/hackmac/utils.rb".freeze, "lib/hackmac/version.rb".freeze]
15
+ s.extra_rdoc_files = ["README.md".freeze, "lib/hackmac.rb".freeze, "lib/hackmac/asset_tools.rb".freeze, "lib/hackmac/config.rb".freeze, "lib/hackmac/disks.rb".freeze, "lib/hackmac/github_source.rb".freeze, "lib/hackmac/kext.rb".freeze, "lib/hackmac/kext_upgrader.rb".freeze, "lib/hackmac/oc.rb".freeze, "lib/hackmac/oc_upgrader.rb".freeze, "lib/hackmac/oc_validator.rb".freeze, "lib/hackmac/plist.rb".freeze, "lib/hackmac/url_download.rb".freeze, "lib/hackmac/utils.rb".freeze, "lib/hackmac/version.rb".freeze]
16
+ s.files = [".gitignore".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "bin/efi".freeze, "bin/gfxmon".freeze, "bin/usb".freeze, "hackmac.gemspec".freeze, "lib/hackmac.rb".freeze, "lib/hackmac/asset_tools.rb".freeze, "lib/hackmac/config.rb".freeze, "lib/hackmac/disks.rb".freeze, "lib/hackmac/github_source.rb".freeze, "lib/hackmac/kext.rb".freeze, "lib/hackmac/kext_upgrader.rb".freeze, "lib/hackmac/oc.rb".freeze, "lib/hackmac/oc_upgrader.rb".freeze, "lib/hackmac/oc_validator.rb".freeze, "lib/hackmac/plist.rb".freeze, "lib/hackmac/url_download.rb".freeze, "lib/hackmac/utils.rb".freeze, "lib/hackmac/version.rb".freeze]
17
17
  s.homepage = "http://github.com/flori/hackmac".freeze
18
18
  s.rdoc_options = ["--title".freeze, "Hackmac - Some useful tools for working with a Hackintosh".freeze, "--main".freeze, "README.md".freeze]
19
19
  s.rubygems_version = "3.3.14".freeze
@@ -0,0 +1,34 @@
1
+ module Hackmac
2
+ include Hackmac::AssetTools
3
+
4
+ class OCValidator
5
+ def initialize(mdev:, config:)
6
+ @config = config
7
+ mount_path = Pathname.new('/Volumes').join(mdev)
8
+ @config_plist =
9
+ Pathname.new(mount_path).join(@config.oc.efi_path).join('OC/config.plist')
10
+ end
11
+
12
+ def perform
13
+ isolate do |dir|
14
+ oc = OC.new(config: @config)
15
+ name, data = oc.remote.download_asset
16
+ if name
17
+ File.secure_write(name, data)
18
+ decompress(name)
19
+ result = %x(Utilities/ocvalidate/ocvalidate #{@config_plist.to_s.inspect} 2>&1)
20
+ if $?.success?
21
+ STDERR.puts result
22
+ true
23
+ else
24
+ STDERR.puts "Validation has failed!", "", result
25
+ false
26
+ end
27
+ true
28
+ else
29
+ fail "#{oc} could not be downloaded"
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -1,6 +1,6 @@
1
1
  module Hackmac
2
2
  # Hackmac version
3
- VERSION = '1.0.5'
3
+ VERSION = '1.1.0'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/lib/hackmac.rb CHANGED
@@ -14,5 +14,6 @@ require 'hackmac/kext'
14
14
  require 'hackmac/kext_upgrader'
15
15
  require 'hackmac/oc'
16
16
  require 'hackmac/oc_upgrader'
17
+ require 'hackmac/oc_validator'
17
18
  require 'hackmac/config'
18
19
  require 'hackmac/utils'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hackmac
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank
@@ -154,6 +154,7 @@ extra_rdoc_files:
154
154
  - lib/hackmac/kext_upgrader.rb
155
155
  - lib/hackmac/oc.rb
156
156
  - lib/hackmac/oc_upgrader.rb
157
+ - lib/hackmac/oc_validator.rb
157
158
  - lib/hackmac/plist.rb
158
159
  - lib/hackmac/url_download.rb
159
160
  - lib/hackmac/utils.rb
@@ -177,6 +178,7 @@ files:
177
178
  - lib/hackmac/kext_upgrader.rb
178
179
  - lib/hackmac/oc.rb
179
180
  - lib/hackmac/oc_upgrader.rb
181
+ - lib/hackmac/oc_validator.rb
180
182
  - lib/hackmac/plist.rb
181
183
  - lib/hackmac/url_download.rb
182
184
  - lib/hackmac/utils.rb