motion-rubberstamp 0.0.2 → 0.0.3

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
  SHA1:
3
- metadata.gz: 09c94709ac1098ae2c3011e8bca69a81c3f89911
4
- data.tar.gz: 8e5280e625f2467ebc145c742f9673e23fe42e23
3
+ metadata.gz: e73596661dda135a369015be51b33506ee2b7315
4
+ data.tar.gz: a03d5fb671385ad48b8f39b208579e0e556a0935
5
5
  SHA512:
6
- metadata.gz: ea25bf0b321357c579ab0f2e41c8e6eae666e6045787407af2b90240dc284ed35926995d02a83f4647234c44abd7656329dfb2471ad2c4eedc34bd7dea45de88
7
- data.tar.gz: 2bbe6f25f68c2906f18d897aad01fc6c8914e5efa30c0811c6b2a968dc387d586c26320195f2e20cf359c9c65e068c7a19d337ed45db3fdba6f07411d8c816f7
6
+ metadata.gz: 42c3ad2a8fba5cf48df1017c78c11b538a9bcd3664dbb5f79b5cc90deb5cb8d915408c0208fc82383e08502da49d977678649571eeca18fd5c2b0807e38c11ba
7
+ data.tar.gz: 10a53c9418f69698f20e336819bb728aea3fade3faf231e2ec6d32a4ad70e3369956c38d30ef542980bcbc9ff89576db9248413b7c90fb1f69bdb594dc7917c7
data/README.md CHANGED
@@ -1,21 +1,21 @@
1
1
  # Motion-Rubberstamp
2
2
 
