motion-rubberstamp 0.0.2 → 0.0.3

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: 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