universe-staticweb 0.1.0

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.
Files changed (6) hide show
  1. data/README.md +27 -0
  2. data/Rakefile +31 -0
  3. data/universe.rb +347 -0
  4. data/universe_dsl.rb +56 -0
  5. data/version +1 -0
  6. metadata +126 -0
data/README.md ADDED
@@ -0,0 +1,27 @@
1
+ = Universe
2
+
3
+ Use this to set up a fully functional ruby stack:
4
+
5
+ gem install universe
6
+
7
+ You can also easily install just a subset:
8
+
9
+ gem install universe-core
10
+ gem install universe-rails
11
+ gem install univers-sinatra
12
+ ...
13
+
14
+ Up to date list of universes: https://rubygems.org/gems/universe
15
+ Also, for the complete gem list, see `universe.rb`.
16
+
17
+ Should install without hassle on 1.8.7, 1.9.2 (and later), JRuby 1.6.0 (and later), Rubinius 1.2.0 (and later).
18
+ Might work on other Rubies, too.
19
+
20
+ == Common, but not included (install manually)
21
+
22
+ Due to compatibility issues, these gems are missing:
23
+
24
+ * `hwia`
25
+ * `ruby_debug`
26
+ * `ruby-prof`
27
+ * `ruby2ruby`
data/Rakefile ADDED
@@ -0,0 +1,31 @@
1
+ require 'rake/clean'
2
+ CLEAN.push(*FileList["*.gem"])
3
+
4
+ universe = nil
5
+ version = File.read('version')
6
+
7
+ task :universe do
8
+ require 'universe_dsl'
9
+ universe = Universe.new :universe, version
10
+ universe.load 'universe.rb'
11
+ end
12
+
13
+ desc "increases version number"
14
+ task :bump_version do
15
+ version.succ!
16
+ File.open('version', 'w') { f << version }
17
+ end
18
+
19
+ desc "build all the gems"
20
+ task :build => :universe do
21
+ universe.build_all
22
+ end
23
+
24
+ desc "display generated gemspecs"
25
+ task :gemspecs => :universe do
26
+ puts universe.map { |u| "\n" << ("#"*80) << "\n# spec for #{u.name}\n" << u.to_spec.to_ruby }
27
+ end
28
+
29
+ task :push => :build do
30
+ Dir.glob('*.gem') { |f| sh "gem push #{f}" }
31
+ end
data/universe.rb ADDED
@@ -0,0 +1,347 @@
1
+ group :core do
2
+ gem 'backports'
3
+ gem 'bundler'
4
+ gem 'rake'
5
+ end
6
+
7
+ group :devtools do
8
+ gem 'open-gem'
9
+ gem 'gem-release'
10
+ gem 'hoe'
11
+ gem 'jeweler'
12
+ gem 'bond'
13
+ gem 'bcat'
14
+ gem 'cheat'
15
+ gem 'churn'
16
+ gem 'faraday'
17
+ gem 'ghost'
18
+ gem 'github'
19
+ gem 'hammertime'
20
+ gem 'hanna'
21
+ gem 'hanna-nouveau'
22
+ gem 'hirb'
23
+ gem 'htty'
24
+ gem 'jsonpretty'
25
+ gem 'livereload'
26
+ gem 'memprof'
27
+ gem 'metric_fu'
28
+ gem 'newgem'
29
+ gem 'octopi'
30
+ gem 'rake-compiler'
31
+ gem 'rdoc'
32
+ gem 'rip'
33
+ gem 'ripl'
34
+ gem 'rocco'
35
+ gem 'rubygems-test'
36
+ gem 'sdoc'
37
+ gem 'showoff'
38
+ gem 'whenever'
39
+ gem 'yard'
40
+ gem 'yard-rspec'
41
+
42
+ gem 'universe-testing'
43
+ gem 'universe-core'
44
+ end
45
+
46
+ # common stuff I don't want to have in core, but haven't split up into categories
47
+ group :common do
48
+ gem 'chronic'
49
+ gem 'bson'
50
+ gem 'crack'
51
+ gem 'universe-devtools'
52
+ gem 'capture_stdout'
53
+ gem 'curb'
54
+ gem 'diff-lcs'
55
+ gem 'directory_watcher'
56
+ gem 'em-http-request'
57
+ gem 'em-websocket'
58
+ gem 'escape_utils'
59
+ gem 'eventmachine'
60
+ gem 'extlib'
61
+ gem 'facets'
62
+ gem 'highline'
63
+ gem 'httparty'
64
+ gem 'http_parser.rb'
65
+ gem 'i18n'
66
+ gem 'json_pure'
67
+ gem 'log4r'
68
+ gem 'main'
69
+ gem 'mechanize'
70
+ gem 'mime-types'
71
+ gem 'mutter'
72
+ gem 'net-ldap'
73
+ gem 'net-scp'
74
+ gem 'net-ssh'
75
+ gem 'nokogiri'
76
+ gem 'oauth'
77
+ gem 'oauth2'
78
+ gem 'omniauth'
79
+ gem 'open4'
80
+ gem 'prawn'
81
+ gem 'preforker'
82
+ gem 'redgreen'
83
+ gem 'rest-client'
84
+ gem 'rev'
85
+ gem 'rubigen'
86
+ gem 'ruby-fsevent'
87
+ gem 'ruby-hmac'
88
+ gem 'ruby-openid'
89
+ gem 'ruby_parser'
90
+ gem 'rubyzip'
91
+ gem 'spawn'
92
+ gem 'stackdeck'
93
+ gem 'starling'
94
+ gem 'thor'
95
+ gem 'trollop'
96
+ gem 'typhoeus'
97
+ gem 'tzinfo'
98
+ gem 'yajl-ruby'
99
+ end
100
+
101
+ group :testing do
102
+ gem 'rspec'
103
+ gem 'fuubar'
104
+ gem 'mspec'
105
+ gem 'bacon'
106
+ gem 'test-unit'
107
+ gem 'test-spec'
108
+ gem 'minitest'
109
+ gem 'protest'
110
+ gem 'contest'
111
+ gem 'cucumber'
112
+ gem 'steak'
113
+ gem 'ZenTest'
114
+ gem 'delorean'
115
+ gem 'database_cleaner'
116
+ gem 'spork'
117
+ gem 'autotest-growl'
118
+ gem 'expectations'
119
+ gem 'fakefs'
120
+ gem 'faker'
121
+ gem 'fakeweb'
122
+ gem 'ffaker'
123
+ gem 'ffi'
124
+ gem 'flay'
125
+ gem 'flexmock'
126
+ gem 'flog'
127
+ gem 'heckle'
128
+ gem 'mocha'
129
+ gem 'rcov'
130
+ gem 'reek'
131
+ gem 'riot'
132
+ gem 'roodi'
133
+ gem 'rr'
134
+ gem 'selenium-client'
135
+ gem 'selenium-webdriver'
136
+ gem 'shoulda'
137
+ gem 'test_declarative'
138
+ gem 'timecop'
139
+ gem 'webmock'
140
+
141
+ gem 'universe-rack-testing'
142
+ gem 'universe-rails-testing'
143
+ end
144
+
145
+ group :rack do
146
+ gem 'http_router'
147
+ gem 'rack'
148
+ gem 'rack-abstract-format'
149
+ gem 'rack-accept-media-types'
150
+ gem 'rack-aggregate'
151
+ gem 'rack-bug'
152
+ gem 'rack-cache'
153
+ gem 'rack-contrib'
154
+ gem 'rack-cors'
155
+ gem 'rack-fiber_pool'
156
+ gem 'rack-flash'
157
+ gem 'rack-html5'
158
+ gem 'rack-mount'
159
+ gem 'rack-nocache'
160
+ gem 'rack-offline'
161
+ gem 'rack-openid'
162
+ gem 'rack-pack'
163
+ gem 'rack-respond_to'
164
+ gem 'rum'
165
+ gem 'shotgun'
166
+ gem 'toto'
167
+ gem 'url_mount'
168
+ gem 'usher'
169
+ gem 'warden'
170
+
171
+ group :testing do
172
+ gem 'rack-test'
173
+ gem 'capybara'
174
+ gem 'selenium'
175
+ gem 'celerity'
176
+ gem 'culerity'
177
+ gem 'capybara-envjs'
178
+ gem 'envjs'
179
+ gem 'jasmine'
180
+ gem 'sham_rack'
181
+ gem 'webrat'
182
+ end
183
+
184
+ gem 'universe-webserver'
185
+ end
186
+
187
+ group :db do
188
+ gem 'activerecord'
189
+ gem 'couchrest'
190
+ gem 'database_cleaner'
191
+ gem 'datamapper'
192
+ gem 'dm-sqlite-adapter'
193
+ gem 'do_mysql'
194
+ gem 'do_sqlite3'
195
+ gem 'em-redis'
196
+ gem 'hiredis'
197
+ gem 'memcache-client'
198
+ gem 'mongo'
199
+ gem 'mongo_ext'
200
+ gem 'mongo_mapper'
201
+ gem 'mongoid'
202
+ gem 'mysql'
203
+ gem 'mysql2'
204
+ gem 'mysqlplus'
205
+ gem 'nest'
206
+ gem 'ohm'
207
+ gem 'pg'
208
+ gem 'postgres'
209
+ gem 'redis'
210
+ gem 'redis-store'
211
+ gem 'remcached'
212
+ gem 'sequel'
213
+ gem 'sqlite3-ruby'
214
+ gem 'taps'
215
+ end
216
+
217
+ group :webframeworks do
218
+ gem 'camping'
219
+ gem 'cramp'
220
+ gem 'halcyon'
221
+ gem 'padrino'
222
+ gem 'merb'
223
+ gem 'ramaze'
224
+ gem 'universe-rails'
225
+ gem 'universe-sinatra'
226
+ end
227
+
228
+ group :webserver do
229
+ gem 'ebb'
230
+ gem 'eventmachine_httpserver'
231
+ gem 'fcgi'
232
+ gem 'heroku'
233
+ gem 'mongrel'
234
+ gem 'passenger'
235
+ gem 'rainbows'
236
+ gem 'scgi'
237
+ gem 'serv'
238
+ gem 'serverside'
239
+ gem 'sunshowers'
240
+ gem 'swiftiply'
241
+ gem 'thin'
242
+ gem 'unicorn'
243
+ gem 'webroar'
244
+ gem 'zbatery'
245
+ end
246
+
247
+ group :staticweb do
248
+ gem 'jekyll'
249
+ gem 'nanoc3'
250
+ gem 'staticmatic'
251
+ gem 'universe-templates'
252
+ end
253
+
254
+ group :rails do
255
+ gem 'rails'
256
+ gem 'devise'
257
+ gem 'formtastic'
258
+ gem 'will_paginate'
259
+
260
+ group :testing do
261
+ gem 'factory_girl'
262
+ gem 'object_daddy'
263
+ gem 'populator'
264
+ gem 'rspec-rails'
265
+ gem 'universe-rack-testing'
266
+ end
267
+
268
+ gem 'universe-rack', version
269
+ gem 'universe-db', version
270
+ end
271
+
272
+ group :javascript do
273
+ gem 'coffee-script'
274
+ gem 'envjs'
275
+ gem 'harmony'
276
+ gem 'jasmine'
277
+ gem 'johnson'
278
+ gem 'taka'
279
+ gem 'therubyracer'
280
+ end
281
+
282
+ group :parsing do
283
+ gem 'ghostwheel'
284
+ gem 'parslet'
285
+ gem 'pegarus'
286
+ gem 'racc'
287
+ gem 'rexical'
288
+ gem 'sexp_path'
289
+ gem 'sexp_processor'
290
+ gem 'stemmer'
291
+ gem 'treetop'
292
+ end
293
+
294
+ group :templates do
295
+ gem 'tilt'
296
+ gem 'builder'
297
+ gem 'bluecloth'
298
+ gem 'bureaucrat'
299
+ gem 'coderay'
300
+ gem 'coffee-script'
301
+ gem 'compass'
302
+ gem 'erubis'
303
+ gem 'github-markup'
304
+ gem 'haml'
305
+ gem 'haml-more'
306
+ gem 'less'
307
+ gem 'liquid'
308
+ gem 'markaby'
309
+ gem 'maruku'
310
+ gem 'mustache'
311
+ gem 'radius'
312
+ gem 'rdiscount'
313
+ gem 'rdoc'
314
+ gem 'rubypants'
315
+ gem 'slim'
316
+ gem 'templater'
317
+ gem 'temple'
318
+ gem 'text-format'
319
+ gem 'text-hyphen'
320
+ gem 'wrapt'
321
+ end
322
+
323
+ group :sinatra do
324
+ gem 'big_band'
325
+ gem 'sinatra-accept-params'
326
+ gem 'sinatra-advanced-routes'
327
+ gem 'sinatra-bundles'
328
+ gem 'sinatra-cache'
329
+ gem 'sinatra-compass'
330
+ gem 'sinatra-config-file'
331
+ gem 'sinatra-ditties'
332
+ gem 'sinatra-dm'
333
+ gem 'sinatra-extension'
334
+ gem 'sinatra-logger'
335
+ gem 'sinatra_more'
336
+ gem 'sinatra-more-server'
337
+ gem 'sinatra-namespace'
338
+ gem 'sinatra-redis'
339
+ gem 'sinatra-reloader'
340
+ gem 'sinatra-settings'
341
+ gem 'sinatra-sugar'
342
+ gem 'sinatra-tags'
343
+ gem 'sinatra-test-helper'
344
+ gem 'sinatras-hat'
345
+ gem 'yard-sinatra'
346
+ gem 'universe-templates'
347
+ end
data/universe_dsl.rb ADDED
@@ -0,0 +1,56 @@
1
+ require 'rubygems/specification'
2
+ require 'rubygems/builder'
3
+
4
+ class Universe
5
+ include Enumerable
6
+ attr_reader :name, :galaxies, :version
7
+
8
+ def initialize(name, version = nil, &block)
9
+ @name, @galaxies, @version, @gems = name.to_s, [], version, []
10
+ instance_eval(&block) if block
11
+ end
12
+
13
+ def load(file)
14
+ instance_eval File.read(file)
15
+ end
16
+
17
+ def group(name, &block)
18
+ @galaxies << Universe.new("#{@name}-#{name}", version, &block)
19
+ end
20
+
21
+ def gem(*args)
22
+ @gems << args
23
+ end
24
+
25
+ def build
26
+ Gem::Builder.new(to_spec).build
27
+ end
28
+
29
+ def build_all
30
+ each(false) { |galaxy| galaxy.build }
31
+ end
32
+
33
+ def each(first = true)
34
+ return enum_for(:each) unless block_given?
35
+ yield self if first
36
+ @galaxies.each { |galaxy| galaxy.each { |g| yield g }}
37
+ yield self unless first
38
+ end
39
+
40
+ def to_spec
41
+ Gem::Specification.new do |s|
42
+ s.name = name
43
+ s.version = version
44
+ s.summary = "gem install #{name}"
45
+ s.author = "Konstantin Haase"
46
+ s.email = 'k.haase@finn.de'
47
+ s.files = `git ls-files`.split("\n")
48
+ @galaxies.each do |galaxy|
49
+ s.add_dependency(galaxy.name, galaxy.version)
50
+ end
51
+ @gems.each do |args|
52
+ s.add_dependency(*args)
53
+ end
54
+ end
55
+ end
56
+ end
data/version ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
metadata ADDED
@@ -0,0 +1,126 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: universe-staticweb
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 1
9
+ - 0
10
+ version: 0.1.0
11
+ platform: ruby
12
+ authors:
13
+ - Konstantin Haase
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-01-12 00:00:00 +01:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: jekyll
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ version: "0"
33
+ type: :runtime
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: nanoc3
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
47
+ type: :runtime
48
+ version_requirements: *id002
49
+ - !ruby/object:Gem::Dependency
50
+ name: staticmatic
51
+ prerelease: false
52
+ requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ type: :runtime
62
+ version_requirements: *id003
63
+ - !ruby/object:Gem::Dependency
64
+ name: universe-templates
65
+ prerelease: false
66
+ requirement: &id004 !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ hash: 3
72
+ segments:
73
+ - 0
74
+ version: "0"
75
+ type: :runtime
76
+ version_requirements: *id004
77
+ description:
78
+ email: k.haase@finn.de
79
+ executables: []
80
+
81
+ extensions: []
82
+
83
+ extra_rdoc_files: []
84
+
85
+ files:
86
+ - README.md
87
+ - Rakefile
88
+ - universe.rb
89
+ - universe_dsl.rb
90
+ - version
91
+ has_rdoc: true
92
+ homepage:
93
+ licenses: []
94
+
95
+ post_install_message:
96
+ rdoc_options: []
97
+
98
+ require_paths:
99
+ - lib
100
+ required_ruby_version: !ruby/object:Gem::Requirement
101
+ none: false
102
+ requirements:
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ hash: 3
106
+ segments:
107
+ - 0
108
+ version: "0"
109
+ required_rubygems_version: !ruby/object:Gem::Requirement
110
+ none: false
111
+ requirements:
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ hash: 3
115
+ segments:
116
+ - 0
117
+ version: "0"
118
+ requirements: []
119
+
120
+ rubyforge_project:
121
+ rubygems_version: 1.4.1
122
+ signing_key:
123
+ specification_version: 3
124
+ summary: gem install universe-staticweb
125
+ test_files: []
126
+