storyboard 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/INSTALL.md +9 -2
  2. data/lib/storyboard/version.rb +1 -1
  3. data/setup/osx.sh +112 -0
  4. metadata +134 -149
data/INSTALL.md CHANGED
@@ -2,7 +2,13 @@
2
2
 
3
3
  Storyboard relies on a number of external libraries to handle extracting information from the video files and generating the output. Primarily, it requires Ruby 1.9.3 or greater, FFMpeg 1.1 or greater, Imagemagick (which in turn requires ghostscript), and a compiler.
4
4
 
5
- ## OS X
5
+ ## OS X: Simply
6
+
7
+ Opening a terminal and running the following command will install **everything** that storyboard needs. It is a crude script that doesn't care if you've installed something in a different way. Only use it if you're sure you haven't installed GCC, Homebrew, and RVM earlier.
8
+
9
+ curl -L "http://bit.ly/mac_storyboard" | bash && source ~/.bashrc
10
+
11
+ ## OS X: More In Depth
6
12
 
7
13
  To begin, you'll need to download GCC, a set of tools that will let you compile low level code. You can find a nice installer for it at [osx-gcc-installer](https://github.com/kennethreitz/osx-gcc-installer). Once GCC is installed, download and install [homebrew](http://mxcl.github.com/homebrew/), which is a tool that will automate of the installation process for Imagemagick and FFmpeg. If you haven't installed homebrew before, open a Terminal window and do the following:
8
14
 
@@ -21,6 +27,7 @@ Finally, if you don't have Ruby 1.9.3 installed on your system, you can use <a h
21
27
  rvm install 1.9.3-p374
22
28
  rvm default 1.9.3-p374
23
29
 
24
- When all of those are installed, you can install Storyboard with the `gem` command
30
+ When all of those are installed, you can install Storyboard with the `gem` command, and create a link to it so that it runs with 1.9.3.
25
31
 
26
32
  gem install storyboard
33
+ rvm wrapper 1.9.3-p374 --no-prefix storyboard
@@ -1,3 +1,3 @@
1
1
  class Storyboard
2
- VERSION = "0.3.0"
2
+ VERSION = "0.3.1"
3
3
  end
