mobo 0.0.4 → 0.0.5

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
  SHA1:
3
- metadata.gz: ec492a01d8e2c5e073f564253929c3de1bea2e14
4
- data.tar.gz: 847a8263a0f14aa1d8bbf6e36279788853d5d5c6
3
+ metadata.gz: 71137bc9522c5c48582848734659b0f57d8e97fb
4
+ data.tar.gz: 283d8f1f33151de0dfd6a89ba35f9f522b9db44c
5
5
  SHA512:
6
- metadata.gz: 371938188360908000aa6eb0415c35b955c1a4be1495627a40804f65528eb068db216d668a3d832c29acdbd7c2aa7dea738dc475b4f6215231503349c10338a7
7
- data.tar.gz: 343f1fb59c6b9ea4a68b1af77b3b530446c0c81fa97aa4dd92d9bec3c686f20cedc7aeae3a8c51aa3a6466055e2794c11a480bb012ef0d818b554ad1b5857434
6
+ metadata.gz: 189e323da8cf03c47ad23580989e3ae52bb2be0357ff05feef8ec8cb293695035921a6db7c9db463556e5932da00425f1f1b0f08439e1ca63adc3081a8f23c6e
7
+ data.tar.gz: 356ecc17cdf44f30c863880042dd0290341163c1fbf6a247fa59ab43be5d716cb1d88608a6d65675b8e259799be3835d1e5825b1747f92feb8a32ba36ee73305
data/lib/mobo.rb CHANGED
@@ -22,6 +22,10 @@ module Mobo
22
22
  @home_dir + '/android-sdk'
23
23
  end
24
24
 
25
+ def avd_home
26
+ @home_dir + '/avd'
27
+ end
28
+
25
29
  def cmd(command)
26
30
  log.debug(command)
27
31
  system(command)
@@ -57,7 +61,7 @@ module Mobo
57
61
  "abi" => "x86_64",
58
62
  "height" => "1200",
59
63
  "width" => "720",
60
- "sdcard_size" => "20M" }
64
+ "sdcard" => "20M" }
61
65
  device = defaults.merge(device)
62
66
  end
63
67
 
data/lib/mobo/android.rb CHANGED
@@ -43,6 +43,25 @@ module Mobo
43
43
  def install_package(package)
44
44
  Mobo.cmd("echo y | android update sdk --no-ui --all --filter #{package}")
45
45
  end
46
+
47
+ def haxm_installed?
48
+ if SystemCheck.osx?
49
+ Mobo.cmd("kextstat | grep intel")
50
+ end
51
+ end
52
+
53
+ def install_haxm
54
+ if SystemCheck.osx?
55
+ install_package("extra-intel-Hardware_Accelerated_Execution_Manager")
56
+ Mobo.cmd("hdiutil attach #{Mobo.android_home}/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.dmg")
57
+ Mobo.log.info("Using the sudo command to install haxm - Intel Hardware Accelerated Execution Manager")
58
+ haxm_mount_point = Dir["/Volumes/IntelHAXM*"].first
59
+ Mobo.cmd("sudo installer -pkg #{haxm_mount_point}/*.mpkg -target /")
60
+ Mobo.cmd("hdiutil detach #{haxm_mount_point}")
61
+ else
62
+ raise "Platform not supported for haxm installation yet"
63
+ end
64
+ end
46
65
  end
47
66
 
48
67
  module Targets
@@ -87,6 +106,7 @@ module Mobo
87
106
  --name #{device["name"]} \
88
107
  --target #{device["target"]} \
89
108
  --abi #{device["abi"]} \
109
+ --path #{Mobo.avd_home}/#{device["name"]} \
90
110
  --force"
91
111
  emulator_cmd += " --skin #{device["skin"]}" if device["skin"]
92
112
  Mobo.cmd(emulator_cmd)
@@ -146,12 +166,12 @@ module Mobo
146
166
  end
147
167
 
148
168
  def create_sdcard
149
- @device["sdcard"] = "#{@device["name"]}_sdcard.img"
150
- Mobo.cmd("mksdcard -l e #{@device["sdcard_size"]} #{@device["sdcard"]}")
169
+ @device["sdcard_img"] = "#{@device["name"]}_sdcard.img"
170
+ Mobo.cmd("mksdcard -l e #{@device["sdcard"]} #{@device["sdcard_img"]}")
151
171
  end
152
172
 
153
173
  def destroy_sdcard
154
- Mobo.cmd("rm -f #{@device["sdcard"]}")
174
+ Mobo.cmd("rm -f #{@device["sdcard_img"]}")
155
175
  end
156
176
 
157
177
  def create_cache
@@ -169,7 +189,7 @@ module Mobo
169
189
 
170
190
  cmd ="emulator @#{@device["name"]} \
171
191
  -port #{@device["port"]} \
172
- -sdcard #{@device["sdcard"]} \
192
+ -sdcard #{@device["sdcard_img"]} \
173
193
  -cache #{@device["cache"]}"
174
194
  pid = Process.fork {
175
195
  Mobo.cmd(cmd)
@@ -5,6 +5,8 @@ module Mobo
5
5
  def base_libraries
6
6
  if SystemCheck.ubuntu?
7
7
  Mobo.cmd("sudo apt-get install -y libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1")
8
+ elsif SystemCheck.osx?
9
+ Android.install_haxm unless Android.haxm_installed?
8
10
  end
9
11
  end
10
12
 
@@ -12,6 +14,7 @@ module Mobo
12
14
  Mobo.home_dir = File.expand_path("~/.mobo")
13
15
  Mobo.log.info("Using #{Mobo.home_dir} as home directory. Android will be installed here")
14
16
  Dir.mkdir(Mobo.home_dir) unless File.exists?(Mobo.home_dir)
17
+ Dir.mkdir(Mobo.avd_home) unless File.exists?(Mobo.avd_home)
15
18
  end
16
19
 
17
20
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mobo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark O'Shea