3
+ ![motion-rubberstamp](https://s3.amazonaws.com/iconoclastweb/github/motion-rubberstamp/logo_200.png "motion-rubberstamp")
4
+ App Icon _Before_:
5
+ ![Before motion-rubberstamp](https://s3.amazonaws.com/iconoclastweb/github/icon_before.png "Before motion-rubberstamp")
6
+ App Icon _After:_
7
+ ![After motion-rubberstamp](https://s3.amazonaws.com/iconoclastweb/github/icon_after.png "After motion-rubberstamp")
8
+
3
9
  This is aimed at being a development tool, it will create an
4
10
  overlay for your iOS app icon that includes your version, commit
5
11
  and branch information so you can know exactly what version of
6
12
  your app is running on your device, or so that beta testers can
7
13
  easily report which version they are running.
8
14
 
9
- Here's what it does:
10
-
11
- Before:
12
- ![Before motion-rubberstamp](https://s3.amazonaws.com/iconoclastweb/github/icon_before.png "Before motion-rubberstamp")
13
- After:
14
- ![After motion-rubberstamp](https://s3.amazonaws.com/iconoclastweb/github/icon_after.png "After motion-rubberstamp")
15
-
16
15
  ## Installation
17
16
 
18
- Add this line to your RubyMotion app's Gemfile:
17
+ ### Gemfile Install
18
+ Add this line to your RubyMotion app's [Gemfile](http://gembundler.com/v1.3/rubymotion.html):
19
19
 
20
20
  gem 'motion-rubberstamp'
21
21
 
@@ -23,6 +23,7 @@ And then execute:
23
23
 
24
24
  $ bundle
25
25
 
26
+ ### Manual Install
26
27
  Or install it manually as:
27
28
 
28
29
  $ gem install motion-rubberstamp
@@ -31,6 +32,7 @@ and add to your RubyMotion app's Rakefile
31
32
 
32
33
  require 'motion-rubberstamp'
33
34
 
35
+ ### Dependencies
34
36
  This gem also relies on imagemagick and ghostscript, which
35
37
  can easily be installed via [Homebrew](http://mxcl.github.io/homebrew/):
36
38
 
@@ -40,13 +42,16 @@ can easily be installed via [Homebrew](http://mxcl.github.io/homebrew/):
40
42
 
41
43
  ## Usage
42
44
 
45
+ #### Installing the Gem is all that's needed to get started.
43
46
  Motion-rubberstamp adds itself to the build process, so whenever you run `rake` or `rake device` it will
44
47
  automatically invoke `rake rubberstamp:run` beforehand.
45
48
 
46
- When you run `rake archive` or `rake archive:distribution`, motion-rubberstamp will automatically invoke
49
+ _Smart Cleanup:_ When you run `rake archive` or `rake archive:distribution`, motion-rubberstamp will automatically invoke
47
50
  `rake rubberstamp:revert`. This means that development builds will now automatically receive overlays and
48
51
  release builds will use your original icons.
49
52
 
53
+ ## Rake Tasks
54
+
50
55
  You can also manually invoke motion-rubberstamp at any time with:
51
56
 
52
57
  $ rake rubberstamp:run
@@ -57,16 +62,22 @@ Or to remove the overlays and restore your original icons, you can run
57
62
 
58
63
  ## Notes
59
64
 
60
- The iOS Simulator seems to cache or store your app icons when you run a
61
- build. Motion-rubberstamp is still invoked, but it doesn't appear to
62
- update on your device. Deleting the app on your device before building
63
- seems to invoke the refresh, but if anyone knows of a more automated
64
- solution to invoking an icon refresh, that would be better.
65
+ The iOS Simulator will appear to cache your app icons when you run a
66
+ build because RubyMotion's deployer apparently only looks for new resource
67
+ files when deploying (it copies resource files to a simulator directory on
68
+ your local filesystem). Motion-rubberstamp is still invoked, but it won't
69
+ appear to update on your simulator. Deleting the app on your simulator
70
+ before building will invoke the refresh but is a non-optimal solution. I
71
+ hope to have this solved in the next release.
72
+
73
+ Motion-rubberstamp also currently only checks for app icons in the `/resources`
74
+ path, regardless of what your Rakefile is configured for.
65
75
 
66
76
  ## Uninstalling
67
77
 
68
- Motion-rubberstamp duplicates your original icon files with `_base` suffixes. To uninstall, simply remove
69
- motion-rubberstamp from your gemfile
78
+ Motion-rubberstamp duplicates your original icon files with `_base` suffixed counterparts.
79
+ To uninstall, simply run `rake rubberstamp:revert` to restore your original icons, then
80
+ delete motion-rubberstamp from your gemfile or rakefile.
70
81
 
71
82
  ## Contributing
72
83
 
@@ -81,6 +92,10 @@ clue how to write tests for this. But I'll gladly accept any help that's offered
81
92
 
82
93
  ## Thanks
83
94
 
95
+ As brought to our attention, this was also done by [Clay's Allsopp!](https://github.com/clayallsopp/motion-smarticons), in a most
96
+ elegant solution! We're hoping to continue progressing this gem to make sure it is useful and provides a wide array of
97
+ utility regardless :)
98
+
84
99
  Many thanks to Krzysztof Zabłocki and Evan Doll for the idea and
85
100
  implementation
86
101
  [details](http://www.merowing.info/2013/03/overlaying-application-version-on-top-of-your-icon/).
@@ -19,14 +19,23 @@ namespace :rubberstamp do
19
19
  width= `identify -format '%w' #{filename}`.to_i
20
20
  new_filename = filename.gsub('_base', '')
21
21
  status = `convert -background '#0008' -fill white -gravity center -size #{width}x30\
22
- -stroke black caption:"#{caption}"\
22
+ caption:"#{caption}"\
23
23
  #{filename} +swap -gravity south -composite #{new_filename}`
24
24
  else
25
25
  puts "File does not exist, you broke it."
26
26
  end
27
27
  end
28
28
 
29
+ def installed?
30
+ icons = Dir.glob('resources/Icon*')
31
+ prexisting_base_icons = icons.map{|icon| icon.include?("base") }
32
+ prexisting_base_icons.include?(true)
33
+ end
34
+
29
35
  task :run do
36
+ # Automatically run install on first run
37
+ Rake::Task["rubberstamp:install"].execute unless installed?
38
+
30
39
  # piggyback on RubyMotion's own app config tool
31
40
  project_config_vars = Motion::Project::App.config.variables
32
41
  app_version = project_config_vars['version']
@@ -47,13 +56,11 @@ namespace :rubberstamp do
47
56
 
48
57
  desc "Copy your current app icons to `_base` equivalent backups."
49
58
  task :install do
50
- App.info "motion-rubberstamp", "Installing: Copying original icons"
51
- icons = Dir.glob('resources/Icon*')
52
- prexisting_base_icons = icons.map{|icon| icon.include?("base") }
53
- if prexisting_base_icons.include?(true)
59
+ App.info "motion-rubberstamp", "First Run Installing: Copying original icons"
60
+ if installed?
54
61
  raise("Error: It appears that motion-rubberstamp is already installed.")
55
62
  else
56
- icons.each do |icon|
63
+ Dir.glob('resources/Icon*').each do |icon|
57
64
  FileUtils.cp(icon, icon.gsub('.png', '_base.png'), :verbose => true)
58
65
  end
59
66
  end
@@ -1,4 +1,4 @@
1
1
  module Rubberstamp
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
4
4
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: motion-rubberstamp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Garrison