hackmac 1.0.5 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
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