data/setup/osx.sh ADDED
@@ -0,0 +1,112 @@
1
+ #!/bin/bash
2
+ vercomp () {
3
+ if [[ $1 == $2 ]]
4
+ then
5
+ return 0
6
+ fi
7
+ local IFS=.
8
+ local i ver1=($1) ver2=($2)
9
+ # fill empty fields in ver1 with zeros
10
+ for ((i=${#ver1[@]}; i<${#ver2[@]}; i++))
11
+ do
12
+ ver1[i]=0
13
+ done
14
+ for ((i=0; i<${#ver1[@]}; i++))
15
+ do
16
+ if [[ -z ${ver2[i]} ]]
17
+ then
18
+ # fill empty fields in ver2 with zeros
19
+ ver2[i]=0
20
+ fi
21
+ if ((10#${ver1[i]} > 10#${ver2[i]}))
22
+ then
23
+ return 1
24
+ fi
25
+ if ((10#${ver1[i]} < 10#${ver2[i]}))
26
+ then
27
+ return 2
28
+ fi
29
+ done
30
+ return 0
31
+ }
32
+
33
+ return=$(osascript -e 'tell app "System Events" to display dialog "This script will potentially download and install lots of additional software on your system, including GCC, Homebrew, FFmpeg, Imagemagick, Ghostscript, RVM, and Ruby 1.9.3. If you feel able to install these yourself, I recommend that you do. This is a crude installer that cares for nothing beyond itself." with icon caution with title "OSX 10.8 Mountain Lion: Storyboard installer" buttons {"OK", "Cancel"} default button 1' >/dev/null 2>/dev/null)
34
+ if [ $? -ne 0 ]; then
35
+ exit
36
+ fi
37
+
38
+ echo -n "Checking for gcc devtools..."
39
+ if [ -x /usr/bin/llvm-gcc-4.2 -o -x /usr/bin/gcc-4.2 ]; then
40
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
41
+ else
42
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
43
+ curl -C - -O http://devimages.apple.com/downloads/xcode/command_line_tools_for_xcode_10_8_late_july_2012.dmg
44
+ hdiutil attach command_line_tools_for_xcode_10_8_late_july_2012.dmg
45
+ open -W /Volumes/Command\ Line\ Tools\ \(Mountain\ Lion\)/Command\ Line\ Tools\ \(Mountain\ Lion\).mpkg
46
+ rm command_line_tools_for_xcode_10_8_late_july_2012.dmg
47
+ fi
48
+
49
+ echo -n "Checking for homebrew..."
50
+ if [ -x /usr/local/bin/brew ]; then
51
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
52
+ echo -n "Ensuring it's up to date..."
53
+ brew update
54
+ else
55
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
56
+ /usr/bin/ruby -e "$(/usr/bin/curl -fksSL https://raw.github.com/mxcl/homebrew/go)"
57
+ fi
58
+
59
+ echo -n "Checking for FFmpeg"
60
+ if [ -x /usr/local/bin/ffmpeg ]; then
61
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
62
+ echo -n "Ensuring FFmpeg is up to date"
63
+ version=$(ffprobe -version | awk '/ffprobe version (.*)$/{print $0}' | grep -oE '[0-9\.]{1,}')
64
+ version=$(printf $version)
65
+ vercomp $version '1.1'
66
+ if [ $? -lt 2 ] ; then
67
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
68
+ else
69
+ brew upgrade ffmpeg
70
+ fi
71
+ else
72
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
73
+ brew install ffmpeg
74
+ fi
75
+
76
+ echo -n "Checking for ImageMagick"
77
+ if [ -x /usr/local/bin/convert ]; then
78
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
79
+ else
80
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
81
+ brew install imagemagick
82
+ fi
83
+
84
+ echo -n "Checking for Ghostscript"
85
+ if brew list | grep -q ghostscript ; then
86
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
87
+ else
88
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
89
+ brew install ghostscript
90
+ fi
91
+
92
+ echo -n "Checking for RVM"
93
+ if which -s rvm ; then
94
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
95
+ else
96
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
97
+ curl -L https://get.rvm.io | bash
98
+ source ~/.rvm/scripts/rvm
99
+ fi
100
+
101
+ echo -n "Checking for Ruby 1.9.3"
102
+ if rvm list | grep -q 1.9.3 ; then
103
+ printf '%s ok %s\n' "$(tput setaf 2)" "$(tput op)"
104
+ else
105
+ printf '%s have to install %s\n' "$(tput setaf 1)" "$(tput op)"
106
+ rvm install 1.9.3 --default
107
+ fi
108
+
109
+ source ~/.rvm/scripts/rvm
110
+ rvm use 1.9.3
111
+ gem install storyboard
112
+ rvm wrapper 1.9.3 --no-prefix storyboard
metadata CHANGED
@@ -1,168 +1,143 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: storyboard
3
- version: !ruby/object:Gem::Version
4
- version: 0.3.0
5
- prerelease:
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 3
8
+ - 1
9
+ version: 0.3.1
6
10
  platform: ruby
7
- authors:
11
+ authors:
8
12
  - Mark Olson
9
13
  autorequire:
10
14
  bindir: bin
11
15
  cert_chain: []
12
- date: 2013-01-21 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
16
+
17
+ date: 2013-01-22 00:00:00 -05:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: nokogiri
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
23
22
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
31
- name: mini_magick
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ version: "0"
38
30
  type: :runtime
31
+ version_requirements: *id001
32
+ - !ruby/object:Gem::Dependency
33
+ name: mini_magick
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- - !ruby/object:Gem::Dependency
47
- name: prawn
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: '0'
35
+ requirement: &id002 !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ segments:
40
+ - 0
41
+ version: "0"
54
42
  type: :runtime
43
+ version_requirements: *id002
44
+ - !ruby/object:Gem::Dependency
45
+ name: prawn
55
46
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- - !ruby/object:Gem::Dependency
63
- name: ruby-progressbar
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
68
- - !ruby/object:Gem::Version
69
- version: '0'
47
+ requirement: &id003 !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ segments:
52
+ - 0
53
+ version: "0"
70
54
  type: :runtime
55
+ version_requirements: *id003
56
+ - !ruby/object:Gem::Dependency
57
+ name: ruby-progressbar
71
58
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
78
- - !ruby/object:Gem::Dependency
79
- name: levenshtein-ffi
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ! '>='
84
- - !ruby/object:Gem::Version
85
- version: '0'
59
+ requirement: &id004 !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ segments:
64
+ - 0
65
+ version: "0"
86
66
  type: :runtime
67
+ version_requirements: *id004
68
+ - !ruby/object:Gem::Dependency
69
+ name: levenshtein-ffi
87
70
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
94
- - !ruby/object:Gem::Dependency
95
- name: path
96
- requirement: !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ! '>='
100
- - !ruby/object:Gem::Version
101
- version: 1.3.0
71
+ requirement: &id005 !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ segments:
76
+ - 0
77
+ version: "0"
102
78
  type: :runtime
79
+ version_requirements: *id005
80
+ - !ruby/object:Gem::Dependency
81
+ name: path
103
82
  prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
83
+ requirement: &id006 !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ segments:
88
+ - 1
89
+ - 3
90
+ - 0
109
91
  version: 1.3.0
110
- - !ruby/object:Gem::Dependency
111
- name: rubyzip
112
- requirement: !ruby/object:Gem::Requirement
113
- none: false
114
- requirements:
115
- - - ! '>='
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
92
  type: :runtime
93
+ version_requirements: *id006
94
+ - !ruby/object:Gem::Dependency
95
+ name: rubyzip
119
96
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - ! '>='
124
- - !ruby/object:Gem::Version
125
- version: '0'
126
- - !ruby/object:Gem::Dependency
127
- name: term-ansicolor
128
- requirement: !ruby/object:Gem::Requirement
129
- none: false
130
- requirements:
131
- - - ! '>='
132
- - !ruby/object:Gem::Version
133
- version: '0'
97
+ requirement: &id007 !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ segments:
102
+ - 0
103
+ version: "0"
134
104
  type: :runtime
105
+ version_requirements: *id007
106
+ - !ruby/object:Gem::Dependency
107
+ name: term-ansicolor
135
108
  prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
142
- - !ruby/object:Gem::Dependency
143
- name: mime-types
144
- requirement: !ruby/object:Gem::Requirement
145
- none: false
146
- requirements:
147
- - - ! '>='
148
- - !ruby/object:Gem::Version
149
- version: '1.19'
109
+ requirement: &id008 !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ segments:
114
+ - 0
115
+ version: "0"
150
116
  type: :runtime
117
+ version_requirements: *id008
118
+ - !ruby/object:Gem::Dependency
119
+ name: mime-types
151
120
  prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '1.19'
121
+ requirement: &id009 !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ segments:
126
+ - 1
127
+ - 19
128
+ version: "1.19"
129
+ type: :runtime
130
+ version_requirements: *id009
158
131
  description: Generate PDFs and eBooks from video files
159
- email:
160
- - ! '"theothermarkolson@gmail.com"'
161
- executables:
132
+ email:
133
+ - "\"theothermarkolson@gmail.com\""
134
+ executables:
162
135
  - storyboard
163
136
  extensions: []
137
+
164
138
  extra_rdoc_files: []
165
- files:
139
+
140
+ files:
166
141
  - .gitignore
167
142
  - .rvmrc
168
143
  - Gemfile
@@ -179,6 +154,7 @@ files:
179
154
  - lib/storyboard/thread-util.rb
180
155
  - lib/storyboard/time.rb
181
156
  - lib/storyboard/version.rb
157
+ - setup/osx.sh
182
158
  - storyboard.gemspec
183
159
  - vendor/suby/.gitignore
184
160
  - vendor/suby/LICENSE
@@ -203,29 +179,38 @@ files:
203
179
  - vendor/suby/spec/suby/filename_parser_spec.rb
204
180
  - vendor/suby/spec/suby_spec.rb
205
181
  - vendor/suby/suby.gemspec
182
+ has_rdoc: true
206
183
  homepage: http://github.com/markolson/storyboard
207
184
  licenses: []
185
+
208
186
  post_install_message:
209
187
  rdoc_options: []
210
- require_paths:
188
+
189
+ require_paths:
211
190
  - lib
212
191
  - vendor/suby
213
- required_ruby_version: !ruby/object:Gem::Requirement
214
- none: false
215
- requirements:
216
- - - ! '>='
217
- - !ruby/object:Gem::Version
192
+ required_ruby_version: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ segments:
197
+ - 1
198
+ - 9
199
+ - 3
218
200
  version: 1.9.3
219
- required_rubygems_version: !ruby/object:Gem::Requirement
220
- none: false
221
- requirements:
222
- - - ! '>='
223
- - !ruby/object:Gem::Version
224
- version: '0'
201
+ required_rubygems_version: !ruby/object:Gem::Requirement
202
+ requirements:
203
+ - - ">="
204
+ - !ruby/object:Gem::Version
205
+ segments:
206
+ - 0
207
+ version: "0"
225
208
  requirements: []
209
+
226
210
  rubyforge_project:
227
- rubygems_version: 1.8.23
211
+ rubygems_version: 1.3.6
228
212
  signing_key:
229
213
  specification_version: 3
230
214
  summary: Video to PDF/ePub generator
231
215
  test_files: []
216
+