diff options
Diffstat (limited to 'virtual')
-rw-r--r-- | virtual/modules/databases/default.nix | 1 | ||||
-rw-r--r-- | virtual/modules/websites/default.nix | 2 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/Gemfile | 318 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/Gemfile.lock | 909 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/default.nix | 117 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/diaspora.json | 15 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/diaspora.nix | 173 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/gemset.nix | 3045 | ||||
-rw-r--r-- | virtual/modules/websites/tools/diaspora/ldap.patch | 256 |
9 files changed, 4836 insertions, 0 deletions
diff --git a/virtual/modules/databases/default.nix b/virtual/modules/databases/default.nix index cb3d5bf..0e21837 100644 --- a/virtual/modules/databases/default.nix +++ b/virtual/modules/databases/default.nix | |||
@@ -162,6 +162,7 @@ in { | |||
162 | ]; | 162 | ]; |
163 | 163 | ||
164 | # FIXME: backup | 164 | # FIXME: backup |
165 | # Diaspora: 15 | ||
165 | # Nextcloud: 14 | 166 | # Nextcloud: 14 |
166 | # Mastodon: 13 | 167 | # Mastodon: 13 |
167 | # Mediagoblin: 12 | 168 | # Mediagoblin: 12 |
diff --git a/virtual/modules/websites/default.nix b/virtual/modules/websites/default.nix index 5f92b8c..4b1490b 100644 --- a/virtual/modules/websites/default.nix +++ b/virtual/modules/websites/default.nix | |||
@@ -99,6 +99,7 @@ in | |||
99 | ./tools/git | 99 | ./tools/git |
100 | ./tools/mastodon | 100 | ./tools/mastodon |
101 | ./tools/mediagoblin | 101 | ./tools/mediagoblin |
102 | ./tools/diaspora | ||
102 | # built using: | 103 | # built using: |
103 | # sed -e "s/services\.httpd/services\.httpdProd/g" .nix-defexpr/channels/nixpkgs/nixos/modules/services/web-servers/apache-httpd/default.nix | 104 | # sed -e "s/services\.httpd/services\.httpdProd/g" .nix-defexpr/channels/nixpkgs/nixos/modules/services/web-servers/apache-httpd/default.nix |
104 | # Removed allGranted | 105 | # Removed allGranted |
@@ -175,6 +176,7 @@ in | |||
175 | services.myWebsites.tools.git.enable = true; | 176 | services.myWebsites.tools.git.enable = true; |
176 | services.myWebsites.tools.mastodon.enable = true; | 177 | services.myWebsites.tools.mastodon.enable = true; |
177 | services.myWebsites.tools.mediagoblin.enable = true; | 178 | services.myWebsites.tools.mediagoblin.enable = true; |
179 | services.myWebsites.tools.diaspora.enable = true; | ||
178 | 180 | ||
179 | services.myWebsites.Chloe.production.enable = cfg.production.enable; | 181 | services.myWebsites.Chloe.production.enable = cfg.production.enable; |
180 | services.myWebsites.Ludivine.production.enable = cfg.production.enable; | 182 | services.myWebsites.Ludivine.production.enable = cfg.production.enable; |
diff --git a/virtual/modules/websites/tools/diaspora/Gemfile b/virtual/modules/websites/tools/diaspora/Gemfile new file mode 100644 index 0000000..e279514 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/Gemfile | |||
@@ -0,0 +1,318 @@ | |||
1 | # frozen_string_literal: true | ||
2 | |||
3 | source "https://rubygems.org" | ||
4 | |||
5 | gem "rails", "5.1.6" | ||
6 | |||
7 | # Legacy Rails features, remove me! | ||
8 | # responders (class level) | ||
9 | gem "responders", "2.4.0" | ||
10 | |||
11 | # Appserver | ||
12 | |||
13 | gem "unicorn", "5.4.1", require: false | ||
14 | gem "unicorn-worker-killer", "0.4.4" | ||
15 | |||
16 | # Federation | ||
17 | |||
18 | gem "diaspora_federation-json_schema", "0.2.5" | ||
19 | gem "diaspora_federation-rails", "0.2.5" | ||
20 | |||
21 | # API and JSON | ||
22 | |||
23 | gem "acts_as_api", "1.0.1" | ||
24 | gem "json", "2.1.0" | ||
25 | gem "json-schema", "2.8.1" | ||
26 | |||
27 | # Authentication | ||
28 | |||
29 | gem "devise", "4.5.0" | ||
30 | gem "devise_lastseenable", "0.0.6" | ||
31 | |||
32 | # Captcha | ||
33 | |||
34 | gem "simple_captcha2", "0.4.3", require: "simple_captcha" | ||
35 | |||
36 | # Background processing | ||
37 | |||
38 | gem "redis", "3.3.5" # Pinned to 3.3.x because of https://github.com/antirez/redis/issues/4272 | ||
39 | gem "sidekiq", "5.2.3" | ||
40 | |||
41 | # Scheduled processing | ||
42 | |||
43 | gem "sidekiq-cron", "1.0.4" | ||
44 | |||
45 | # Compression | ||
46 | |||
47 | gem "uglifier", "4.1.19" | ||
48 | |||
49 | # Configuration | ||
50 | |||
51 | gem "configurate", "0.3.1" | ||
52 | |||
53 | # Cross-origin resource sharing | ||
54 | |||
55 | gem "rack-cors", "1.0.2", require: "rack/cors" | ||
56 | |||
57 | # CSS | ||
58 | |||
59 | gem "autoprefixer-rails", "8.6.5" | ||
60 | gem "bootstrap-sass", "3.3.7" | ||
61 | gem "bootstrap-switch-rails", "3.3.4" | ||
62 | gem "compass-rails", "3.1.0" | ||
63 | gem "sass-rails", "5.0.7" | ||
64 | gem "sprockets-rails", "3.2.1" | ||
65 | |||
66 | # Database | ||
67 | |||
68 | group :mysql, optional: true do | ||
69 | gem "mysql2", "0.5.2" | ||
70 | end | ||
71 | gem "pg", "1.1.3" | ||
72 | |||
73 | |||
74 | gem "activerecord-import", "0.27.0" | ||
75 | |||
76 | # File uploading | ||
77 | |||
78 | gem "carrierwave", "1.2.3" | ||
79 | gem "fog-aws", "3.3.0" | ||
80 | gem "mini_magick", "4.9.2" | ||
81 | |||
82 | # GUID generation | ||
83 | gem "uuid", "2.3.9" | ||
84 | |||
85 | # Icons | ||
86 | |||
87 | gem "entypo-rails", "3.0.0" | ||
88 | |||
89 | # JavaScript | ||
90 | |||
91 | gem "handlebars_assets", "0.23.2" | ||
92 | gem "jquery-rails", "4.3.3" | ||
93 | gem "js-routes", "1.4.4" | ||
94 | gem "js_image_paths", "0.1.1" | ||
95 | |||
96 | source "https://rails-assets.org" do | ||
97 | gem "rails-assets-jquery", "3.3.1" # Should be kept in sync with jquery-rails | ||
98 | gem "rails-assets-jquery.ui", "1.11.4" | ||
99 | |||
100 | gem "rails-assets-highlightjs", "9.12.0" | ||
101 | gem "rails-assets-markdown-it", "8.4.2" | ||
102 | gem "rails-assets-markdown-it-hashtag", "0.4.0" | ||
103 | gem "rails-assets-markdown-it-diaspora-mention", "1.2.0" | ||
104 | gem "rails-assets-markdown-it-sanitizer", "0.4.3" | ||
105 | gem "rails-assets-markdown-it--markdown-it-for-inline", "0.1.1" | ||
106 | gem "rails-assets-markdown-it-sub", "1.0.0" | ||
107 | gem "rails-assets-markdown-it-sup", "1.0.0" | ||
108 | |||
109 | gem "rails-assets-backbone", "1.3.3" | ||
110 | gem "rails-assets-bootstrap-markdown", "2.10.0" | ||
111 | gem "rails-assets-corejs-typeahead", "1.2.1" | ||
112 | gem "rails-assets-fine-uploader", "5.13.0" | ||
113 | |||
114 | # jQuery plugins | ||
115 | |||
116 | gem "rails-assets-autosize", "4.0.2" | ||
117 | gem "rails-assets-blueimp-gallery", "2.33.0" | ||
118 | gem "rails-assets-jquery.are-you-sure", "1.9.0" | ||
119 | gem "rails-assets-jquery-placeholder", "2.3.1" | ||
120 | gem "rails-assets-jquery-textchange", "0.2.3" | ||
121 | gem "rails-assets-utatti-perfect-scrollbar", "1.4.0" | ||
122 | end | ||
123 | |||
124 | gem "markdown-it-html5-embed", "1.0.0" | ||
125 | |||
126 | # Localization | ||
127 | |||
128 | gem "http_accept_language", "2.1.1" | ||
129 | gem "i18n-inflector-rails", "1.0.7" | ||
130 | gem "rails-i18n", "5.1.2" | ||
131 | |||
132 | |||
133 | |||
134 | gem "markerb", "1.1.0" | ||
135 | |||
136 | # Map | ||
137 | gem "leaflet-rails", "1.3.1" | ||
138 | |||
139 | # Parsing | ||
140 | |||
141 | gem "nokogiri", "1.8.5" | ||
142 | gem "open_graph_reader", "0.6.2" # also update User-Agent in features/support/webmock.rb | ||
143 | gem "redcarpet", "3.4.0" | ||
144 | gem "ruby-oembed", "0.12.0" | ||
145 | gem "twitter-text", "1.14.7" | ||
146 | |||
147 | # RTL support | ||
148 | |||
149 | gem "string-direction", "1.2.1" | ||
150 | |||
151 | # Security Headers | ||
152 | |||
153 | gem "secure_headers", "6.0.0" | ||
154 | |||
155 | # Services | ||
156 | |||
157 | gem "omniauth", "1.8.1" | ||
158 | gem "omniauth-tumblr", "1.2" | ||
159 | gem "omniauth-twitter", "1.4.0" | ||
160 | gem "omniauth-wordpress", "0.2.2" | ||
161 | gem "twitter", "6.2.0" | ||
162 | |||
163 | # OpenID Connect | ||
164 | gem "openid_connect", "1.1.6" | ||
165 | |||
166 | # Serializers | ||
167 | |||
168 | gem "active_model_serializers", "0.9.7" | ||
169 | |||
170 | # XMPP chat dependencies | ||
171 | gem "diaspora-prosody-config", "0.0.7" | ||
172 | gem "rails-assets-diaspora_jsxc", "0.1.5.develop.7", source: "https://rails-assets.org" | ||
173 | |||
174 | # Tags | ||
175 | |||
176 | gem "acts-as-taggable-on", "6.0.0" | ||
177 | |||
178 | # URIs and HTTP | ||
179 | |||
180 | gem "addressable", "2.5.2", require: "addressable/uri" | ||
181 | gem "faraday", "0.15.3" | ||
182 | gem "faraday_middleware", "0.12.2" | ||
183 | gem "faraday-cookie_jar", "0.0.6" | ||
184 | gem "typhoeus", "1.3.1" | ||
185 | |||
186 | # Views | ||
187 | |||
188 | gem "gon", "6.2.1" | ||
189 | gem "hamlit", "2.9.1" | ||
190 | gem "mobile-fu", "1.4.0" | ||
191 | gem "rails-timeago", "2.16.0" | ||
192 | gem "will_paginate", "3.1.6" | ||
193 | |||
194 | # Logging | ||
195 | |||
196 | gem "logging-rails", "0.6.0", require: "logging/rails" | ||
197 | |||
198 | # Reading and writing zip files | ||
199 | |||
200 | gem "rubyzip", "1.2.2", require: "zip" | ||
201 | |||
202 | # Prevent occasions where minitest is not bundled in | ||
203 | # packaged versions of ruby. See following issues/prs: | ||
204 | # https://github.com/gitlabhq/gitlabhq/issues/3826 | ||
205 | # https://github.com/gitlabhq/gitlabhq/pull/3852 | ||
206 | # https://github.com/discourse/discourse/pull/238 | ||
207 | gem "minitest" | ||
208 | |||
209 | gem "versionist", "1.7.0" | ||
210 | |||
211 | # Windows and OSX have an execjs compatible runtime built-in, Linux users should | ||
212 | # install Node.js or use "therubyracer". | ||
213 | # | ||
214 | # See https://github.com/sstephenson/execjs#readme for more supported runtimes | ||
215 | |||
216 | # gem "therubyracer", :platform => :ruby | ||
217 | |||
218 | # LDAP | ||
219 | gem 'net-ldap', '~> 0.16' | ||
220 | |||
221 | group :production do # we don"t install these on travis to speed up test runs | ||
222 | # Analytics | ||
223 | |||
224 | gem "rack-google-analytics", "1.2.0" | ||
225 | gem "rack-piwik", "0.3.0", require: "rack/piwik" | ||
226 | |||
227 | # Process management | ||
228 | |||
229 | gem "eye", "0.10.0" | ||
230 | |||
231 | # Redirects | ||
232 | |||
233 | gem "rack-rewrite", "1.5.1", require: false | ||
234 | gem "rack-ssl", "1.4.1", require: "rack/ssl" | ||
235 | |||
236 | # Third party asset hosting | ||
237 | |||
238 | gem "asset_sync", "2.5.0", require: false | ||
239 | end | ||
240 | |||
241 | group :development do | ||
242 | # Automatic test runs | ||
243 | gem "guard", "2.15.0", require: false | ||
244 | gem "guard-rspec", "4.7.3", require: false | ||
245 | gem "guard-rubocop", "1.3.0", require: false | ||
246 | gem "rb-fsevent", "0.10.3", require: false | ||
247 | gem "rb-inotify", "0.9.10", require: false | ||
248 | |||
249 | # Linters | ||
250 | gem "haml_lint", "0.28.0", require: false | ||
251 | gem "pronto", "0.9.5", require: false | ||
252 | gem "pronto-eslint", "0.9.1", require: false | ||
253 | gem "pronto-haml", "0.9.0", require: false | ||
254 | gem "pronto-rubocop", "0.9.1", require: false | ||
255 | gem "pronto-scss", "0.9.1", require: false | ||
256 | gem "rubocop", "0.60.0", require: false | ||
257 | |||
258 | # Preloading environment | ||
259 | |||
260 | gem "spring", "2.0.2" | ||
261 | gem "spring-commands-rspec", "1.0.4" | ||
262 | gem "spring-commands-cucumber", "1.0.1" | ||
263 | |||
264 | # Debugging | ||
265 | gem "pry" | ||
266 | gem "pry-byebug" | ||
267 | |||
268 | # test coverage | ||
269 | gem "simplecov", "0.16.1", require: false | ||
270 | |||
271 | gem "turbo_dev_assets", "0.0.2" | ||
272 | end | ||
273 | |||
274 | group :test do | ||
275 | # RSpec (unit tests, some integration tests) | ||
276 | |||
277 | gem "fixture_builder", "0.5.2.rc3" | ||
278 | gem "fuubar", "2.3.2" | ||
279 | gem "json-schema-rspec", "0.0.4" | ||
280 | gem "rspec-json_expectations", "~> 2.1" | ||
281 | |||
282 | # Cucumber (integration tests) | ||
283 | |||
284 | gem "capybara", "3.11.1" | ||
285 | gem "database_cleaner", "1.7.0" | ||
286 | gem "poltergeist", "1.18.1" | ||
287 | |||
288 | gem "cucumber-api-steps", "0.14", require: false | ||
289 | |||
290 | # General helpers | ||
291 | |||
292 | gem "factory_girl_rails", "4.8.0" | ||
293 | gem "shoulda-matchers", "3.1.2" | ||
294 | gem "timecop", "0.9.1" | ||
295 | gem "webmock", "3.4.2", require: false | ||
296 | |||
297 | gem "diaspora_federation-test", "0.2.5" | ||
298 | |||
299 | # Coverage | ||
300 | gem "coveralls", "0.8.22", require: false | ||
301 | end | ||
302 | |||
303 | group :development, :test do | ||
304 | # RSpec (unit tests, some integration tests) | ||
305 | gem "rspec-rails", "3.8.1" | ||
306 | |||
307 | # Cucumber (integration tests) | ||
308 | gem "cucumber-rails", "1.6.0", require: false | ||
309 | |||
310 | # Jasmine (client side application tests (JS)) | ||
311 | gem "jasmine", "3.3.0" | ||
312 | gem "jasmine-jquery-rails", "2.0.3" | ||
313 | gem "rails-assets-jasmine-ajax", "3.4.0", source: "https://rails-assets.org" | ||
314 | gem "sinon-rails", "1.15.0" | ||
315 | |||
316 | # For `assigns` in controller specs | ||
317 | gem "rails-controller-testing", "1.0.2" | ||
318 | end | ||
diff --git a/virtual/modules/websites/tools/diaspora/Gemfile.lock b/virtual/modules/websites/tools/diaspora/Gemfile.lock new file mode 100644 index 0000000..ceb08c1 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/Gemfile.lock | |||
@@ -0,0 +1,909 @@ | |||
1 | GEM | ||
2 | remote: https://rubygems.org/ | ||
3 | remote: https://rails-assets.org/ | ||
4 | specs: | ||
5 | actioncable (5.1.6) | ||
6 | actionpack (= 5.1.6) | ||
7 | nio4r (~> 2.0) | ||
8 | websocket-driver (~> 0.6.1) | ||
9 | actionmailer (5.1.6) | ||
10 | actionpack (= 5.1.6) | ||
11 | actionview (= 5.1.6) | ||
12 | activejob (= 5.1.6) | ||
13 | mail (~> 2.5, >= 2.5.4) | ||
14 | rails-dom-testing (~> 2.0) | ||
15 | actionpack (5.1.6) | ||
16 | actionview (= 5.1.6) | ||
17 | activesupport (= 5.1.6) | ||
18 | rack (~> 2.0) | ||
19 | rack-test (>= 0.6.3) | ||
20 | rails-dom-testing (~> 2.0) | ||
21 | rails-html-sanitizer (~> 1.0, >= 1.0.2) | ||
22 | actionview (5.1.6) | ||
23 | activesupport (= 5.1.6) | ||
24 | builder (~> 3.1) | ||
25 | erubi (~> 1.4) | ||
26 | rails-dom-testing (~> 2.0) | ||
27 | rails-html-sanitizer (~> 1.0, >= 1.0.3) | ||
28 | active_model_serializers (0.9.7) | ||
29 | activemodel (>= 3.2) | ||
30 | concurrent-ruby (~> 1.0) | ||
31 | activejob (5.1.6) | ||
32 | activesupport (= 5.1.6) | ||
33 | globalid (>= 0.3.6) | ||
34 | activemodel (5.1.6) | ||
35 | activesupport (= 5.1.6) | ||
36 | activerecord (5.1.6) | ||
37 | activemodel (= 5.1.6) | ||
38 | activesupport (= 5.1.6) | ||
39 | arel (~> 8.0) | ||
40 | activerecord-import (0.27.0) | ||
41 | activerecord (>= 3.2) | ||
42 | activesupport (5.1.6) | ||
43 | concurrent-ruby (~> 1.0, >= 1.0.2) | ||
44 | i18n (>= 0.7, < 2) | ||
45 | minitest (~> 5.1) | ||
46 | tzinfo (~> 1.1) | ||
47 | acts-as-taggable-on (6.0.0) | ||
48 | activerecord (~> 5.0) | ||
49 | acts_as_api (1.0.1) | ||
50 | activemodel (>= 3.0.0) | ||
51 | activesupport (>= 3.0.0) | ||
52 | rack (>= 1.1.0) | ||
53 | addressable (2.5.2) | ||
54 | public_suffix (>= 2.0.2, < 4.0) | ||
55 | aes_key_wrap (1.0.1) | ||
56 | arel (8.0.0) | ||
57 | asset_sync (2.5.0) | ||
58 | activemodel (>= 4.1.0) | ||
59 | fog-core | ||
60 | mime-types (>= 2.99) | ||
61 | unf | ||
62 | ast (2.4.0) | ||
63 | attr_required (1.0.1) | ||
64 | autoprefixer-rails (8.6.5) | ||
65 | execjs | ||
66 | backports (3.11.4) | ||
67 | bcrypt (3.1.12) | ||
68 | bindata (2.4.4) | ||
69 | bootstrap-sass (3.3.7) | ||
70 | autoprefixer-rails (>= 5.2.1) | ||
71 | sass (>= 3.3.4) | ||
72 | bootstrap-switch-rails (3.3.4) | ||
73 | buftok (0.2.0) | ||
74 | builder (3.2.3) | ||
75 | byebug (10.0.2) | ||
76 | capybara (3.11.1) | ||
77 | addressable | ||
78 | mini_mime (>= 0.1.3) | ||
79 | nokogiri (~> 1.8) | ||
80 | rack (>= 1.6.0) | ||
81 | rack-test (>= 0.6.3) | ||
82 | regexp_parser (~> 1.2) | ||
83 | xpath (~> 3.2) | ||
84 | carrierwave (1.2.3) | ||
85 | activemodel (>= 4.0.0) | ||
86 | activesupport (>= 4.0.0) | ||
87 | mime-types (>= 1.16) | ||
88 | celluloid (0.17.3) | ||
89 | celluloid-essentials | ||
90 | celluloid-extras | ||
91 | celluloid-fsm | ||
92 | celluloid-pool | ||
93 | celluloid-supervision | ||
94 | timers (>= 4.1.1) | ||
95 | celluloid-essentials (0.20.5) | ||
96 | timers (>= 4.1.1) | ||
97 | celluloid-extras (0.20.5) | ||
98 | timers (>= 4.1.1) | ||
99 | celluloid-fsm (0.20.5) | ||
100 | timers (>= 4.1.1) | ||
101 | celluloid-io (0.17.3) | ||
102 | celluloid (>= 0.17.2) | ||
103 | nio4r (>= 1.1) | ||
104 | timers (>= 4.1.1) | ||
105 | celluloid-pool (0.20.5) | ||
106 | timers (>= 4.1.1) | ||
107 | celluloid-supervision (0.20.6) | ||
108 | timers (>= 4.1.1) | ||
109 | chunky_png (1.3.10) | ||
110 | cliver (0.3.2) | ||
111 | coderay (1.1.2) | ||
112 | compass (1.0.3) | ||
113 | chunky_png (~> 1.2) | ||
114 | compass-core (~> 1.0.2) | ||
115 | compass-import-once (~> 1.0.5) | ||
116 | rb-fsevent (>= 0.9.3) | ||
117 | rb-inotify (>= 0.9) | ||
118 | sass (>= 3.3.13, < 3.5) | ||
119 | compass-core (1.0.3) | ||
120 | multi_json (~> 1.0) | ||
121 | sass (>= 3.3.0, < 3.5) | ||
122 | compass-import-once (1.0.5) | ||
123 | sass (>= 3.2, < 3.5) | ||
124 | compass-rails (3.1.0) | ||
125 | compass (~> 1.0.0) | ||
126 | sass-rails (< 5.1) | ||
127 | sprockets (< 4.0) | ||
128 | concurrent-ruby (1.1.3) | ||
129 | configurate (0.3.1) | ||
130 | connection_pool (2.2.2) | ||
131 | coveralls (0.8.22) | ||
132 | json (>= 1.8, < 3) | ||
133 | simplecov (~> 0.16.1) | ||
134 | term-ansicolor (~> 1.3) | ||
135 | thor (~> 0.19.4) | ||
136 | tins (~> 1.6) | ||
137 | crack (0.4.3) | ||
138 | safe_yaml (~> 1.0.0) | ||
139 | crass (1.0.4) | ||
140 | cucumber (3.1.2) | ||
141 | builder (>= 2.1.2) | ||
142 | cucumber-core (~> 3.2.0) | ||
143 | cucumber-expressions (~> 6.0.1) | ||
144 | cucumber-wire (~> 0.0.1) | ||
145 | diff-lcs (~> 1.3) | ||
146 | gherkin (~> 5.1.0) | ||
147 | multi_json (>= 1.7.5, < 2.0) | ||
148 | multi_test (>= 0.1.2) | ||
149 | cucumber-api-steps (0.14.0) | ||
150 | cucumber (>= 2.0.2) | ||
151 | jsonpath (>= 0.1.2) | ||
152 | cucumber-core (3.2.1) | ||
153 | backports (>= 3.8.0) | ||
154 | cucumber-tag_expressions (~> 1.1.0) | ||
155 | gherkin (~> 5.0) | ||
156 | cucumber-expressions (6.0.1) | ||
157 | cucumber-rails (1.6.0) | ||
158 | capybara (>= 1.1.2, < 4) | ||
159 | cucumber (>= 3.0.2, < 4) | ||
160 | mime-types (>= 1.17, < 4) | ||
161 | nokogiri (~> 1.8) | ||
162 | railties (>= 4, < 6) | ||
163 | cucumber-tag_expressions (1.1.1) | ||
164 | cucumber-wire (0.0.1) | ||
165 | database_cleaner (1.7.0) | ||
166 | devise (4.5.0) | ||
167 | bcrypt (~> 3.0) | ||
168 | orm_adapter (~> 0.1) | ||
169 | railties (>= 4.1.0, < 6.0) | ||
170 | responders | ||
171 | warden (~> 1.2.3) | ||
172 | devise_lastseenable (0.0.6) | ||
173 | devise | ||
174 | rails (>= 3.0.4) | ||
175 | diaspora-prosody-config (0.0.7) | ||
176 | diaspora_federation (0.2.5) | ||
177 | faraday (>= 0.9.0, < 0.16.0) | ||
178 | faraday_middleware (>= 0.10.0, < 0.13.0) | ||
179 | nokogiri (~> 1.6, >= 1.6.8) | ||
180 | typhoeus (~> 1.0) | ||
181 | valid (~> 1.0) | ||
182 | diaspora_federation-json_schema (0.2.5) | ||
183 | diaspora_federation-rails (0.2.5) | ||
184 | actionpack (>= 4.2, < 6) | ||
185 | diaspora_federation (= 0.2.5) | ||
186 | diaspora_federation-test (0.2.5) | ||
187 | diaspora_federation (= 0.2.5) | ||
188 | fabrication (~> 2.16) | ||
189 | uuid (~> 2.3, >= 2.3.8) | ||
190 | diff-lcs (1.3) | ||
191 | docile (1.3.1) | ||
192 | domain_name (0.5.20180417) | ||
193 | unf (>= 0.0.5, < 1.0.0) | ||
194 | entypo-rails (3.0.0) | ||
195 | railties (>= 4.1, < 6) | ||
196 | equalizer (0.0.11) | ||
197 | erubi (1.7.1) | ||
198 | eslintrb (2.1.0) | ||
199 | execjs | ||
200 | multi_json (>= 1.3) | ||
201 | rake | ||
202 | et-orbi (1.1.6) | ||
203 | tzinfo | ||
204 | ethon (0.11.0) | ||
205 | ffi (>= 1.3.0) | ||
206 | excon (0.62.0) | ||
207 | execjs (2.7.0) | ||
208 | eye (0.10.0) | ||
209 | celluloid (~> 0.17.3) | ||
210 | celluloid-io (~> 0.17.0) | ||
211 | kostya-sigar (~> 2.0.0) | ||
212 | state_machines | ||
213 | thor | ||
214 | fabrication (2.20.1) | ||
215 | factory_girl (4.8.0) | ||
216 | activesupport (>= 3.0.0) | ||
217 | factory_girl_rails (4.8.0) | ||
218 | factory_girl (~> 4.8.0) | ||
219 | railties (>= 3.0.0) | ||
220 | faraday (0.15.3) | ||
221 | multipart-post (>= 1.2, < 3) | ||
222 | faraday-cookie_jar (0.0.6) | ||
223 | faraday (>= 0.7.4) | ||
224 | http-cookie (~> 1.0.0) | ||
225 | faraday_middleware (0.12.2) | ||
226 | faraday (>= 0.7.4, < 1.0) | ||
227 | ffi (1.9.25) | ||
228 | fixture_builder (0.5.2.rc3) | ||
229 | activerecord (>= 2) | ||
230 | activesupport (>= 2) | ||
231 | hashdiff | ||
232 | fog-aws (3.3.0) | ||
233 | fog-core (~> 2.1) | ||
234 | fog-json (~> 1.1) | ||
235 | fog-xml (~> 0.1) | ||
236 | ipaddress (~> 0.8) | ||
237 | fog-core (2.1.2) | ||
238 | builder | ||
239 | excon (~> 0.58) | ||
240 | formatador (~> 0.2) | ||
241 | mime-types | ||
242 | fog-json (1.2.0) | ||
243 | fog-core | ||
244 | multi_json (~> 1.10) | ||
245 | fog-xml (0.1.3) | ||
246 | fog-core | ||
247 | nokogiri (>= 1.5.11, < 2.0.0) | ||
248 | formatador (0.2.5) | ||
249 | fugit (1.1.6) | ||
250 | et-orbi (~> 1.1, >= 1.1.6) | ||
251 | raabro (~> 1.1) | ||
252 | fuubar (2.3.2) | ||
253 | rspec-core (~> 3.0) | ||
254 | ruby-progressbar (~> 1.4) | ||
255 | get_process_mem (0.2.3) | ||
256 | gherkin (5.1.0) | ||
257 | gitlab (4.7.0) | ||
258 | httparty (>= 0.14.0) | ||
259 | terminal-table (>= 1.5.1) | ||
260 | globalid (0.4.1) | ||
261 | activesupport (>= 4.2.0) | ||
262 | gon (6.2.1) | ||
263 | actionpack (>= 3.0) | ||
264 | multi_json | ||
265 | request_store (>= 1.0) | ||
266 | guard (2.15.0) | ||
267 | formatador (>= 0.2.4) | ||
268 | listen (>= 2.7, < 4.0) | ||
269 | lumberjack (>= 1.0.12, < 2.0) | ||
270 | nenv (~> 0.1) | ||
271 | notiffany (~> 0.0) | ||
272 | pry (>= 0.9.12) | ||
273 | shellany (~> 0.0) | ||
274 | thor (>= 0.18.1) | ||
275 | guard-compat (1.2.1) | ||
276 | guard-rspec (4.7.3) | ||
277 | guard (~> 2.1) | ||
278 | guard-compat (~> 1.1) | ||
279 | rspec (>= 2.99.0, < 4.0) | ||
280 | guard-rubocop (1.3.0) | ||
281 | guard (~> 2.0) | ||
282 | rubocop (~> 0.20) | ||
283 | haml (5.0.4) | ||
284 | temple (>= 0.8.0) | ||
285 | tilt | ||
286 | haml_lint (0.28.0) | ||
287 | haml (>= 4.0, < 5.1) | ||
288 | rainbow | ||
289 | rake (>= 10, < 13) | ||
290 | rubocop (>= 0.50.0) | ||
291 | sysexits (~> 1.1) | ||
292 | hamlit (2.9.1) | ||
293 | temple (>= 0.8.0) | ||
294 | thor | ||
295 | tilt | ||
296 | handlebars_assets (0.23.2) | ||
297 | execjs (~> 2.0) | ||
298 | sprockets (>= 2.0.0) | ||
299 | tilt (>= 1.2) | ||
300 | hashdiff (0.3.7) | ||
301 | hashie (3.5.7) | ||
302 | http (3.3.0) | ||
303 | addressable (~> 2.3) | ||
304 | http-cookie (~> 1.0) | ||
305 | http-form_data (~> 2.0) | ||
306 | http_parser.rb (~> 0.6.0) | ||
307 | http-cookie (1.0.3) | ||
308 | domain_name (~> 0.5) | ||
309 | http-form_data (2.1.1) | ||
310 | http_accept_language (2.1.1) | ||
311 | http_parser.rb (0.6.0) | ||
312 | httparty (0.16.3) | ||
313 | mime-types (~> 3.0) | ||
314 | multi_xml (>= 0.5.2) | ||
315 | httpclient (2.8.3) | ||
316 | i18n (1.1.1) | ||
317 | concurrent-ruby (~> 1.0) | ||
318 | i18n-inflector (2.6.7) | ||
319 | i18n (>= 0.4.1) | ||
320 | i18n-inflector-rails (1.0.7) | ||
321 | actionpack (>= 3.0.0) | ||
322 | i18n-inflector (~> 2.6) | ||
323 | railties (>= 3.0.0) | ||
324 | ipaddress (0.8.3) | ||
325 | jaro_winkler (1.5.1) | ||
326 | jasmine (3.3.0) | ||
327 | jasmine-core (~> 3.3.0) | ||
328 | phantomjs | ||
329 | rack (>= 1.2.1) | ||
330 | rake | ||
331 | jasmine-core (3.3.0) | ||
332 | jasmine-jquery-rails (2.0.3) | ||
333 | jquery-rails (4.3.3) | ||
334 | rails-dom-testing (>= 1, < 3) | ||
335 | railties (>= 4.2.0) | ||
336 | thor (>= 0.14, < 2.0) | ||
337 | js-routes (1.4.4) | ||
338 | railties (>= 3.2) | ||
339 | sprockets-rails | ||
340 | js_image_paths (0.1.1) | ||
341 | rails (>= 4.0, < 6.0) | ||
342 | sprockets (>= 3.0.0) | ||
343 | json (2.1.0) | ||
344 | json-jwt (1.9.4) | ||
345 | activesupport | ||
346 | aes_key_wrap | ||
347 | bindata | ||
348 | json-schema (2.8.1) | ||
349 | addressable (>= 2.4) | ||
350 | json-schema-rspec (0.0.4) | ||
351 | json-schema (~> 2.5) | ||
352 | rspec | ||
353 | jsonpath (0.9.6) | ||
354 | multi_json | ||
355 | to_regexp (~> 0.2.1) | ||
356 | jwt (2.1.0) | ||
357 | kgio (2.11.2) | ||
358 | kostya-sigar (2.0.4) | ||
359 | leaflet-rails (1.3.1) | ||
360 | rails (>= 4.2.0) | ||
361 | listen (3.1.5) | ||
362 | rb-fsevent (~> 0.9, >= 0.9.4) | ||
363 | rb-inotify (~> 0.9, >= 0.9.7) | ||
364 | ruby_dep (~> 1.2) | ||
365 | little-plugger (1.1.4) | ||
366 | logging (2.2.2) | ||
367 | little-plugger (~> 1.1) | ||
368 | multi_json (~> 1.10) | ||
369 | logging-rails (0.6.0) | ||
370 | logging (>= 1.8) | ||
371 | loofah (2.2.3) | ||
372 | crass (~> 1.0.2) | ||
373 | nokogiri (>= 1.5.9) | ||
374 | lumberjack (1.0.13) | ||
375 | macaddr (1.7.1) | ||
376 | systemu (~> 2.6.2) | ||
377 | mail (2.7.1) | ||
378 | mini_mime (>= 0.1.1) | ||
379 | markdown-it-html5-embed (1.0.0) | ||
380 | markerb (1.1.0) | ||
381 | memoizable (0.4.2) | ||
382 | thread_safe (~> 0.3, >= 0.3.1) | ||
383 | method_source (0.9.2) | ||
384 | mime-types (3.2.2) | ||
385 | mime-types-data (~> 3.2015) | ||
386 | mime-types-data (3.2018.0812) | ||
387 | mini_magick (4.9.2) | ||
388 | mini_mime (1.0.1) | ||
389 | mini_portile2 (2.3.0) | ||
390 | minitest (5.11.3) | ||
391 | mobile-fu (1.4.0) | ||
392 | rack-mobile-detect | ||
393 | rails | ||
394 | multi_json (1.13.1) | ||
395 | multi_test (0.1.2) | ||
396 | multi_xml (0.6.0) | ||
397 | multipart-post (2.0.0) | ||
398 | mysql2 (0.5.2) | ||
399 | naught (1.1.0) | ||
400 | nenv (0.3.0) | ||
401 | net-ldap (0.16.1) | ||
402 | nio4r (2.3.1) | ||
403 | nokogiri (1.8.5) | ||
404 | mini_portile2 (~> 2.3.0) | ||
405 | notiffany (0.1.1) | ||
406 | nenv (~> 0.1) | ||
407 | shellany (~> 0.0) | ||
408 | oauth (0.5.4) | ||
409 | oauth2 (1.4.1) | ||
410 | faraday (>= 0.8, < 0.16.0) | ||
411 | jwt (>= 1.0, < 3.0) | ||
412 | multi_json (~> 1.3) | ||
413 | multi_xml (~> 0.5) | ||
414 | rack (>= 1.2, < 3) | ||
415 | octokit (4.13.0) | ||
416 | sawyer (~> 0.8.0, >= 0.5.3) | ||
417 | omniauth (1.8.1) | ||
418 | hashie (>= 3.4.6, < 3.6.0) | ||
419 | rack (>= 1.6.2, < 3) | ||
420 | omniauth-oauth (1.1.0) | ||
421 | oauth | ||
422 | omniauth (~> 1.0) | ||
423 | omniauth-oauth2 (1.5.0) | ||
424 | oauth2 (~> 1.1) | ||
425 | omniauth (~> 1.2) | ||
426 | omniauth-tumblr (1.2) | ||
427 | multi_json | ||
428 | omniauth-oauth (~> 1.0) | ||
429 | omniauth-twitter (1.4.0) | ||
430 | omniauth-oauth (~> 1.1) | ||
431 | rack | ||
432 | omniauth-wordpress (0.2.2) | ||
433 | omniauth-oauth2 (>= 1.1.0) | ||
434 | open_graph_reader (0.6.2) | ||
435 | faraday (>= 0.9.0) | ||
436 | nokogiri (~> 1.6) | ||
437 | openid_connect (1.1.6) | ||
438 | activemodel | ||
439 | attr_required (>= 1.0.0) | ||
440 | json-jwt (>= 1.5.0) | ||
441 | rack-oauth2 (>= 1.6.1) | ||
442 | swd (>= 1.0.0) | ||
443 | tzinfo | ||
444 | validate_email | ||
445 | validate_url | ||
446 | webfinger (>= 1.0.1) | ||
447 | orm_adapter (0.5.0) | ||
448 | parallel (1.12.1) | ||
449 | parser (2.5.3.0) | ||
450 | ast (~> 2.4.0) | ||
451 | pg (1.1.3) | ||
452 | phantomjs (2.1.1.0) | ||
453 | poltergeist (1.18.1) | ||
454 | capybara (>= 2.1, < 4) | ||
455 | cliver (~> 0.3.1) | ||
456 | websocket-driver (>= 0.2.0) | ||
457 | powerpack (0.1.2) | ||
458 | pronto (0.9.5) | ||
459 | gitlab (~> 4.0, >= 4.0.0) | ||
460 | httparty (>= 0.13.7) | ||
461 | octokit (~> 4.7, >= 4.7.0) | ||
462 | rainbow (~> 2.1) | ||
463 | rugged (~> 0.24, >= 0.23.0) | ||
464 | thor (~> 0.19.0) | ||
465 | pronto-eslint (0.9.1) | ||
466 | eslintrb (~> 2.0, >= 2.0.0) | ||
467 | pronto (~> 0.9.0) | ||
468 | pronto-haml (0.9.0) | ||
469 | haml_lint (~> 0.23) | ||
470 | pronto (~> 0.9.0) | ||
471 | pronto-rubocop (0.9.1) | ||
472 | pronto (~> 0.9.0) | ||
473 | rubocop (~> 0.50, >= 0.49.1) | ||
474 | pronto-scss (0.9.1) | ||
475 | pronto (~> 0.9.0) | ||
476 | scss_lint (~> 0.43, >= 0.43.0) | ||
477 | pry (0.12.2) | ||
478 | coderay (~> 1.1.0) | ||
479 | method_source (~> 0.9.0) | ||
480 | pry-byebug (3.6.0) | ||
481 | byebug (~> 10.0) | ||
482 | pry (~> 0.10) | ||
483 | public_suffix (3.0.3) | ||
484 | raabro (1.1.6) | ||
485 | rack (2.0.6) | ||
486 | rack-cors (1.0.2) | ||
487 | rack-google-analytics (1.2.0) | ||
488 | actionpack | ||
489 | activesupport | ||
490 | rack-mobile-detect (0.4.0) | ||
491 | rack | ||
492 | rack-oauth2 (1.9.3) | ||
493 | activesupport | ||
494 | attr_required | ||
495 | httpclient | ||
496 | json-jwt (>= 1.9.0) | ||
497 | rack | ||
498 | rack-piwik (0.3.0) | ||
499 | rack-protection (2.0.4) | ||
500 | rack | ||
501 | rack-rewrite (1.5.1) | ||
502 | rack-ssl (1.4.1) | ||
503 | rack | ||
504 | rack-test (1.1.0) | ||
505 | rack (>= 1.0, < 3) | ||
506 | rails (5.1.6) | ||
507 | actioncable (= 5.1.6) | ||
508 | actionmailer (= 5.1.6) | ||
509 | actionpack (= 5.1.6) | ||
510 | actionview (= 5.1.6) | ||
511 | activejob (= 5.1.6) | ||
512 | activemodel (= 5.1.6) | ||
513 | activerecord (= 5.1.6) | ||
514 | activesupport (= 5.1.6) | ||
515 | bundler (>= 1.3.0) | ||
516 | railties (= 5.1.6) | ||
517 | sprockets-rails (>= 2.0.0) | ||
518 | rails-assets-autosize (4.0.2) | ||
519 | rails-assets-backbone (1.3.3) | ||
520 | rails-assets-underscore (>= 1.8.3) | ||
521 | rails-assets-blueimp-gallery (2.33.0) | ||
522 | rails-assets-bootstrap (3.3.7) | ||
523 | rails-assets-jquery (>= 1.9.1, < 4) | ||
524 | rails-assets-bootstrap-markdown (2.10.0) | ||
525 | rails-assets-bootstrap (~> 3) | ||
526 | rails-assets-corejs-typeahead (1.2.1) | ||
527 | rails-assets-jquery (>= 1.11) | ||
528 | rails-assets-diaspora_jsxc (0.1.5.develop.7) | ||
529 | rails-assets-emojione (~> 2.0.1) | ||
530 | rails-assets-favico.js (>= 0.3.10, < 0.4) | ||
531 | rails-assets-jquery-colorbox (~> 1.6.3) | ||
532 | rails-assets-jquery-fullscreen-plugin (~> 0.5.0) | ||
533 | rails-assets-jquery.slimscroll (~> 1.3.6) | ||
534 | rails-assets-jquery.ui (~> 1.11.4) | ||
535 | rails-assets-emojione (2.0.1) | ||
536 | rails-assets-favico.js (0.3.10) | ||
537 | rails-assets-fine-uploader (5.13.0) | ||
538 | rails-assets-highlightjs (9.12.0) | ||
539 | rails-assets-jasmine (3.3.0) | ||
540 | rails-assets-jasmine-ajax (3.4.0) | ||
541 | rails-assets-jasmine (~> 3) | ||
542 | rails-assets-jquery (3.3.1) | ||
543 | rails-assets-jquery-colorbox (1.6.4) | ||
544 | rails-assets-jquery (>= 1.3.2) | ||
545 | rails-assets-jquery-fullscreen-plugin (0.5.0) | ||
546 | rails-assets-jquery-placeholder (2.3.1) | ||
547 | rails-assets-jquery (>= 1.6) | ||
548 | rails-assets-jquery-textchange (0.2.3) | ||
549 | rails-assets-jquery | ||
550 | rails-assets-jquery.are-you-sure (1.9.0) | ||
551 | rails-assets-jquery (>= 1.4.2) | ||
552 | rails-assets-jquery.slimscroll (1.3.8) | ||
553 | rails-assets-jquery.ui (1.11.4) | ||
554 | rails-assets-jquery (>= 1.6) | ||
555 | rails-assets-markdown-it--markdown-it-for-inline (0.1.1) | ||
556 | rails-assets-markdown-it (8.4.2) | ||
557 | rails-assets-markdown-it-diaspora-mention (1.2.0) | ||
558 | rails-assets-markdown-it-hashtag (0.4.0) | ||
559 | rails-assets-markdown-it-sanitizer (0.4.3) | ||
560 | rails-assets-markdown-it-sub (1.0.0) | ||
561 | rails-assets-markdown-it-sup (1.0.0) | ||
562 | rails-assets-underscore (1.9.1) | ||
563 | rails-assets-utatti-perfect-scrollbar (1.4.0) | ||
564 | rails-controller-testing (1.0.2) | ||
565 | actionpack (~> 5.x, >= 5.0.1) | ||
566 | actionview (~> 5.x, >= 5.0.1) | ||
567 | activesupport (~> 5.x) | ||
568 | rails-dom-testing (2.0.3) | ||
569 | activesupport (>= 4.2.0) | ||
570 | nokogiri (>= 1.6) | ||
571 | rails-html-sanitizer (1.0.4) | ||
572 | loofah (~> 2.2, >= 2.2.2) | ||
573 | rails-i18n (5.1.2) | ||
574 | i18n (>= 0.7, < 2) | ||
575 | railties (>= 5.0, < 6) | ||
576 | rails-timeago (2.16.0) | ||
577 | actionpack (>= 3.1) | ||
578 | activesupport (>= 3.1) | ||
579 | railties (5.1.6) | ||
580 | actionpack (= 5.1.6) | ||
581 | activesupport (= 5.1.6) | ||
582 | method_source | ||
583 | rake (>= 0.8.7) | ||
584 | thor (>= 0.18.1, < 2.0) | ||
585 | rainbow (2.2.2) | ||
586 | rake | ||
587 | raindrops (0.19.0) | ||
588 | rake (12.3.1) | ||
589 | rb-fsevent (0.10.3) | ||
590 | rb-inotify (0.9.10) | ||
591 | ffi (>= 0.5.0, < 2) | ||
592 | redcarpet (3.4.0) | ||
593 | redis (3.3.5) | ||
594 | regexp_parser (1.3.0) | ||
595 | request_store (1.4.1) | ||
596 | rack (>= 1.4) | ||
597 | responders (2.4.0) | ||
598 | actionpack (>= 4.2.0, < 5.3) | ||
599 | railties (>= 4.2.0, < 5.3) | ||
600 | rspec (3.8.0) | ||
601 | rspec-core (~> 3.8.0) | ||
602 | rspec-expectations (~> 3.8.0) | ||
603 | rspec-mocks (~> 3.8.0) | ||
604 | rspec-core (3.8.0) | ||
605 | rspec-support (~> 3.8.0) | ||
606 | rspec-expectations (3.8.2) | ||
607 | diff-lcs (>= 1.2.0, < 2.0) | ||
608 | rspec-support (~> 3.8.0) | ||
609 | rspec-json_expectations (2.1.0) | ||
610 | rspec-mocks (3.8.0) | ||
611 | diff-lcs (>= 1.2.0, < 2.0) | ||
612 | rspec-support (~> 3.8.0) | ||
613 | rspec-rails (3.8.1) | ||
614 | actionpack (>= 3.0) | ||
615 | activesupport (>= 3.0) | ||
616 | railties (>= 3.0) | ||
617 | rspec-core (~> 3.8.0) | ||
618 | rspec-expectations (~> 3.8.0) | ||
619 | rspec-mocks (~> 3.8.0) | ||
620 | rspec-support (~> 3.8.0) | ||
621 | rspec-support (3.8.0) | ||
622 | rubocop (0.60.0) | ||
623 | jaro_winkler (~> 1.5.1) | ||
624 | parallel (~> 1.10) | ||
625 | parser (>= 2.5, != 2.5.1.1) | ||
626 | powerpack (~> 0.1) | ||
627 | rainbow (>= 2.2.2, < 4.0) | ||
628 | ruby-progressbar (~> 1.7) | ||
629 | unicode-display_width (~> 1.4.0) | ||
630 | ruby-oembed (0.12.0) | ||
631 | ruby-progressbar (1.10.0) | ||
632 | ruby_dep (1.5.0) | ||
633 | rubyzip (1.2.2) | ||
634 | rugged (0.27.5) | ||
635 | safe_yaml (1.0.4) | ||
636 | sass (3.4.25) | ||
637 | sass-rails (5.0.7) | ||
638 | railties (>= 4.0.0, < 6) | ||
639 | sass (~> 3.1) | ||
640 | sprockets (>= 2.8, < 4.0) | ||
641 | sprockets-rails (>= 2.0, < 4.0) | ||
642 | tilt (>= 1.1, < 3) | ||
643 | sawyer (0.8.1) | ||
644 | addressable (>= 2.3.5, < 2.6) | ||
645 | faraday (~> 0.8, < 1.0) | ||
646 | scss_lint (0.55.0) | ||
647 | rake (>= 0.9, < 13) | ||
648 | sass (~> 3.4.20) | ||
649 | secure_headers (6.0.0) | ||
650 | shellany (0.0.1) | ||
651 | shoulda-matchers (3.1.2) | ||
652 | activesupport (>= 4.0.0) | ||
653 | sidekiq (5.2.3) | ||
654 | connection_pool (~> 2.2, >= 2.2.2) | ||
655 | rack-protection (>= 1.5.0) | ||
656 | redis (>= 3.3.5, < 5) | ||
657 | sidekiq-cron (1.0.4) | ||
658 | fugit (~> 1.1) | ||
659 | sidekiq (>= 4.2.1) | ||
660 | simple_captcha2 (0.4.3) | ||
661 | rails (>= 4.1) | ||
662 | simple_oauth (0.3.1) | ||
663 | simplecov (0.16.1) | ||
664 | docile (~> 1.1) | ||
665 | json (>= 1.8, < 3) | ||
666 | simplecov-html (~> 0.10.0) | ||
667 | simplecov-html (0.10.2) | ||
668 | sinon-rails (1.15.0) | ||
669 | railties (>= 3.1) | ||
670 | spring (2.0.2) | ||
671 | activesupport (>= 4.2) | ||
672 | spring-commands-cucumber (1.0.1) | ||
673 | spring (>= 0.9.1) | ||
674 | spring-commands-rspec (1.0.4) | ||
675 | spring (>= 0.9.1) | ||
676 | sprockets (3.7.2) | ||
677 | concurrent-ruby (~> 1.0) | ||
678 | rack (> 1, < 3) | ||
679 | sprockets-rails (3.2.1) | ||
680 | actionpack (>= 4.0) | ||
681 | activesupport (>= 4.0) | ||
682 | sprockets (>= 3.0.0) | ||
683 | state_machines (0.5.0) | ||
684 | string-direction (1.2.1) | ||
685 | swd (1.1.2) | ||
686 | activesupport (>= 3) | ||
687 | attr_required (>= 0.0.5) | ||
688 | httpclient (>= 2.4) | ||
689 | sysexits (1.2.0) | ||
690 | systemu (2.6.5) | ||
691 | temple (0.8.0) | ||
692 | term-ansicolor (1.7.0) | ||
693 | tins (~> 1.0) | ||
694 | terminal-table (1.8.0) | ||
695 | unicode-display_width (~> 1.1, >= 1.1.1) | ||
696 | thor (0.19.4) | ||
697 | thread_safe (0.3.6) | ||
698 | tilt (2.0.8) | ||
699 | timecop (0.9.1) | ||
700 | timers (4.2.0) | ||
701 | tins (1.20.2) | ||
702 | to_regexp (0.2.1) | ||
703 | turbo_dev_assets (0.0.2) | ||
704 | twitter (6.2.0) | ||
705 | addressable (~> 2.3) | ||
706 | buftok (~> 0.2.0) | ||
707 | equalizer (~> 0.0.11) | ||
708 | http (~> 3.0) | ||
709 | http-form_data (~> 2.0) | ||
710 | http_parser.rb (~> 0.6.0) | ||
711 | memoizable (~> 0.4.0) | ||
712 | multipart-post (~> 2.0) | ||
713 | naught (~> 1.0) | ||
714 | simple_oauth (~> 0.3.0) | ||
715 | twitter-text (1.14.7) | ||
716 | unf (~> 0.1.0) | ||
717 | typhoeus (1.3.1) | ||
718 | ethon (>= 0.9.0) | ||
719 | tzinfo (1.2.5) | ||
720 | thread_safe (~> 0.1) | ||
721 | uglifier (4.1.19) | ||
722 | execjs (>= 0.3.0, < 3) | ||
723 | unf (0.1.4) | ||
724 | unf_ext | ||
725 | unf_ext (0.0.7.5) | ||
726 | unicode-display_width (1.4.0) | ||
727 | unicorn (5.4.1) | ||
728 | kgio (~> 2.6) | ||
729 | raindrops (~> 0.7) | ||
730 | unicorn-worker-killer (0.4.4) | ||
731 | get_process_mem (~> 0) | ||
732 | unicorn (>= 4, < 6) | ||
733 | uuid (2.3.9) | ||
734 | macaddr (~> 1.0) | ||
735 | valid (1.2.0) | ||
736 | validate_email (0.1.6) | ||
737 | activemodel (>= 3.0) | ||
738 | mail (>= 2.2.5) | ||
739 | validate_url (1.0.2) | ||
740 | activemodel (>= 3.0.0) | ||
741 | addressable | ||
742 | versionist (1.7.0) | ||
743 | activesupport (>= 3) | ||
744 | railties (>= 3) | ||
745 | yard (~> 0.9.11) | ||
746 | warden (1.2.8) | ||
747 | rack (>= 2.0.6) | ||
748 | webfinger (1.1.0) | ||
749 | activesupport | ||
750 | httpclient (>= 2.4) | ||
751 | webmock (3.4.2) | ||
752 | addressable (>= 2.3.6) | ||
753 | crack (>= 0.3.2) | ||
754 | hashdiff | ||
755 | websocket-driver (0.6.5) | ||
756 | websocket-extensions (>= 0.1.0) | ||
757 | websocket-extensions (0.1.3) | ||
758 | will_paginate (3.1.6) | ||
759 | xpath (3.2.0) | ||
760 | nokogiri (~> 1.8) | ||
761 | yard (0.9.16) | ||
762 | |||
763 | PLATFORMS | ||
764 | ruby | ||
765 | |||
766 | DEPENDENCIES | ||
767 | active_model_serializers (= 0.9.7) | ||
768 | activerecord-import (= 0.27.0) | ||
769 | acts-as-taggable-on (= 6.0.0) | ||
770 | acts_as_api (= 1.0.1) | ||
771 | addressable (= 2.5.2) | ||
772 | asset_sync (= 2.5.0) | ||
773 | autoprefixer-rails (= 8.6.5) | ||
774 | bootstrap-sass (= 3.3.7) | ||
775 | bootstrap-switch-rails (= 3.3.4) | ||
776 | capybara (= 3.11.1) | ||
777 | carrierwave (= 1.2.3) | ||
778 | compass-rails (= 3.1.0) | ||
779 | configurate (= 0.3.1) | ||
780 | coveralls (= 0.8.22) | ||
781 | cucumber-api-steps (= 0.14) | ||
782 | cucumber-rails (= 1.6.0) | ||
783 | database_cleaner (= 1.7.0) | ||
784 | devise (= 4.5.0) | ||
785 | devise_lastseenable (= 0.0.6) | ||
786 | diaspora-prosody-config (= 0.0.7) | ||
787 | diaspora_federation-json_schema (= 0.2.5) | ||
788 | diaspora_federation-rails (= 0.2.5) | ||
789 | diaspora_federation-test (= 0.2.5) | ||
790 | entypo-rails (= 3.0.0) | ||
791 | eye (= 0.10.0) | ||
792 | factory_girl_rails (= 4.8.0) | ||
793 | faraday (= 0.15.3) | ||
794 | faraday-cookie_jar (= 0.0.6) | ||
795 | faraday_middleware (= 0.12.2) | ||
796 | fixture_builder (= 0.5.2.rc3) | ||
797 | fog-aws (= 3.3.0) | ||
798 | fuubar (= 2.3.2) | ||
799 | gon (= 6.2.1) | ||
800 | guard (= 2.15.0) | ||
801 | guard-rspec (= 4.7.3) | ||
802 | guard-rubocop (= 1.3.0) | ||
803 | haml_lint (= 0.28.0) | ||
804 | hamlit (= 2.9.1) | ||
805 | handlebars_assets (= 0.23.2) | ||
806 | http_accept_language (= 2.1.1) | ||
807 | i18n-inflector-rails (= 1.0.7) | ||
808 | jasmine (= 3.3.0) | ||
809 | jasmine-jquery-rails (= 2.0.3) | ||
810 | jquery-rails (= 4.3.3) | ||
811 | js-routes (= 1.4.4) | ||
812 | js_image_paths (= 0.1.1) | ||
813 | json (= 2.1.0) | ||
814 | json-schema (= 2.8.1) | ||
815 | json-schema-rspec (= 0.0.4) | ||
816 | leaflet-rails (= 1.3.1) | ||
817 | logging-rails (= 0.6.0) | ||
818 | markdown-it-html5-embed (= 1.0.0) | ||
819 | markerb (= 1.1.0) | ||
820 | mini_magick (= 4.9.2) | ||
821 | minitest | ||
822 | mobile-fu (= 1.4.0) | ||
823 | mysql2 (= 0.5.2) | ||
824 | net-ldap (~> 0.16) | ||
825 | nokogiri (= 1.8.5) | ||
826 | omniauth (= 1.8.1) | ||
827 | omniauth-tumblr (= 1.2) | ||
828 | omniauth-twitter (= 1.4.0) | ||
829 | omniauth-wordpress (= 0.2.2) | ||
830 | open_graph_reader (= 0.6.2) | ||
831 | openid_connect (= 1.1.6) | ||
832 | pg (= 1.1.3) | ||
833 | poltergeist (= 1.18.1) | ||
834 | pronto (= 0.9.5) | ||
835 | pronto-eslint (= 0.9.1) | ||
836 | pronto-haml (= 0.9.0) | ||
837 | pronto-rubocop (= 0.9.1) | ||
838 | pronto-scss (= 0.9.1) | ||
839 | pry | ||
840 | pry-byebug | ||
841 | rack-cors (= 1.0.2) | ||
842 | rack-google-analytics (= 1.2.0) | ||
843 | rack-piwik (= 0.3.0) | ||
844 | rack-rewrite (= 1.5.1) | ||
845 | rack-ssl (= 1.4.1) | ||
846 | rails (= 5.1.6) | ||
847 | rails-assets-autosize (= 4.0.2)! | ||
848 | rails-assets-backbone (= 1.3.3)! | ||
849 | rails-assets-blueimp-gallery (= 2.33.0)! | ||
850 | rails-assets-bootstrap-markdown (= 2.10.0)! | ||
851 | rails-assets-corejs-typeahead (= 1.2.1)! | ||
852 | rails-assets-diaspora_jsxc (= 0.1.5.develop.7)! | ||
853 | rails-assets-fine-uploader (= 5.13.0)! | ||
854 | rails-assets-highlightjs (= 9.12.0)! | ||
855 | rails-assets-jasmine-ajax (= 3.4.0)! | ||
856 | rails-assets-jquery (= 3.3.1)! | ||
857 | rails-assets-jquery-placeholder (= 2.3.1)! | ||
858 | rails-assets-jquery-textchange (= 0.2.3)! | ||
859 | rails-assets-jquery.are-you-sure (= 1.9.0)! | ||
860 | rails-assets-jquery.ui (= 1.11.4)! | ||
861 | rails-assets-markdown-it (= 8.4.2)! | ||
862 | rails-assets-markdown-it--markdown-it-for-inline (= 0.1.1)! | ||
863 | rails-assets-markdown-it-diaspora-mention (= 1.2.0)! | ||
864 | rails-assets-markdown-it-hashtag (= 0.4.0)! | ||
865 | rails-assets-markdown-it-sanitizer (= 0.4.3)! | ||
866 | rails-assets-markdown-it-sub (= 1.0.0)! | ||
867 | rails-assets-markdown-it-sup (= 1.0.0)! | ||
868 | rails-assets-utatti-perfect-scrollbar (= 1.4.0)! | ||
869 | rails-controller-testing (= 1.0.2) | ||
870 | rails-i18n (= 5.1.2) | ||
871 | rails-timeago (= 2.16.0) | ||
872 | rb-fsevent (= 0.10.3) | ||
873 | rb-inotify (= 0.9.10) | ||
874 | redcarpet (= 3.4.0) | ||
875 | redis (= 3.3.5) | ||
876 | responders (= 2.4.0) | ||
877 | rspec-json_expectations (~> 2.1) | ||
878 | rspec-rails (= 3.8.1) | ||
879 | rubocop (= 0.60.0) | ||
880 | ruby-oembed (= 0.12.0) | ||
881 | rubyzip (= 1.2.2) | ||
882 | sass-rails (= 5.0.7) | ||
883 | secure_headers (= 6.0.0) | ||
884 | shoulda-matchers (= 3.1.2) | ||
885 | sidekiq (= 5.2.3) | ||
886 | sidekiq-cron (= 1.0.4) | ||
887 | simple_captcha2 (= 0.4.3) | ||
888 | simplecov (= 0.16.1) | ||
889 | sinon-rails (= 1.15.0) | ||
890 | spring (= 2.0.2) | ||
891 | spring-commands-cucumber (= 1.0.1) | ||
892 | spring-commands-rspec (= 1.0.4) | ||
893 | sprockets-rails (= 3.2.1) | ||
894 | string-direction (= 1.2.1) | ||
895 | timecop (= 0.9.1) | ||
896 | turbo_dev_assets (= 0.0.2) | ||
897 | twitter (= 6.2.0) | ||
898 | twitter-text (= 1.14.7) | ||
899 | typhoeus (= 1.3.1) | ||
900 | uglifier (= 4.1.19) | ||
901 | unicorn (= 5.4.1) | ||
902 | unicorn-worker-killer (= 0.4.4) | ||
903 | uuid (= 2.3.9) | ||
904 | versionist (= 1.7.0) | ||
905 | webmock (= 3.4.2) | ||
906 | will_paginate (= 3.1.6) | ||
907 | |||
908 | BUNDLED WITH | ||
909 | 1.17.1 | ||
diff --git a/virtual/modules/websites/tools/diaspora/default.nix b/virtual/modules/websites/tools/diaspora/default.nix new file mode 100644 index 0000000..23670dc --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/default.nix | |||
@@ -0,0 +1,117 @@ | |||
1 | { lib, pkgs, config, mylibs, ... }: | ||
2 | let | ||
3 | diaspora = pkgs.callPackage ./diaspora.nix { | ||
4 | inherit (mylibs) fetchedGithub checkEnv; | ||
5 | }; | ||
6 | |||
7 | cfg = config.services.myWebsites.tools.diaspora; | ||
8 | in { | ||
9 | options.services.myWebsites.tools.diaspora = { | ||
10 | enable = lib.mkEnableOption "enable diaspora's website"; | ||
11 | }; | ||
12 | |||
13 | config = lib.mkIf cfg.enable { | ||
14 | # FIXME: Can we use dynamic users from systemd? | ||
15 | # nixos/modules/misc/ids.nix | ||
16 | ids.uids.diaspora = 398; | ||
17 | ids.gids.diaspora = 398; | ||
18 | |||
19 | users.users.diaspora = { | ||
20 | name = "diaspora"; | ||
21 | uid = config.ids.uids.diaspora; | ||
22 | group = "diaspora"; | ||
23 | description = "Diaspora user"; | ||
24 | home = diaspora.railsRoot; | ||
25 | useDefaultShell = true; | ||
26 | packages = [ diaspora.gems pkgs.nodejs diaspora.gems.ruby ]; | ||
27 | }; | ||
28 | |||
29 | users.groups.diaspora.gid = config.ids.gids.diaspora; | ||
30 | |||
31 | systemd.services.diaspora = { | ||
32 | description = "Diaspora"; | ||
33 | wantedBy = [ "multi-user.target" ]; | ||
34 | after = [ "network.target" "redis.service" "postgresql.service" ]; | ||
35 | wants = [ "redis.service" "postgresql.service" ]; | ||
36 | |||
37 | environment.RAILS_ENV = "production"; | ||
38 | environment.BUNDLE_PATH = "${diaspora.gems}/lib/ruby/gems/2.4.0"; | ||
39 | environment.BUNDLE_GEMFILE = "${diaspora.gems.confFiles}/Gemfile"; | ||
40 | environment.EYE_SOCK = "${diaspora.socketsDir}/eye.sock"; | ||
41 | environment.EYE_PID = "${diaspora.socketsDir}/eye.pid"; | ||
42 | |||
43 | path = [ diaspora.gems pkgs.nodejs diaspora.gems.ruby pkgs.curl pkgs.which pkgs.gawk ]; | ||
44 | |||
45 | preStart = '' | ||
46 | ./bin/bundle exec rails db:migrate | ||
47 | ''; | ||
48 | |||
49 | script = '' | ||
50 | exec ${diaspora.railsRoot}/script/server | ||
51 | ''; | ||
52 | |||
53 | serviceConfig = { | ||
54 | User = "diaspora"; | ||
55 | PrivateTmp = true; | ||
56 | Restart = "always"; | ||
57 | Type = "simple"; | ||
58 | WorkingDirectory = diaspora.railsRoot; | ||
59 | StandardInput = "null"; | ||
60 | KillMode = "control-group"; | ||
61 | }; | ||
62 | |||
63 | unitConfig.RequiresMountsFor = diaspora.varDir; | ||
64 | }; | ||
65 | |||
66 | # FIXME: initial sync | ||
67 | # FIXME: touch ${diaspora.varDir}/schedule.yml | ||
68 | system.activationScripts.diaspora = { | ||
69 | deps = [ "users" ]; | ||
70 | text = '' | ||
71 | install -m 0755 -o diaspora -g diaspora -d ${diaspora.socketsDir} | ||
72 | install -m 0755 -o diaspora -g diaspora -d ${diaspora.varDir} \ | ||
73 | ${diaspora.varDir}/uploads ${diaspora.varDir}/tmp \ | ||
74 | ${diaspora.varDir}/log | ||
75 | install -m 0700 -o diaspora -g diaspora -d ${diaspora.varDir}/tmp/pids | ||
76 | if [ ! -f ${diaspora.varDir}/schedule.yml ]; then | ||
77 | echo "{}" | $wrapperDir/sudo -u diaspora tee ${diaspora.varDir}/schedule.yml | ||
78 | fi | ||
79 | ''; | ||
80 | }; | ||
81 | |||
82 | services.myWebsites.tools.modules = [ | ||
83 | "headers" "proxy" "proxy_http" "proxy_balancer" | ||
84 | # FIXME: probably only one balancer method is needed: | ||
85 | "lbmethod_byrequests" "lbmethod_bytraffic" "lbmethod_bybusyness" "lbmethod_heartbeat" | ||
86 | ]; | ||
87 | security.acme.certs."eldiron".extraDomains."diaspora.immae.eu" = null; | ||
88 | services.myWebsites.tools.vhostConfs.diaspora = { | ||
89 | certName = "eldiron"; | ||
90 | hosts = [ "diaspora.immae.eu" ]; | ||
91 | root = "${diaspora.railsRoot}/public/"; | ||
92 | extraConfig = [ '' | ||
93 | RewriteEngine On | ||
94 | RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f | ||
95 | RewriteRule ^/(.*)$ balancer://thinservers%{REQUEST_URI} [P,QSA,L] | ||
96 | |||
97 | <Proxy balancer://thinservers> | ||
98 | BalancerMember unix://${diaspora.railsSocket}|http:// | ||
99 | </Proxy> | ||
100 | |||
101 | ProxyRequests Off | ||
102 | ProxyVia On | ||
103 | ProxyPreserveHost On | ||
104 | RequestHeader set X_FORWARDED_PROTO https | ||
105 | |||
106 | <Proxy *> | ||
107 | Require all granted | ||
108 | </Proxy> | ||
109 | |||
110 | <Directory ${diaspora.railsRoot}/public> | ||
111 | Require all granted | ||
112 | Options -MultiViews | ||
113 | </Directory> | ||
114 | '' ]; | ||
115 | }; | ||
116 | }; | ||
117 | } | ||
diff --git a/virtual/modules/websites/tools/diaspora/diaspora.json b/virtual/modules/websites/tools/diaspora/diaspora.json new file mode 100644 index 0000000..d5891c1 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/diaspora.json | |||
@@ -0,0 +1,15 @@ | |||
1 | { | ||
2 | "tag": "v0.7.8.0", | ||
3 | "meta": { | ||
4 | "name": "diaspora", | ||
5 | "url": "https://github.com/diaspora/diaspora", | ||
6 | "branch": "refs/tags/v0.7.8.0" | ||
7 | }, | ||
8 | "github": { | ||
9 | "owner": "diaspora", | ||
10 | "repo": "diaspora", | ||
11 | "rev": "e1b66f3c7cb72bd2cc9cf51475b31b005a547556", | ||
12 | "sha256": "1cgyb878zhdnkh7qa9qj8lwaf0jlb1prg1qnqasf7j5kgh9wn0nn", | ||
13 | "fetchSubmodules": true | ||
14 | } | ||
15 | } | ||
diff --git a/virtual/modules/websites/tools/diaspora/diaspora.nix b/virtual/modules/websites/tools/diaspora/diaspora.nix new file mode 100644 index 0000000..7880ac5 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/diaspora.nix | |||
@@ -0,0 +1,173 @@ | |||
1 | { checkEnv, fetchedGithub, stdenv, defaultGemConfig, writeText, bundlerEnv, ruby_2_4, pkgs, cacert }: | ||
2 | let | ||
3 | gems = bundlerEnv { | ||
4 | name = "diaspora-env"; | ||
5 | ruby = ruby_2_4; | ||
6 | gemdir = ./.; | ||
7 | # FIXME: it fails if I don’t include all groups | ||
8 | #groups = [ "default" "postgresql" "production" "development" "test" ]; | ||
9 | # Had to remove them from gemset.nix, and remove mysql2 | ||
10 | # Also had to "ungroup" pg in Gemfile | ||
11 | gemConfig = defaultGemConfig // { | ||
12 | kostya-sigar = attrs: { | ||
13 | buildInputs = with pkgs; [ pkgs.perl ]; | ||
14 | }; | ||
15 | }; | ||
16 | }; | ||
17 | varDir = "/var/lib/diaspora_immae"; | ||
18 | socketsDir = "/run/diaspora"; | ||
19 | buildInputs = [ gems ] ++ (with pkgs; [ | ||
20 | git redis imagemagick libxslt nodejs | ||
21 | jemalloc cacert ruby_2_4 | ||
22 | openssl postgresql curl libnghttp2 | ||
23 | pkgconfig which | ||
24 | ]); | ||
25 | diaspora = stdenv.mkDerivation (fetchedGithub ./diaspora.json // rec { | ||
26 | buildPhase = '' | ||
27 | export GIT_SSL_CAINFO=${cacert}/etc/ssl/certs/ca-bundle.crt | ||
28 | export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt | ||
29 | |||
30 | patch -p1 < ${./ldap.patch} | ||
31 | ''; | ||
32 | installPhase = '' | ||
33 | cp -a . $out | ||
34 | ''; | ||
35 | propagatedBuildInputs = buildInputs; | ||
36 | }); | ||
37 | secret_token = assert checkEnv "NIXOPS_DIASPORA_SECRET_TOKEN"; | ||
38 | writeText "secret_token.rb" '' | ||
39 | Diaspora::Application.config.secret_key_base = '${builtins.getEnv "NIXOPS_DIASPORA_SECRET_TOKEN"}' | ||
40 | ''; | ||
41 | config = | ||
42 | assert checkEnv "NIXOPS_DIASPORA_LDAP_PASSWORD"; | ||
43 | writeText "diaspora.yml" '' | ||
44 | configuration: | ||
45 | environment: | ||
46 | url: "https://diaspora.immae.eu/" | ||
47 | certificate_authorities: '/etc/ssl/certs/ca-certificates.crt' | ||
48 | redis: 'redis://localhost:6379/15' | ||
49 | sidekiq: | ||
50 | s3: | ||
51 | assets: | ||
52 | logging: | ||
53 | logrotate: | ||
54 | debug: | ||
55 | server: | ||
56 | listen: '${socketsDir}/diaspora.sock' | ||
57 | rails_environment: 'production' | ||
58 | chat: | ||
59 | server: | ||
60 | bosh: | ||
61 | log: | ||
62 | map: | ||
63 | mapbox: | ||
64 | privacy: | ||
65 | piwik: | ||
66 | statistics: | ||
67 | camo: | ||
68 | settings: | ||
69 | enable_registrations: false | ||
70 | welcome_message: | ||
71 | invitations: | ||
72 | open: false | ||
73 | paypal_donations: | ||
74 | community_spotlight: | ||
75 | captcha: | ||
76 | enable: false | ||
77 | terms: | ||
78 | maintenance: | ||
79 | remove_old_users: | ||
80 | default_metas: | ||
81 | csp: | ||
82 | services: | ||
83 | twitter: | ||
84 | tumblr: | ||
85 | wordpress: | ||
86 | mail: | ||
87 | enable: true | ||
88 | sender_address: 'diaspora@immae.eu' | ||
89 | method: 'smtp' | ||
90 | smtp: | ||
91 | host: 'mail.immae.eu' | ||
92 | sendmail: | ||
93 | admins: | ||
94 | account: "ismael" | ||
95 | podmin_email: 'diaspora@immae.eu' | ||
96 | relay: | ||
97 | outbound: | ||
98 | inbound: | ||
99 | ldap: | ||
100 | enable: true | ||
101 | host: ldap.immae.eu | ||
102 | port: 636 | ||
103 | only_ldap: true | ||
104 | mail_attribute: mail | ||
105 | skip_email_confirmation: true | ||
106 | use_bind_dn: true | ||
107 | bind_dn: "cn=diaspora,ou=services,dc=immae,dc=eu" | ||
108 | bind_pw: "${builtins.getEnv "NIXOPS_DIASPORA_LDAP_PASSWORD"}" | ||
109 | search_base: "dc=immae,dc=eu" | ||
110 | search_filter: "(&(memberOf=cn=users,cn=diaspora,ou=services,dc=immae,dc=eu)(uid=%{username}))" | ||
111 | production: | ||
112 | environment: | ||
113 | development: | ||
114 | environment: | ||
115 | ''; | ||
116 | database_config = | ||
117 | assert checkEnv "NIXOPS_DIASPORA_SQL_PASSWORD"; | ||
118 | writeText "database.yml" '' | ||
119 | postgresql: &postgresql | ||
120 | adapter: postgresql | ||
121 | host: db-1.immae.eu | ||
122 | port: 5432 | ||
123 | username: "diaspora" | ||
124 | password: "${builtins.getEnv "NIXOPS_DIASPORA_SQL_PASSWORD"}" | ||
125 | encoding: unicode | ||
126 | common: &common | ||
127 | <<: *postgresql | ||
128 | combined: &combined | ||
129 | <<: *common | ||
130 | development: | ||
131 | <<: *combined | ||
132 | database: diaspora_development | ||
133 | production: | ||
134 | <<: *combined | ||
135 | database: diaspora | ||
136 | test: | ||
137 | <<: *combined | ||
138 | database: "diaspora_test" | ||
139 | integration1: | ||
140 | <<: *combined | ||
141 | database: diaspora_integration1 | ||
142 | integration2: | ||
143 | <<: *combined | ||
144 | database: diaspora_integration2 | ||
145 | ''; | ||
146 | |||
147 | railsRoot = stdenv.mkDerivation { | ||
148 | name = "diaspora_immae"; | ||
149 | inherit diaspora; | ||
150 | builder = writeText "build_diaspora_immae" '' | ||
151 | source $stdenv/setup | ||
152 | cp -a $diaspora $out | ||
153 | cd $out | ||
154 | chmod -R u+rwX . | ||
155 | tar -czf public/source.tar.gz ./{app,db,lib,script,Gemfile,Gemfile.lock,Rakefile,config.ru} | ||
156 | ln -s ${database_config} config/database.yml | ||
157 | ln -s ${config} config/diaspora.yml | ||
158 | ln -s ${secret_token} config/initializers/secret_token.rb | ||
159 | ln -sf ../../../../../../${varDir}/schedule.yml config/schedule.yml | ||
160 | ln -sf ../../../../../../${varDir}/oidc_key.pem config/oidc_key.pem | ||
161 | ln -sf ../../../../../../${varDir}/uploads public/uploads | ||
162 | RAILS_ENV=production ${gems}/bin/rake assets:precompile | ||
163 | rm -rf tmp log | ||
164 | ln -sf ../../../../../${varDir}/tmp tmp | ||
165 | ln -sf ../../../../../${varDir}/log log | ||
166 | ''; | ||
167 | propagatedBuildInputs = buildInputs; | ||
168 | }; | ||
169 | in | ||
170 | { | ||
171 | inherit railsRoot varDir socketsDir gems; | ||
172 | railsSocket = "${socketsDir}/diaspora.sock"; | ||
173 | } | ||
diff --git a/virtual/modules/websites/tools/diaspora/gemset.nix b/virtual/modules/websites/tools/diaspora/gemset.nix new file mode 100644 index 0000000..66482f0 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/gemset.nix | |||
@@ -0,0 +1,3045 @@ | |||
1 | { | ||
2 | actioncable = { | ||
3 | dependencies = ["actionpack" "nio4r" "websocket-driver"]; | ||
4 | platforms = []; | ||
5 | source = { | ||
6 | remotes = ["https://rubygems.org"]; | ||
7 | sha256 = "07r6hnh05db84yr9419mbhyzp20hr8yy9m50jxc2w91ghm2qnrrf"; | ||
8 | type = "gem"; | ||
9 | }; | ||
10 | version = "5.1.6"; | ||
11 | }; | ||
12 | actionmailer = { | ||
13 | dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"]; | ||
14 | platforms = []; | ||
15 | source = { | ||
16 | remotes = ["https://rubygems.org"]; | ||
17 | sha256 = "1s9xcqfx97q4yva2zc4qzb567mwzhry6v3x3zc318aqhcrz31g7c"; | ||
18 | type = "gem"; | ||
19 | }; | ||
20 | version = "5.1.6"; | ||
21 | }; | ||
22 | actionpack = { | ||
23 | dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; | ||
24 | platforms = []; | ||
25 | source = { | ||
26 | remotes = ["https://rubygems.org"]; | ||
27 | sha256 = "0vz2ms80nqw21c304g3w2vkbs80gadzhi3mcwwym7smxccr37kcd"; | ||
28 | type = "gem"; | ||
29 | }; | ||
30 | version = "5.1.6"; | ||
31 | }; | ||
32 | actionview = { | ||
33 | dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"]; | ||
34 | platforms = []; | ||
35 | source = { | ||
36 | remotes = ["https://rubygems.org"]; | ||
37 | sha256 = "1kfxlz9v7b47pdyy1whb4zzhvaj8h4sp1ajhbih2ax1hkldyg081"; | ||
38 | type = "gem"; | ||
39 | }; | ||
40 | version = "5.1.6"; | ||
41 | }; | ||
42 | active_model_serializers = { | ||
43 | dependencies = ["activemodel" "concurrent-ruby"]; | ||
44 | platforms = []; | ||
45 | source = { | ||
46 | remotes = ["https://rubygems.org"]; | ||
47 | sha256 = "19zr5pp84q4ya7mfrcanakjv86lv4wfmbcbbd2xnd4bkyprw5w7z"; | ||
48 | type = "gem"; | ||
49 | }; | ||
50 | version = "0.9.7"; | ||
51 | }; | ||
52 | activejob = { | ||
53 | dependencies = ["activesupport" "globalid"]; | ||
54 | platforms = []; | ||
55 | source = { | ||
56 | remotes = ["https://rubygems.org"]; | ||
57 | sha256 = "02lssq8ps98mfg20dyhcpd16f9c0v4zzy7gfbb6ksbs06wrrd4d2"; | ||
58 | type = "gem"; | ||
59 | }; | ||
60 | version = "5.1.6"; | ||
61 | }; | ||
62 | activemodel = { | ||
63 | dependencies = ["activesupport"]; | ||
64 | platforms = []; | ||
65 | source = { | ||
66 | remotes = ["https://rubygems.org"]; | ||
67 | sha256 = "10f8cpv4sl1w3m1qj8hl6sd2f1n7x91h45qaf57qr894ll22jgby"; | ||
68 | type = "gem"; | ||
69 | }; | ||
70 | version = "5.1.6"; | ||
71 | }; | ||
72 | activerecord = { | ||
73 | dependencies = ["activemodel" "activesupport" "arel"]; | ||
74 | platforms = []; | ||
75 | source = { | ||
76 | remotes = ["https://rubygems.org"]; | ||
77 | sha256 = "1iqkvxzx5bfp8rmlccww0cj1xr6iaxmn3hhbj1dv5j9c8mnm980x"; | ||
78 | type = "gem"; | ||
79 | }; | ||
80 | version = "5.1.6"; | ||
81 | }; | ||
82 | activerecord-import = { | ||
83 | dependencies = ["activerecord"]; | ||
84 | platforms = []; | ||
85 | source = { | ||
86 | remotes = ["https://rubygems.org"]; | ||
87 | sha256 = "1bxpbrcwc9k6khizwdikvfbhw9pcvs4sp3h4grpcww5k7bgpliz6"; | ||
88 | type = "gem"; | ||
89 | }; | ||
90 | version = "0.27.0"; | ||
91 | }; | ||
92 | activesupport = { | ||
93 | dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"]; | ||
94 | platforms = []; | ||
95 | source = { | ||
96 | remotes = ["https://rubygems.org"]; | ||
97 | sha256 = "08dm0mgmj31ggk7ib66wfagj4bgbr2jfl500bqb22x0szslz5lll"; | ||
98 | type = "gem"; | ||
99 | }; | ||
100 | version = "5.1.6"; | ||
101 | }; | ||
102 | acts-as-taggable-on = { | ||
103 | dependencies = ["activerecord"]; | ||
104 | platforms = []; | ||
105 | source = { | ||
106 | remotes = ["https://rubygems.org"]; | ||
107 | sha256 = "0hl52pjgfzy3acdwnbxfqy08m808vlv9dmsyp03d5x7x0y499kvl"; | ||
108 | type = "gem"; | ||
109 | }; | ||
110 | version = "6.0.0"; | ||
111 | }; | ||
112 | acts_as_api = { | ||
113 | dependencies = ["activemodel" "activesupport" "rack"]; | ||
114 | platforms = []; | ||
115 | source = { | ||
116 | remotes = ["https://rubygems.org"]; | ||
117 | sha256 = "06miad13nnfr2gslc203ahsbvj499s9lngxxvfizwp964vglygsc"; | ||
118 | type = "gem"; | ||
119 | }; | ||
120 | version = "1.0.1"; | ||
121 | }; | ||
122 | addressable = { | ||
123 | dependencies = ["public_suffix"]; | ||
124 | platforms = []; | ||
125 | source = { | ||
126 | remotes = ["https://rubygems.org"]; | ||
127 | sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk"; | ||
128 | type = "gem"; | ||
129 | }; | ||
130 | version = "2.5.2"; | ||
131 | }; | ||
132 | aes_key_wrap = { | ||
133 | platforms = []; | ||
134 | source = { | ||
135 | remotes = ["https://rubygems.org"]; | ||
136 | sha256 = "0li86k0g812jkzrppb2fvqngvzp09nygywjpn81nx90s01wxqw07"; | ||
137 | type = "gem"; | ||
138 | }; | ||
139 | version = "1.0.1"; | ||
140 | }; | ||
141 | arel = { | ||
142 | platforms = []; | ||
143 | source = { | ||
144 | remotes = ["https://rubygems.org"]; | ||
145 | sha256 = "0nw0qbc6ph625p6n3maqq9f527vz3nbl0hk72fbyka8jzsmplxzl"; | ||
146 | type = "gem"; | ||
147 | }; | ||
148 | version = "8.0.0"; | ||
149 | }; | ||
150 | asset_sync = { | ||
151 | dependencies = ["activemodel" "fog-core" "mime-types" "unf"]; | ||
152 | platforms = []; | ||
153 | source = { | ||
154 | remotes = ["https://rubygems.org"]; | ||
155 | sha256 = "0mfz51g8rzk5h5fpdhfkycnm7y4dpfhx46wm7fygna7nd4w9ixdx"; | ||
156 | type = "gem"; | ||
157 | }; | ||
158 | version = "2.5.0"; | ||
159 | }; | ||
160 | ast = { | ||
161 | platforms = []; | ||
162 | source = { | ||
163 | remotes = ["https://rubygems.org"]; | ||
164 | sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7"; | ||
165 | type = "gem"; | ||
166 | }; | ||
167 | version = "2.4.0"; | ||
168 | }; | ||
169 | attr_required = { | ||
170 | platforms = []; | ||
171 | source = { | ||
172 | remotes = ["https://rubygems.org"]; | ||
173 | sha256 = "1g22axmi2rhhy7w8c3x6gppsawxqavbrnxpnmphh22fk7cwi0kh2"; | ||
174 | type = "gem"; | ||
175 | }; | ||
176 | version = "1.0.1"; | ||
177 | }; | ||
178 | autoprefixer-rails = { | ||
179 | dependencies = ["execjs"]; | ||
180 | platforms = []; | ||
181 | source = { | ||
182 | remotes = ["https://rubygems.org"]; | ||
183 | sha256 = "08irrl1mz6skagr1lygq79l34lc0dghgva0v9q7nng76dpiglgj3"; | ||
184 | type = "gem"; | ||
185 | }; | ||
186 | version = "8.6.5"; | ||
187 | }; | ||
188 | backports = { | ||
189 | platforms = []; | ||
190 | source = { | ||
191 | remotes = ["https://rubygems.org"]; | ||
192 | sha256 = "1hshjxww2h7s0dk57njrygq4zpp0nlqrjfya7zwm27iq3rhc3y8g"; | ||
193 | type = "gem"; | ||
194 | }; | ||
195 | version = "3.11.4"; | ||
196 | }; | ||
197 | bcrypt = { | ||
198 | platforms = []; | ||
199 | source = { | ||
200 | remotes = ["https://rubygems.org"]; | ||
201 | sha256 = "0ysblqxkclmnhrd0kmb5mr8p38mbar633gdsb14b7dhkhgawgzfy"; | ||
202 | type = "gem"; | ||
203 | }; | ||
204 | version = "3.1.12"; | ||
205 | }; | ||
206 | bindata = { | ||
207 | platforms = []; | ||
208 | source = { | ||
209 | remotes = ["https://rubygems.org"]; | ||
210 | sha256 = "0kz42nvxnk1j9cj0i8lcnhprcgdqsqska92g6l19ziadydfk2gqy"; | ||
211 | type = "gem"; | ||
212 | }; | ||
213 | version = "2.4.4"; | ||
214 | }; | ||
215 | bootstrap-sass = { | ||
216 | dependencies = ["autoprefixer-rails" "sass"]; | ||
217 | platforms = []; | ||
218 | source = { | ||
219 | remotes = ["https://rubygems.org"]; | ||
220 | sha256 = "1bc9bf6caddqn1rv15b5x56yczmbjzaxzl9lk5zbwrg1bfph4bx9"; | ||
221 | type = "gem"; | ||
222 | }; | ||
223 | version = "3.3.7"; | ||
224 | }; | ||
225 | bootstrap-switch-rails = { | ||
226 | platforms = []; | ||
227 | source = { | ||
228 | remotes = ["https://rubygems.org"]; | ||
229 | sha256 = "0qdk7xx0zlv4l49s2mwg4jd8a5ms3cy43n9l3217bknagcjyjfjx"; | ||
230 | type = "gem"; | ||
231 | }; | ||
232 | version = "3.3.4"; | ||
233 | }; | ||
234 | buftok = { | ||
235 | platforms = []; | ||
236 | source = { | ||
237 | remotes = ["https://rubygems.org"]; | ||
238 | sha256 = "1rzsy1vy50v55x9z0nivf23y0r9jkmq6i130xa75pq9i8qrn1mxs"; | ||
239 | type = "gem"; | ||
240 | }; | ||
241 | version = "0.2.0"; | ||
242 | }; | ||
243 | builder = { | ||
244 | platforms = []; | ||
245 | source = { | ||
246 | remotes = ["https://rubygems.org"]; | ||
247 | sha256 = "0qibi5s67lpdv1wgcj66wcymcr04q6j4mzws6a479n0mlrmh5wr1"; | ||
248 | type = "gem"; | ||
249 | }; | ||
250 | version = "3.2.3"; | ||
251 | }; | ||
252 | byebug = { | ||
253 | platforms = []; | ||
254 | source = { | ||
255 | remotes = ["https://rubygems.org"]; | ||
256 | sha256 = "10znc1hjv8n686hhpl08f3m2g6h08a4b83nxblqwy2kqamkxcqf8"; | ||
257 | type = "gem"; | ||
258 | }; | ||
259 | version = "10.0.2"; | ||
260 | }; | ||
261 | capybara = { | ||
262 | dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"]; | ||
263 | platforms = []; | ||
264 | source = { | ||
265 | remotes = ["https://rubygems.org"]; | ||
266 | sha256 = "10zj8syak12xd1kqywr35bkr2hkdjq18kij54x1ys8c26h6j4d0m"; | ||
267 | type = "gem"; | ||
268 | }; | ||
269 | version = "3.11.1"; | ||
270 | }; | ||
271 | carrierwave = { | ||
272 | dependencies = ["activemodel" "activesupport" "mime-types"]; | ||
273 | platforms = []; | ||
274 | source = { | ||
275 | remotes = ["https://rubygems.org"]; | ||
276 | sha256 = "1k9kla5ncygm97vn33lsrs7ch5zy4qqhhvc8m3khm986yaqh75qs"; | ||
277 | type = "gem"; | ||
278 | }; | ||
279 | version = "1.2.3"; | ||
280 | }; | ||
281 | celluloid = { | ||
282 | dependencies = ["celluloid-essentials" "celluloid-extras" "celluloid-fsm" "celluloid-pool" "celluloid-supervision" "timers"]; | ||
283 | platforms = []; | ||
284 | source = { | ||
285 | remotes = ["https://rubygems.org"]; | ||
286 | sha256 = "10i29q7kkdlrhf5rg43xygdfm795a02vp28k2ca3nklmqna57qmg"; | ||
287 | type = "gem"; | ||
288 | }; | ||
289 | version = "0.17.3"; | ||
290 | }; | ||
291 | celluloid-essentials = { | ||
292 | dependencies = ["timers"]; | ||
293 | platforms = []; | ||
294 | source = { | ||
295 | remotes = ["https://rubygems.org"]; | ||
296 | sha256 = "1l4p3p73wjdj07ww124q0db5k1cyzggbndzmcb12xbsf2dnj121k"; | ||
297 | type = "gem"; | ||
298 | }; | ||
299 | version = "0.20.5"; | ||
300 | }; | ||
301 | celluloid-extras = { | ||
302 | dependencies = ["timers"]; | ||
303 | platforms = []; | ||
304 | source = { | ||
305 | remotes = ["https://rubygems.org"]; | ||
306 | sha256 = "078agvnsfp78jv343kn5g1cz50147dk0q46blwh5r8lk6whag7ng"; | ||
307 | type = "gem"; | ||
308 | }; | ||
309 | version = "0.20.5"; | ||
310 | }; | ||
311 | celluloid-fsm = { | ||
312 | dependencies = ["timers"]; | ||
313 | platforms = []; | ||
314 | source = { | ||
315 | remotes = ["https://rubygems.org"]; | ||
316 | sha256 = "1pmpi6h4abpkczp46rd6llk1mldpx19i9hll8mkxp3kxin9slivc"; | ||
317 | type = "gem"; | ||
318 | }; | ||
319 | version = "0.20.5"; | ||
320 | }; | ||
321 | celluloid-io = { | ||
322 | dependencies = ["celluloid" "nio4r" "timers"]; | ||
323 | platforms = []; | ||
324 | source = { | ||
325 | remotes = ["https://rubygems.org"]; | ||
326 | sha256 = "1frcpja7h9vcxsw7w7ff550x54rfx514fpv2n6kawbk1j4zrm314"; | ||
327 | type = "gem"; | ||
328 | }; | ||
329 | version = "0.17.3"; | ||
330 | }; | ||
331 | celluloid-pool = { | ||
332 | dependencies = ["timers"]; | ||
333 | platforms = []; | ||
334 | source = { | ||
335 | remotes = ["https://rubygems.org"]; | ||
336 | sha256 = "1bfr54ijl95bnhqlabhf5p4ff9n0y2sslc91f49jjn33n2zm755c"; | ||
337 | type = "gem"; | ||
338 | }; | ||
339 | version = "0.20.5"; | ||
340 | }; | ||
341 | celluloid-supervision = { | ||
342 | dependencies = ["timers"]; | ||
343 | platforms = []; | ||
344 | source = { | ||
345 | remotes = ["https://rubygems.org"]; | ||
346 | sha256 = "1b41gg1rsmms0m5mshy6h66y5rydl3nv6x9wf050ixfa1s2c8vzw"; | ||
347 | type = "gem"; | ||
348 | }; | ||
349 | version = "0.20.6"; | ||
350 | }; | ||
351 | chunky_png = { | ||
352 | platforms = []; | ||
353 | source = { | ||
354 | remotes = ["https://rubygems.org"]; | ||
355 | sha256 = "05g2xli9wbjylkmblln3bhvjalziwb92q452q8ibjagmb853424w"; | ||
356 | type = "gem"; | ||
357 | }; | ||
358 | version = "1.3.10"; | ||
359 | }; | ||
360 | cliver = { | ||
361 | platforms = []; | ||
362 | source = { | ||
363 | remotes = ["https://rubygems.org"]; | ||
364 | sha256 = "096f4rj7virwvqxhkavy0v55rax10r4jqf8cymbvn4n631948xc7"; | ||
365 | type = "gem"; | ||
366 | }; | ||
367 | version = "0.3.2"; | ||
368 | }; | ||
369 | coderay = { | ||
370 | platforms = []; | ||
371 | source = { | ||
372 | remotes = ["https://rubygems.org"]; | ||
373 | sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y"; | ||
374 | type = "gem"; | ||
375 | }; | ||
376 | version = "1.1.2"; | ||
377 | }; | ||
378 | compass = { | ||
379 | dependencies = ["chunky_png" "compass-core" "compass-import-once" "rb-fsevent" "rb-inotify" "sass"]; | ||
380 | platforms = []; | ||
381 | source = { | ||
382 | remotes = ["https://rubygems.org"]; | ||
383 | sha256 = "0lfi83w8z75czr0pf0rmj9hda22082h3cmvczl8r1ma9agf88y2c"; | ||
384 | type = "gem"; | ||
385 | }; | ||
386 | version = "1.0.3"; | ||
387 | }; | ||
388 | compass-core = { | ||
389 | dependencies = ["multi_json" "sass"]; | ||
390 | platforms = []; | ||
391 | source = { | ||
392 | remotes = ["https://rubygems.org"]; | ||
393 | sha256 = "0yaspqwdmzwdcqviclbs3blq7an16pysrfzylz8q1gxmmd6bpj3a"; | ||
394 | type = "gem"; | ||
395 | }; | ||
396 | version = "1.0.3"; | ||
397 | }; | ||
398 | compass-import-once = { | ||
399 | dependencies = ["sass"]; | ||
400 | platforms = []; | ||
401 | source = { | ||
402 | remotes = ["https://rubygems.org"]; | ||
403 | sha256 = "0bn7gwbfz7jvvdd0qdfqlx67fcb83gyvxqc7dr9fhcnks3z8z5rq"; | ||
404 | type = "gem"; | ||
405 | }; | ||
406 | version = "1.0.5"; | ||
407 | }; | ||
408 | compass-rails = { | ||
409 | dependencies = ["compass" "sass-rails" "sprockets"]; | ||
410 | platforms = []; | ||
411 | source = { | ||
412 | remotes = ["https://rubygems.org"]; | ||
413 | sha256 = "02ydlbl1qb80myjv5xrpwzhmmj6qd80jf5izvpqhq2bikv84j9wr"; | ||
414 | type = "gem"; | ||
415 | }; | ||
416 | version = "3.1.0"; | ||
417 | }; | ||
418 | concurrent-ruby = { | ||
419 | platforms = []; | ||
420 | source = { | ||
421 | remotes = ["https://rubygems.org"]; | ||
422 | sha256 = "18q9skp5pfq4jwbxzmw8q2rn4cpw6mf4561i2hsjcl1nxdag2jvb"; | ||
423 | type = "gem"; | ||
424 | }; | ||
425 | version = "1.1.3"; | ||
426 | }; | ||
427 | configurate = { | ||
428 | platforms = []; | ||
429 | source = { | ||
430 | remotes = ["https://rubygems.org"]; | ||
431 | sha256 = "1m6cppb4jf7liwc3f5dvgn2v2nhp2jq8ixb9papaqz24f4s8dnd1"; | ||
432 | type = "gem"; | ||
433 | }; | ||
434 | version = "0.3.1"; | ||
435 | }; | ||
436 | connection_pool = { | ||
437 | platforms = []; | ||
438 | source = { | ||
439 | remotes = ["https://rubygems.org"]; | ||
440 | sha256 = "0lflx29mlznf1hn0nihkgllzbj8xp5qasn8j7h838465pi399k68"; | ||
441 | type = "gem"; | ||
442 | }; | ||
443 | version = "2.2.2"; | ||
444 | }; | ||
445 | coveralls = { | ||
446 | dependencies = ["json" "simplecov" "term-ansicolor" "thor" "tins"]; | ||
447 | platforms = []; | ||
448 | source = { | ||
449 | remotes = ["https://rubygems.org"]; | ||
450 | sha256 = "022kc16np6w4mv17hq3m9hhw9l8hjl78ld3fzqqx6337vwvwvwcg"; | ||
451 | type = "gem"; | ||
452 | }; | ||
453 | version = "0.8.22"; | ||
454 | }; | ||
455 | crack = { | ||
456 | dependencies = ["safe_yaml"]; | ||
457 | platforms = []; | ||
458 | source = { | ||
459 | remotes = ["https://rubygems.org"]; | ||
460 | sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k"; | ||
461 | type = "gem"; | ||
462 | }; | ||
463 | version = "0.4.3"; | ||
464 | }; | ||
465 | crass = { | ||
466 | platforms = []; | ||
467 | source = { | ||
468 | remotes = ["https://rubygems.org"]; | ||
469 | sha256 = "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi"; | ||
470 | type = "gem"; | ||
471 | }; | ||
472 | version = "1.0.4"; | ||
473 | }; | ||
474 | cucumber = { | ||
475 | dependencies = ["builder" "cucumber-core" "cucumber-expressions" "cucumber-wire" "diff-lcs" "gherkin" "multi_json" "multi_test"]; | ||
476 | platforms = []; | ||
477 | source = { | ||
478 | remotes = ["https://rubygems.org"]; | ||
479 | sha256 = "1s2brssrpal8hyhcgg974x3xyhpmvpwps5ypd9p8w2lg01l1pp3j"; | ||
480 | type = "gem"; | ||
481 | }; | ||
482 | version = "3.1.2"; | ||
483 | }; | ||
484 | cucumber-api-steps = { | ||
485 | dependencies = ["cucumber" "jsonpath"]; | ||
486 | platforms = []; | ||
487 | source = { | ||
488 | remotes = ["https://rubygems.org"]; | ||
489 | sha256 = "0fij6bgzshda68jp7kac0hs5n6xsmv49g8ynqhy6s3znc9d4qjbw"; | ||
490 | type = "gem"; | ||
491 | }; | ||
492 | version = "0.14.0"; | ||
493 | }; | ||
494 | cucumber-core = { | ||
495 | dependencies = ["backports" "cucumber-tag_expressions" "gherkin"]; | ||
496 | platforms = []; | ||
497 | source = { | ||
498 | remotes = ["https://rubygems.org"]; | ||
499 | sha256 = "1iavlh8hqj9lwljbpkw06259gdicbr1bdb6pbj5yy3n8szgr8k3c"; | ||
500 | type = "gem"; | ||
501 | }; | ||
502 | version = "3.2.1"; | ||
503 | }; | ||
504 | cucumber-expressions = { | ||
505 | platforms = []; | ||
506 | source = { | ||
507 | remotes = ["https://rubygems.org"]; | ||
508 | sha256 = "0zwmv6hznyz9vk81f5dhwcr9jhxx2vmbk8yyazayvllvhy0fkpdw"; | ||
509 | type = "gem"; | ||
510 | }; | ||
511 | version = "6.0.1"; | ||
512 | }; | ||
513 | cucumber-rails = { | ||
514 | dependencies = ["capybara" "cucumber" "mime-types" "nokogiri" "railties"]; | ||
515 | platforms = []; | ||
516 | source = { | ||
517 | remotes = ["https://rubygems.org"]; | ||
518 | sha256 = "0pmlza6r2601k1i7v3z8gj4apdcq6qa830bzwkj1pnfjzn4z12n7"; | ||
519 | type = "gem"; | ||
520 | }; | ||
521 | version = "1.6.0"; | ||
522 | }; | ||
523 | cucumber-tag_expressions = { | ||
524 | platforms = []; | ||
525 | source = { | ||
526 | remotes = ["https://rubygems.org"]; | ||
527 | sha256 = "0cvmbljybws0qzjs1l67fvr9gqr005l8jk1ni5gcsis9pfmqh3vc"; | ||
528 | type = "gem"; | ||
529 | }; | ||
530 | version = "1.1.1"; | ||
531 | }; | ||
532 | cucumber-wire = { | ||
533 | platforms = []; | ||
534 | source = { | ||
535 | remotes = ["https://rubygems.org"]; | ||
536 | sha256 = "09ymvqb0sbw2if1nxg8rcj33sf0va88ancq5nmp8g01dfwzwma2f"; | ||
537 | type = "gem"; | ||
538 | }; | ||
539 | version = "0.0.1"; | ||
540 | }; | ||
541 | database_cleaner = { | ||
542 | platforms = []; | ||
543 | source = { | ||
544 | remotes = ["https://rubygems.org"]; | ||
545 | sha256 = "05i0nf2aj70m61y3fspypdkc6d1qgibf5kav05a71b5gjz0k7y5x"; | ||
546 | type = "gem"; | ||
547 | }; | ||
548 | version = "1.7.0"; | ||
549 | }; | ||
550 | devise = { | ||
551 | dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "warden"]; | ||
552 | platforms = []; | ||
553 | source = { | ||
554 | remotes = ["https://rubygems.org"]; | ||
555 | sha256 = "1vs8nibl568ghm6a7hbw6xgcv8zbm4gykprcxpnzi7bz5d4gvcjx"; | ||
556 | type = "gem"; | ||
557 | }; | ||
558 | version = "4.5.0"; | ||
559 | }; | ||
560 | devise_lastseenable = { | ||
561 | dependencies = ["devise" "rails"]; | ||
562 | platforms = []; | ||
563 | source = { | ||
564 | remotes = ["https://rubygems.org"]; | ||
565 | sha256 = "1h83h73qjh8fc7lmr089shky8lc3wm4xn653rjdbb0cddflvrx8y"; | ||
566 | type = "gem"; | ||
567 | }; | ||
568 | version = "0.0.6"; | ||
569 | }; | ||
570 | diaspora-prosody-config = { | ||
571 | platforms = []; | ||
572 | source = { | ||
573 | remotes = ["https://rubygems.org"]; | ||
574 | sha256 = "1976ijqjf5jcq1jwr6vi0srjadhbqfa9y3nxyipzcv91pzskl2lp"; | ||
575 | type = "gem"; | ||
576 | }; | ||
577 | version = "0.0.7"; | ||
578 | }; | ||
579 | diaspora_federation = { | ||
580 | dependencies = ["faraday" "faraday_middleware" "nokogiri" "typhoeus" "valid"]; | ||
581 | platforms = []; | ||
582 | source = { | ||
583 | remotes = ["https://rubygems.org"]; | ||
584 | sha256 = "1xxy6ahlhgyr00qkfmmq0h3nqm6gjkr9i6hsqr0nkb3l6qg0m0yc"; | ||
585 | type = "gem"; | ||
586 | }; | ||
587 | version = "0.2.5"; | ||
588 | }; | ||
589 | diaspora_federation-json_schema = { | ||
590 | platforms = []; | ||
591 | source = { | ||
592 | remotes = ["https://rubygems.org"]; | ||
593 | sha256 = "0hfv4cq5wfdg86xmbp5y0h50b11326ymzks1yr9dvr4wa7di00hr"; | ||
594 | type = "gem"; | ||
595 | }; | ||
596 | version = "0.2.5"; | ||
597 | }; | ||
598 | diaspora_federation-rails = { | ||
599 | dependencies = ["actionpack" "diaspora_federation"]; | ||
600 | platforms = []; | ||
601 | source = { | ||
602 | remotes = ["https://rubygems.org"]; | ||
603 | sha256 = "1wrni7d9084v3pqd3sq8j532wx5ym6kmd959bw29bzwxc3zidd9h"; | ||
604 | type = "gem"; | ||
605 | }; | ||
606 | version = "0.2.5"; | ||
607 | }; | ||
608 | diaspora_federation-test = { | ||
609 | dependencies = ["diaspora_federation" "fabrication" "uuid"]; | ||
610 | platforms = []; | ||
611 | source = { | ||
612 | remotes = ["https://rubygems.org"]; | ||
613 | sha256 = "1b09y78pyl9kix8slbybnks2cbq0ac9wml31j2s6qwjixranjsm4"; | ||
614 | type = "gem"; | ||
615 | }; | ||
616 | version = "0.2.5"; | ||
617 | }; | ||
618 | diff-lcs = { | ||
619 | platforms = []; | ||
620 | source = { | ||
621 | remotes = ["https://rubygems.org"]; | ||
622 | sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza"; | ||
623 | type = "gem"; | ||
624 | }; | ||
625 | version = "1.3"; | ||
626 | }; | ||
627 | docile = { | ||
628 | platforms = []; | ||
629 | source = { | ||
630 | remotes = ["https://rubygems.org"]; | ||
631 | sha256 = "04d2izkna3ahfn6fwq4xrcafa715d3bbqczxm16fq40fqy87xn17"; | ||
632 | type = "gem"; | ||
633 | }; | ||
634 | version = "1.3.1"; | ||
635 | }; | ||
636 | domain_name = { | ||
637 | dependencies = ["unf"]; | ||
638 | platforms = []; | ||
639 | source = { | ||
640 | remotes = ["https://rubygems.org"]; | ||
641 | sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v"; | ||
642 | type = "gem"; | ||
643 | }; | ||
644 | version = "0.5.20180417"; | ||
645 | }; | ||
646 | entypo-rails = { | ||
647 | dependencies = ["railties"]; | ||
648 | platforms = []; | ||
649 | source = { | ||
650 | remotes = ["https://rubygems.org"]; | ||
651 | sha256 = "124x0jszg6n0k2lcacd627ndlp1fv7cbgnv4scwy5s3czp0qwip6"; | ||
652 | type = "gem"; | ||
653 | }; | ||
654 | version = "3.0.0"; | ||
655 | }; | ||
656 | equalizer = { | ||
657 | platforms = []; | ||
658 | source = { | ||
659 | remotes = ["https://rubygems.org"]; | ||
660 | sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4"; | ||
661 | type = "gem"; | ||
662 | }; | ||
663 | version = "0.0.11"; | ||
664 | }; | ||
665 | erubi = { | ||
666 | platforms = []; | ||
667 | source = { | ||
668 | remotes = ["https://rubygems.org"]; | ||
669 | sha256 = "0bws86na9k565raiz0kk61yy5pxxp0fmwyzpibdwjkq0xzx8q6q1"; | ||
670 | type = "gem"; | ||
671 | }; | ||
672 | version = "1.7.1"; | ||
673 | }; | ||
674 | eslintrb = { | ||
675 | dependencies = ["execjs" "multi_json" "rake"]; | ||
676 | platforms = []; | ||
677 | source = { | ||
678 | remotes = ["https://rubygems.org"]; | ||
679 | sha256 = "0kx9sbs7pnl436zyczylnqqb1858hffy66fwdqfmcn18q8xdqwkx"; | ||
680 | type = "gem"; | ||
681 | }; | ||
682 | version = "2.1.0"; | ||
683 | }; | ||
684 | et-orbi = { | ||
685 | dependencies = ["tzinfo"]; | ||
686 | platforms = []; | ||
687 | source = { | ||
688 | remotes = ["https://rubygems.org"]; | ||
689 | sha256 = "0wk7i0bmsy46la8gcvbmdns0ni8lmdqas838phj97bdwykxw8m4b"; | ||
690 | type = "gem"; | ||
691 | }; | ||
692 | version = "1.1.6"; | ||
693 | }; | ||
694 | ethon = { | ||
695 | dependencies = ["ffi"]; | ||
696 | platforms = []; | ||
697 | source = { | ||
698 | remotes = ["https://rubygems.org"]; | ||
699 | sha256 = "0y70szwm2p0b9qfvpqrzjrgm3jz0ig65vlbfr6ppc3z0m1h7kv48"; | ||
700 | type = "gem"; | ||
701 | }; | ||
702 | version = "0.11.0"; | ||
703 | }; | ||
704 | excon = { | ||
705 | platforms = []; | ||
706 | source = { | ||
707 | remotes = ["https://rubygems.org"]; | ||
708 | sha256 = "15l9w0938c19nxmrp09n75qpmm64k12xj69h47yvxzcxcpbgnkb2"; | ||
709 | type = "gem"; | ||
710 | }; | ||
711 | version = "0.62.0"; | ||
712 | }; | ||
713 | execjs = { | ||
714 | platforms = []; | ||
715 | source = { | ||
716 | remotes = ["https://rubygems.org"]; | ||
717 | sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1"; | ||
718 | type = "gem"; | ||
719 | }; | ||
720 | version = "2.7.0"; | ||
721 | }; | ||
722 | eye = { | ||
723 | dependencies = ["celluloid" "celluloid-io" "kostya-sigar" "state_machines" "thor"]; | ||
724 | platforms = []; | ||
725 | source = { | ||
726 | remotes = ["https://rubygems.org"]; | ||
727 | sha256 = "0gqrrrisy492m6sczq775dyg9sxkl926r8lkr6z33kfb4cnimfzk"; | ||
728 | type = "gem"; | ||
729 | }; | ||
730 | version = "0.10.0"; | ||
731 | }; | ||
732 | fabrication = { | ||
733 | platforms = []; | ||
734 | source = { | ||
735 | remotes = ["https://rubygems.org"]; | ||
736 | sha256 = "0an28kjand4mjbkmnwd9fmgq3y5vf717zpmiijavar3sxqj52zri"; | ||
737 | type = "gem"; | ||
738 | }; | ||
739 | version = "2.20.1"; | ||
740 | }; | ||
741 | factory_girl = { | ||
742 | dependencies = ["activesupport"]; | ||
743 | platforms = []; | ||
744 | source = { | ||
745 | remotes = ["https://rubygems.org"]; | ||
746 | sha256 = "0cc60v28r7w1gp34p4amzdnq7cyip6qhffvxywsj3ypilyf8jqla"; | ||
747 | type = "gem"; | ||
748 | }; | ||
749 | version = "4.8.0"; | ||
750 | }; | ||
751 | factory_girl_rails = { | ||
752 | dependencies = ["factory_girl" "railties"]; | ||
753 | platforms = []; | ||
754 | source = { | ||
755 | remotes = ["https://rubygems.org"]; | ||
756 | sha256 = "0hw8qqp30vm4yf4a36r1r65wk78ihxmas7jg5fyl6fcf705z9fvv"; | ||
757 | type = "gem"; | ||
758 | }; | ||
759 | version = "4.8.0"; | ||
760 | }; | ||
761 | faraday = { | ||
762 | dependencies = ["multipart-post"]; | ||
763 | platforms = []; | ||
764 | source = { | ||
765 | remotes = ["https://rubygems.org"]; | ||
766 | sha256 = "16hwxc8v0z6gkanckjhx0ffgqmzpc4ywz4dfhxpjlz2mbz8d5m52"; | ||
767 | type = "gem"; | ||
768 | }; | ||
769 | version = "0.15.3"; | ||
770 | }; | ||
771 | faraday-cookie_jar = { | ||
772 | dependencies = ["faraday" "http-cookie"]; | ||
773 | platforms = []; | ||
774 | source = { | ||
775 | remotes = ["https://rubygems.org"]; | ||
776 | sha256 = "1di4gx6446a6zdkrpj679m5k515i53wvb4yxcsqvy8d8zacxiiv6"; | ||
777 | type = "gem"; | ||
778 | }; | ||
779 | version = "0.0.6"; | ||
780 | }; | ||
781 | faraday_middleware = { | ||
782 | dependencies = ["faraday"]; | ||
783 | platforms = []; | ||
784 | source = { | ||
785 | remotes = ["https://rubygems.org"]; | ||
786 | sha256 = "1p7icfl28nvl8qqdsngryz1snqic9l8x6bk0dxd7ygn230y0k41d"; | ||
787 | type = "gem"; | ||
788 | }; | ||
789 | version = "0.12.2"; | ||
790 | }; | ||
791 | ffi = { | ||
792 | platforms = []; | ||
793 | source = { | ||
794 | remotes = ["https://rubygems.org"]; | ||
795 | sha256 = "0jpm2dis1j7zvvy3lg7axz9jml316zrn7s0j59vyq3qr127z0m7q"; | ||
796 | type = "gem"; | ||
797 | }; | ||
798 | version = "1.9.25"; | ||
799 | }; | ||
800 | fixture_builder = { | ||
801 | dependencies = ["activerecord" "activesupport" "hashdiff"]; | ||
802 | platforms = []; | ||
803 | source = { | ||
804 | remotes = ["https://rubygems.org"]; | ||
805 | sha256 = "1qlq0nyfhjvz09hm0jankl9bgs9672k31b3lmsfq8p135x3xs627"; | ||
806 | type = "gem"; | ||
807 | }; | ||
808 | version = "0.5.2.rc3"; | ||
809 | }; | ||
810 | fog-aws = { | ||
811 | dependencies = ["fog-core" "fog-json" "fog-xml" "ipaddress"]; | ||
812 | platforms = []; | ||
813 | source = { | ||
814 | remotes = ["https://rubygems.org"]; | ||
815 | sha256 = "1zprxg0spvkkri1jf40zg3rfr5h2gq6009d7l36lifpvhjn658cs"; | ||
816 | type = "gem"; | ||
817 | }; | ||
818 | version = "3.3.0"; | ||
819 | }; | ||
820 | fog-core = { | ||
821 | dependencies = ["builder" "excon" "formatador" "mime-types"]; | ||
822 | platforms = []; | ||
823 | source = { | ||
824 | remotes = ["https://rubygems.org"]; | ||
825 | sha256 = "1fsama04wlxhv537bm4b7rr4zzn0mvisy87m3qzv6f0mhlrq3zp8"; | ||
826 | type = "gem"; | ||
827 | }; | ||
828 | version = "2.1.2"; | ||
829 | }; | ||
830 | fog-json = { | ||
831 | dependencies = ["fog-core" "multi_json"]; | ||
832 | platforms = []; | ||
833 | source = { | ||
834 | remotes = ["https://rubygems.org"]; | ||
835 | sha256 = "1zj8llzc119zafbmfa4ai3z5s7c4vp9akfs0f9l2piyvcarmlkyx"; | ||
836 | type = "gem"; | ||
837 | }; | ||
838 | version = "1.2.0"; | ||
839 | }; | ||
840 | fog-xml = { | ||
841 | dependencies = ["fog-core" "nokogiri"]; | ||
842 | platforms = []; | ||
843 | source = { | ||
844 | remotes = ["https://rubygems.org"]; | ||
845 | sha256 = "043lwdw2wsi6d55ifk0w3izi5l1d1h0alwyr3fixic7b94kc812n"; | ||
846 | type = "gem"; | ||
847 | }; | ||
848 | version = "0.1.3"; | ||
849 | }; | ||
850 | formatador = { | ||
851 | platforms = []; | ||
852 | source = { | ||
853 | remotes = ["https://rubygems.org"]; | ||
854 | sha256 = "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"; | ||
855 | type = "gem"; | ||
856 | }; | ||
857 | version = "0.2.5"; | ||
858 | }; | ||
859 | fugit = { | ||
860 | dependencies = ["et-orbi" "raabro"]; | ||
861 | platforms = []; | ||
862 | source = { | ||
863 | remotes = ["https://rubygems.org"]; | ||
864 | sha256 = "1szijawzdii668z5is9xi849399gy786951dx0l5r2z5mbfqvl9i"; | ||
865 | type = "gem"; | ||
866 | }; | ||
867 | version = "1.1.6"; | ||
868 | }; | ||
869 | fuubar = { | ||
870 | dependencies = ["rspec-core" "ruby-progressbar"]; | ||
871 | platforms = []; | ||
872 | source = { | ||
873 | remotes = ["https://rubygems.org"]; | ||
874 | sha256 = "1sqkr1nh49rlm86l3qyrgsdqavgqii4pnrjn7855z6dfavh3spxr"; | ||
875 | type = "gem"; | ||
876 | }; | ||
877 | version = "2.3.2"; | ||
878 | }; | ||
879 | get_process_mem = { | ||
880 | platforms = []; | ||
881 | source = { | ||
882 | remotes = ["https://rubygems.org"]; | ||
883 | sha256 = "1bvfjdign16r0zwm2rlfrq0sk1licvmlgbnlpnyckniv5r7i080g"; | ||
884 | type = "gem"; | ||
885 | }; | ||
886 | version = "0.2.3"; | ||
887 | }; | ||
888 | gherkin = { | ||
889 | platforms = []; | ||
890 | source = { | ||
891 | remotes = ["https://rubygems.org"]; | ||
892 | sha256 = "1cgcdchwwdm10rsk44frjwqd4ihprhxjbm799nscqy2q1raqfj5s"; | ||
893 | type = "gem"; | ||
894 | }; | ||
895 | version = "5.1.0"; | ||
896 | }; | ||
897 | gitlab = { | ||
898 | dependencies = ["httparty" "terminal-table"]; | ||
899 | platforms = []; | ||
900 | source = { | ||
901 | remotes = ["https://rubygems.org"]; | ||
902 | sha256 = "1nncjmk71ivjxmgkpv100yybry5c7ld6xjgi1b5zsfv4g3mz0v34"; | ||
903 | type = "gem"; | ||
904 | }; | ||
905 | version = "4.7.0"; | ||
906 | }; | ||
907 | globalid = { | ||
908 | dependencies = ["activesupport"]; | ||
909 | platforms = []; | ||
910 | source = { | ||
911 | remotes = ["https://rubygems.org"]; | ||
912 | sha256 = "02smrgdi11kziqi9zhnsy9i6yr2fnxrqlv3lllsvdjki3cd4is38"; | ||
913 | type = "gem"; | ||
914 | }; | ||
915 | version = "0.4.1"; | ||
916 | }; | ||
917 | gon = { | ||
918 | dependencies = ["actionpack" "multi_json" "request_store"]; | ||
919 | platforms = []; | ||
920 | source = { | ||
921 | remotes = ["https://rubygems.org"]; | ||
922 | sha256 = "07sm7fd94pfscrbs4lyprs0das8s1yn32cw521ch738jaqb388xl"; | ||
923 | type = "gem"; | ||
924 | }; | ||
925 | version = "6.2.1"; | ||
926 | }; | ||
927 | guard = { | ||
928 | dependencies = ["formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor"]; | ||
929 | platforms = []; | ||
930 | source = { | ||
931 | remotes = ["https://rubygems.org"]; | ||
932 | sha256 = "0h84ja6qvii3hx86w9l4vjpbgl4m8ma8fbawwp7s8l791cgkdcmk"; | ||
933 | type = "gem"; | ||
934 | }; | ||
935 | version = "2.15.0"; | ||
936 | }; | ||
937 | guard-compat = { | ||
938 | platforms = []; | ||
939 | source = { | ||
940 | remotes = ["https://rubygems.org"]; | ||
941 | sha256 = "1zj6sr1k8w59mmi27rsii0v8xyy2rnsi09nqvwpgj1q10yq1mlis"; | ||
942 | type = "gem"; | ||
943 | }; | ||
944 | version = "1.2.1"; | ||
945 | }; | ||
946 | guard-rspec = { | ||
947 | dependencies = ["guard" "guard-compat" "rspec"]; | ||
948 | platforms = []; | ||
949 | source = { | ||
950 | remotes = ["https://rubygems.org"]; | ||
951 | sha256 = "1jkm5xp90gm4c5s51pmf92i9hc10gslwwic6mvk72g0yplya0yx4"; | ||
952 | type = "gem"; | ||
953 | }; | ||
954 | version = "4.7.3"; | ||
955 | }; | ||
956 | guard-rubocop = { | ||
957 | dependencies = ["guard" "rubocop"]; | ||
958 | platforms = []; | ||
959 | source = { | ||
960 | remotes = ["https://rubygems.org"]; | ||
961 | sha256 = "1p97zkzasghl1md13rh57n3s2rr2kqly8w4vfn6vaj89igjpagdp"; | ||
962 | type = "gem"; | ||
963 | }; | ||
964 | version = "1.3.0"; | ||
965 | }; | ||
966 | haml = { | ||
967 | dependencies = ["temple" "tilt"]; | ||
968 | platforms = []; | ||
969 | source = { | ||
970 | remotes = ["https://rubygems.org"]; | ||
971 | sha256 = "1q0a9fvqh8kn6wm97fcks6qzbjd400bv8bx748w8v87m7p4klhac"; | ||
972 | type = "gem"; | ||
973 | }; | ||
974 | version = "5.0.4"; | ||
975 | }; | ||
976 | haml_lint = { | ||
977 | dependencies = ["haml" "rainbow" "rake" "rubocop" "sysexits"]; | ||
978 | platforms = []; | ||
979 | source = { | ||
980 | remotes = ["https://rubygems.org"]; | ||
981 | sha256 = "125aj0j84nx5gqm42hfx5d8486higlra423ahgfpsdjwbp399rwv"; | ||
982 | type = "gem"; | ||
983 | }; | ||
984 | version = "0.28.0"; | ||
985 | }; | ||
986 | hamlit = { | ||
987 | dependencies = ["temple" "thor" "tilt"]; | ||
988 | platforms = []; | ||
989 | source = { | ||
990 | remotes = ["https://rubygems.org"]; | ||
991 | sha256 = "14fsc208qsf46cflk23vs2fdw435dk65fwv55zhziciwn96ld8sf"; | ||
992 | type = "gem"; | ||
993 | }; | ||
994 | version = "2.9.1"; | ||
995 | }; | ||
996 | handlebars_assets = { | ||
997 | dependencies = ["execjs" "sprockets" "tilt"]; | ||
998 | platforms = []; | ||
999 | source = { | ||
1000 | remotes = ["https://rubygems.org"]; | ||
1001 | sha256 = "18pyksz4jb0n28acqxv14ahy8mkc9ldqbbn73gcj28m0l9wjzsca"; | ||
1002 | type = "gem"; | ||
1003 | }; | ||
1004 | version = "0.23.2"; | ||
1005 | }; | ||
1006 | hashdiff = { | ||
1007 | platforms = []; | ||
1008 | source = { | ||
1009 | remotes = ["https://rubygems.org"]; | ||
1010 | sha256 = "0yj5l2rw8i8jc725hbcpc4wks0qlaaimr3dpaqamfjkjkxl0hjp9"; | ||
1011 | type = "gem"; | ||
1012 | }; | ||
1013 | version = "0.3.7"; | ||
1014 | }; | ||
1015 | hashie = { | ||
1016 | platforms = []; | ||
1017 | source = { | ||
1018 | remotes = ["https://rubygems.org"]; | ||
1019 | sha256 = "1hh5lybf8hm7d7xs4xm8hxvm8xqrs2flc8fnwkrclaj746izw6xb"; | ||
1020 | type = "gem"; | ||
1021 | }; | ||
1022 | version = "3.5.7"; | ||
1023 | }; | ||
1024 | http = { | ||
1025 | dependencies = ["addressable" "http-cookie" "http-form_data" "http_parser.rb"]; | ||
1026 | platforms = []; | ||
1027 | source = { | ||
1028 | remotes = ["https://rubygems.org"]; | ||
1029 | sha256 = "1jlm5prw437wqpfxcigh88lfap3m7g8mnmj5as7qw6dzqnvrxwmc"; | ||
1030 | type = "gem"; | ||
1031 | }; | ||
1032 | version = "3.3.0"; | ||
1033 | }; | ||
1034 | http-cookie = { | ||
1035 | dependencies = ["domain_name"]; | ||
1036 | platforms = []; | ||
1037 | source = { | ||
1038 | remotes = ["https://rubygems.org"]; | ||
1039 | sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g"; | ||
1040 | type = "gem"; | ||
1041 | }; | ||
1042 | version = "1.0.3"; | ||
1043 | }; | ||
1044 | http-form_data = { | ||
1045 | platforms = []; | ||
1046 | source = { | ||
1047 | remotes = ["https://rubygems.org"]; | ||
1048 | sha256 = "15lpn604byf7cyxnw949xz4rvpcknqp7a48q73nm630gqxsa76f3"; | ||
1049 | type = "gem"; | ||
1050 | }; | ||
1051 | version = "2.1.1"; | ||
1052 | }; | ||
1053 | http_accept_language = { | ||
1054 | platforms = []; | ||
1055 | source = { | ||
1056 | remotes = ["https://rubygems.org"]; | ||
1057 | sha256 = "0d0nlfz9vm4jr1l6q0chx4rp2hrnrfbx3gadc1dz930lbbaz0hq0"; | ||
1058 | type = "gem"; | ||
1059 | }; | ||
1060 | version = "2.1.1"; | ||
1061 | }; | ||
1062 | "http_parser.rb" = { | ||
1063 | platforms = []; | ||
1064 | source = { | ||
1065 | remotes = ["https://rubygems.org"]; | ||
1066 | sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi"; | ||
1067 | type = "gem"; | ||
1068 | }; | ||
1069 | version = "0.6.0"; | ||
1070 | }; | ||
1071 | httparty = { | ||
1072 | dependencies = ["mime-types" "multi_xml"]; | ||
1073 | platforms = []; | ||
1074 | source = { | ||
1075 | remotes = ["https://rubygems.org"]; | ||
1076 | sha256 = "1xmm7pxmz3pblkdr76dg7qm5s60kpp3yvh46c2i0bn1dm0zgl730"; | ||
1077 | type = "gem"; | ||
1078 | }; | ||
1079 | version = "0.16.3"; | ||
1080 | }; | ||
1081 | httpclient = { | ||
1082 | platforms = []; | ||
1083 | source = { | ||
1084 | remotes = ["https://rubygems.org"]; | ||
1085 | sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99"; | ||
1086 | type = "gem"; | ||
1087 | }; | ||
1088 | version = "2.8.3"; | ||
1089 | }; | ||
1090 | i18n = { | ||
1091 | dependencies = ["concurrent-ruby"]; | ||
1092 | platforms = []; | ||
1093 | source = { | ||
1094 | remotes = ["https://rubygems.org"]; | ||
1095 | sha256 = "1gcp1m1p6dpasycfz2sj82ci9ggz7lsskz9c9q6gvfwxrl8y9dx7"; | ||
1096 | type = "gem"; | ||
1097 | }; | ||
1098 | version = "1.1.1"; | ||
1099 | }; | ||
1100 | i18n-inflector = { | ||
1101 | dependencies = ["i18n"]; | ||
1102 | platforms = []; | ||
1103 | source = { | ||
1104 | remotes = ["https://rubygems.org"]; | ||
1105 | sha256 = "081jr7z947aqjfmpbfs10w9jxi205jwgk4mgd8jds1b4m4i8mc7g"; | ||
1106 | type = "gem"; | ||
1107 | }; | ||
1108 | version = "2.6.7"; | ||
1109 | }; | ||
1110 | i18n-inflector-rails = { | ||
1111 | dependencies = ["actionpack" "i18n-inflector" "railties"]; | ||
1112 | platforms = []; | ||
1113 | source = { | ||
1114 | remotes = ["https://rubygems.org"]; | ||
1115 | sha256 = "0c04jm657akp5n14syhcwnn3hnsvx7harvg97768bvf3f9a37hyk"; | ||
1116 | type = "gem"; | ||
1117 | }; | ||
1118 | version = "1.0.7"; | ||
1119 | }; | ||
1120 | ipaddress = { | ||
1121 | platforms = []; | ||
1122 | source = { | ||
1123 | remotes = ["https://rubygems.org"]; | ||
1124 | sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45"; | ||
1125 | type = "gem"; | ||
1126 | }; | ||
1127 | version = "0.8.3"; | ||
1128 | }; | ||
1129 | jaro_winkler = { | ||
1130 | platforms = []; | ||
1131 | source = { | ||
1132 | remotes = ["https://rubygems.org"]; | ||
1133 | sha256 = "0rr797nqz081bfk30m2apj5h24bg5d1jr1c8p3xwx4hbwsrbclah"; | ||
1134 | type = "gem"; | ||
1135 | }; | ||
1136 | version = "1.5.1"; | ||
1137 | }; | ||
1138 | jasmine = { | ||
1139 | dependencies = ["jasmine-core" "phantomjs" "rack" "rake"]; | ||
1140 | platforms = []; | ||
1141 | source = { | ||
1142 | remotes = ["https://rubygems.org"]; | ||
1143 | sha256 = "1xfwf163wi5a9i0vlm564cqi6k30h15wnrwd15ph95jfa5516kv1"; | ||
1144 | type = "gem"; | ||
1145 | }; | ||
1146 | version = "3.3.0"; | ||
1147 | }; | ||
1148 | jasmine-core = { | ||
1149 | platforms = []; | ||
1150 | source = { | ||
1151 | remotes = ["https://rubygems.org"]; | ||
1152 | sha256 = "1b12bjfrxvb8mwjwlfyngykd80lz956glcpfz7rhhw7n75b2rdlv"; | ||
1153 | type = "gem"; | ||
1154 | }; | ||
1155 | version = "3.3.0"; | ||
1156 | }; | ||
1157 | jasmine-jquery-rails = { | ||
1158 | platforms = []; | ||
1159 | source = { | ||
1160 | remotes = ["https://rubygems.org"]; | ||
1161 | sha256 = "0cq5zd4ng5dlza45whd6sa7bzd60rlddk9760271mybdqyd96jlv"; | ||
1162 | type = "gem"; | ||
1163 | }; | ||
1164 | version = "2.0.3"; | ||
1165 | }; | ||
1166 | jquery-rails = { | ||
1167 | dependencies = ["rails-dom-testing" "railties" "thor"]; | ||
1168 | platforms = []; | ||
1169 | source = { | ||
1170 | remotes = ["https://rubygems.org"]; | ||
1171 | sha256 = "17201sb8ddwy4yprizmqabq1kfx3m9c53p0yqngn63m07jjcpnh8"; | ||
1172 | type = "gem"; | ||
1173 | }; | ||
1174 | version = "4.3.3"; | ||
1175 | }; | ||
1176 | js-routes = { | ||
1177 | dependencies = ["railties" "sprockets-rails"]; | ||
1178 | platforms = []; | ||
1179 | source = { | ||
1180 | remotes = ["https://rubygems.org"]; | ||
1181 | sha256 = "14yx3jrd4sgcwgj8yrrqdwl691mci1hcjqyyvp0v15jbzis1bclm"; | ||
1182 | type = "gem"; | ||
1183 | }; | ||
1184 | version = "1.4.4"; | ||
1185 | }; | ||
1186 | js_image_paths = { | ||
1187 | dependencies = ["rails" "sprockets"]; | ||
1188 | platforms = []; | ||
1189 | source = { | ||
1190 | remotes = ["https://rubygems.org"]; | ||
1191 | sha256 = "1d4kq8895i61a338ddk5f2k16l5lvmnkby9cdjwnmm2jddw4q7nf"; | ||
1192 | type = "gem"; | ||
1193 | }; | ||
1194 | version = "0.1.1"; | ||
1195 | }; | ||
1196 | json = { | ||
1197 | platforms = []; | ||
1198 | source = { | ||
1199 | remotes = ["https://rubygems.org"]; | ||
1200 | sha256 = "01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp"; | ||
1201 | type = "gem"; | ||
1202 | }; | ||
1203 | version = "2.1.0"; | ||
1204 | }; | ||
1205 | json-jwt = { | ||
1206 | dependencies = ["activesupport" "aes_key_wrap" "bindata"]; | ||
1207 | platforms = []; | ||
1208 | source = { | ||
1209 | remotes = ["https://rubygems.org"]; | ||
1210 | sha256 = "065k7vffdki73f4nz89lxi6wxmcw5dlf593831pgvlbralll6x3r"; | ||
1211 | type = "gem"; | ||
1212 | }; | ||
1213 | version = "1.9.4"; | ||
1214 | }; | ||
1215 | json-schema = { | ||
1216 | dependencies = ["addressable"]; | ||
1217 | platforms = []; | ||
1218 | source = { | ||
1219 | remotes = ["https://rubygems.org"]; | ||
1220 | sha256 = "1yv5lfmr2nzd14af498xqd5p89f3g080q8wk0klr3vxgypsikkb5"; | ||
1221 | type = "gem"; | ||
1222 | }; | ||
1223 | version = "2.8.1"; | ||
1224 | }; | ||
1225 | json-schema-rspec = { | ||
1226 | dependencies = ["json-schema" "rspec"]; | ||
1227 | platforms = []; | ||
1228 | source = { | ||
1229 | remotes = ["https://rubygems.org"]; | ||
1230 | sha256 = "1ip30yjzyigqqp9jwkrw9x9vrfpnmwi160zmk2vkrwlv9pby0wr9"; | ||
1231 | type = "gem"; | ||
1232 | }; | ||
1233 | version = "0.0.4"; | ||
1234 | }; | ||
1235 | jsonpath = { | ||
1236 | dependencies = ["multi_json" "to_regexp"]; | ||
1237 | platforms = []; | ||
1238 | source = { | ||
1239 | remotes = ["https://rubygems.org"]; | ||
1240 | sha256 = "06i41lwpj0dwvbxcpqrad5pjn2gmcv0srv0zw0ap7irwc21ifd7d"; | ||
1241 | type = "gem"; | ||
1242 | }; | ||
1243 | version = "0.9.6"; | ||
1244 | }; | ||
1245 | jwt = { | ||
1246 | platforms = []; | ||
1247 | source = { | ||
1248 | remotes = ["https://rubygems.org"]; | ||
1249 | sha256 = "1w0kaqrbl71cq9sbnixc20x5lqah3hs2i93xmhlfdg2y3by7yzky"; | ||
1250 | type = "gem"; | ||
1251 | }; | ||
1252 | version = "2.1.0"; | ||
1253 | }; | ||
1254 | kgio = { | ||
1255 | platforms = []; | ||
1256 | source = { | ||
1257 | remotes = ["https://rubygems.org"]; | ||
1258 | sha256 = "1528pyj1szzzp3pgj05fzjd36qjrxm9yj2x5radc9p1z7vl67y50"; | ||
1259 | type = "gem"; | ||
1260 | }; | ||
1261 | version = "2.11.2"; | ||
1262 | }; | ||
1263 | kostya-sigar = { | ||
1264 | platforms = []; | ||
1265 | source = { | ||
1266 | remotes = ["https://rubygems.org"]; | ||
1267 | sha256 = "0z0pcykhjyrb7kq76jfcyxc1qq23gj5zmgy3miy87v85ydrxiqwb"; | ||
1268 | type = "gem"; | ||
1269 | }; | ||
1270 | version = "2.0.4"; | ||
1271 | }; | ||
1272 | leaflet-rails = { | ||
1273 | dependencies = ["rails"]; | ||
1274 | platforms = []; | ||
1275 | source = { | ||
1276 | remotes = ["https://rubygems.org"]; | ||
1277 | sha256 = "0dy7vhsjj1fhbbqm2s7pw57vgysd31qqi4y0hm91325hmvq75grb"; | ||
1278 | type = "gem"; | ||
1279 | }; | ||
1280 | version = "1.3.1"; | ||
1281 | }; | ||
1282 | listen = { | ||
1283 | dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"]; | ||
1284 | platforms = []; | ||
1285 | source = { | ||
1286 | remotes = ["https://rubygems.org"]; | ||
1287 | sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx"; | ||
1288 | type = "gem"; | ||
1289 | }; | ||
1290 | version = "3.1.5"; | ||
1291 | }; | ||
1292 | little-plugger = { | ||
1293 | platforms = []; | ||
1294 | source = { | ||
1295 | remotes = ["https://rubygems.org"]; | ||
1296 | sha256 = "1frilv82dyxnlg8k1jhrvyd73l6k17mxc5vwxx080r4x1p04gwym"; | ||
1297 | type = "gem"; | ||
1298 | }; | ||
1299 | version = "1.1.4"; | ||
1300 | }; | ||
1301 | logging = { | ||
1302 | dependencies = ["little-plugger" "multi_json"]; | ||
1303 | platforms = []; | ||
1304 | source = { | ||
1305 | remotes = ["https://rubygems.org"]; | ||
1306 | sha256 = "06j6iaj89h9jhkx1x3hlswqrfnqds8br05xb1qra69dpvbdmjcwn"; | ||
1307 | type = "gem"; | ||
1308 | }; | ||
1309 | version = "2.2.2"; | ||
1310 | }; | ||
1311 | logging-rails = { | ||
1312 | dependencies = ["logging"]; | ||
1313 | platforms = []; | ||
1314 | source = { | ||
1315 | remotes = ["https://rubygems.org"]; | ||
1316 | sha256 = "022cnj9v177282kadd9ygzjpvlvbq9k5z0xhdbbmgypi05z4i239"; | ||
1317 | type = "gem"; | ||
1318 | }; | ||
1319 | version = "0.6.0"; | ||
1320 | }; | ||
1321 | loofah = { | ||
1322 | dependencies = ["crass" "nokogiri"]; | ||
1323 | platforms = []; | ||
1324 | source = { | ||
1325 | remotes = ["https://rubygems.org"]; | ||
1326 | sha256 = "1ccsid33xjajd0im2xv941aywi58z7ihwkvaf1w2bv89vn5bhsjg"; | ||
1327 | type = "gem"; | ||
1328 | }; | ||
1329 | version = "2.2.3"; | ||
1330 | }; | ||
1331 | lumberjack = { | ||
1332 | platforms = []; | ||
1333 | source = { | ||
1334 | remotes = ["https://rubygems.org"]; | ||
1335 | sha256 = "06im7gcg42x77yhz2w5da2ly9xz0n0c36y5ks7xs53v0l9g0vf5n"; | ||
1336 | type = "gem"; | ||
1337 | }; | ||
1338 | version = "1.0.13"; | ||
1339 | }; | ||
1340 | macaddr = { | ||
1341 | dependencies = ["systemu"]; | ||
1342 | platforms = []; | ||
1343 | source = { | ||
1344 | remotes = ["https://rubygems.org"]; | ||
1345 | sha256 = "1clii8mvhmh5lmnm95ljnjygyiyhdpja85c5vy487rhxn52scn0b"; | ||
1346 | type = "gem"; | ||
1347 | }; | ||
1348 | version = "1.7.1"; | ||
1349 | }; | ||
1350 | mail = { | ||
1351 | dependencies = ["mini_mime"]; | ||
1352 | platforms = []; | ||
1353 | source = { | ||
1354 | remotes = ["https://rubygems.org"]; | ||
1355 | sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc"; | ||
1356 | type = "gem"; | ||
1357 | }; | ||
1358 | version = "2.7.1"; | ||
1359 | }; | ||
1360 | markdown-it-html5-embed = { | ||
1361 | platforms = []; | ||
1362 | source = { | ||
1363 | remotes = ["https://rubygems.org"]; | ||
1364 | sha256 = "10n2z6j0whc6makxvcf2jhpwb8xrj4s6vyywijsaaxs0cn490a5c"; | ||
1365 | type = "gem"; | ||
1366 | }; | ||
1367 | version = "1.0.0"; | ||
1368 | }; | ||
1369 | markerb = { | ||
1370 | platforms = []; | ||
1371 | source = { | ||
1372 | remotes = ["https://rubygems.org"]; | ||
1373 | sha256 = "08sm3kafc3086l0a9is2cysk7j2k71mxy6ba295pwwzyvy734y76"; | ||
1374 | type = "gem"; | ||
1375 | }; | ||
1376 | version = "1.1.0"; | ||
1377 | }; | ||
1378 | memoizable = { | ||
1379 | dependencies = ["thread_safe"]; | ||
1380 | platforms = []; | ||
1381 | source = { | ||
1382 | remotes = ["https://rubygems.org"]; | ||
1383 | sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c"; | ||
1384 | type = "gem"; | ||
1385 | }; | ||
1386 | version = "0.4.2"; | ||
1387 | }; | ||
1388 | method_source = { | ||
1389 | platforms = []; | ||
1390 | source = { | ||
1391 | remotes = ["https://rubygems.org"]; | ||
1392 | sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq"; | ||
1393 | type = "gem"; | ||
1394 | }; | ||
1395 | version = "0.9.2"; | ||
1396 | }; | ||
1397 | mime-types = { | ||
1398 | dependencies = ["mime-types-data"]; | ||
1399 | platforms = []; | ||
1400 | source = { | ||
1401 | remotes = ["https://rubygems.org"]; | ||
1402 | sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk"; | ||
1403 | type = "gem"; | ||
1404 | }; | ||
1405 | version = "3.2.2"; | ||
1406 | }; | ||
1407 | mime-types-data = { | ||
1408 | platforms = []; | ||
1409 | source = { | ||
1410 | remotes = ["https://rubygems.org"]; | ||
1411 | sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc"; | ||
1412 | type = "gem"; | ||
1413 | }; | ||
1414 | version = "3.2018.0812"; | ||
1415 | }; | ||
1416 | mini_magick = { | ||
1417 | platforms = []; | ||
1418 | source = { | ||
1419 | remotes = ["https://rubygems.org"]; | ||
1420 | sha256 = "0sisx59mr5kydmxmx5vr8spmrxhrjkfqv35zhsqdlyzmp1z5px9p"; | ||
1421 | type = "gem"; | ||
1422 | }; | ||
1423 | version = "4.9.2"; | ||
1424 | }; | ||
1425 | mini_mime = { | ||
1426 | platforms = []; | ||
1427 | source = { | ||
1428 | remotes = ["https://rubygems.org"]; | ||
1429 | sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3"; | ||
1430 | type = "gem"; | ||
1431 | }; | ||
1432 | version = "1.0.1"; | ||
1433 | }; | ||
1434 | mini_portile2 = { | ||
1435 | platforms = []; | ||
1436 | source = { | ||
1437 | remotes = ["https://rubygems.org"]; | ||
1438 | sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11"; | ||
1439 | type = "gem"; | ||
1440 | }; | ||
1441 | version = "2.3.0"; | ||
1442 | }; | ||
1443 | minitest = { | ||
1444 | platforms = []; | ||
1445 | source = { | ||
1446 | remotes = ["https://rubygems.org"]; | ||
1447 | sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq"; | ||
1448 | type = "gem"; | ||
1449 | }; | ||
1450 | version = "5.11.3"; | ||
1451 | }; | ||
1452 | mobile-fu = { | ||
1453 | dependencies = ["rack-mobile-detect" "rails"]; | ||
1454 | platforms = []; | ||
1455 | source = { | ||
1456 | remotes = ["https://rubygems.org"]; | ||
1457 | sha256 = "0lxfcsd7dwwcpa1j2jbl382anmv6kksf5q1wqj14gc6jxxjq9s4i"; | ||
1458 | type = "gem"; | ||
1459 | }; | ||
1460 | version = "1.4.0"; | ||
1461 | }; | ||
1462 | multi_json = { | ||
1463 | platforms = []; | ||
1464 | source = { | ||
1465 | remotes = ["https://rubygems.org"]; | ||
1466 | sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv"; | ||
1467 | type = "gem"; | ||
1468 | }; | ||
1469 | version = "1.13.1"; | ||
1470 | }; | ||
1471 | multi_test = { | ||
1472 | platforms = []; | ||
1473 | source = { | ||
1474 | remotes = ["https://rubygems.org"]; | ||
1475 | sha256 = "1sx356q81plr67hg16jfwz9hcqvnk03bd9n75pmdw8pfxjfy1yxd"; | ||
1476 | type = "gem"; | ||
1477 | }; | ||
1478 | version = "0.1.2"; | ||
1479 | }; | ||
1480 | multi_xml = { | ||
1481 | platforms = []; | ||
1482 | source = { | ||
1483 | remotes = ["https://rubygems.org"]; | ||
1484 | sha256 = "0lmd4f401mvravi1i1yq7b2qjjli0yq7dfc4p1nj5nwajp7r6hyj"; | ||
1485 | type = "gem"; | ||
1486 | }; | ||
1487 | version = "0.6.0"; | ||
1488 | }; | ||
1489 | multipart-post = { | ||
1490 | platforms = []; | ||
1491 | source = { | ||
1492 | remotes = ["https://rubygems.org"]; | ||
1493 | sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x"; | ||
1494 | type = "gem"; | ||
1495 | }; | ||
1496 | version = "2.0.0"; | ||
1497 | }; | ||
1498 | naught = { | ||
1499 | platforms = []; | ||
1500 | source = { | ||
1501 | remotes = ["https://rubygems.org"]; | ||
1502 | sha256 = "1wwjx35zgbc0nplp8a866iafk4zsrbhwwz4pav5gydr2wm26nksg"; | ||
1503 | type = "gem"; | ||
1504 | }; | ||
1505 | version = "1.1.0"; | ||
1506 | }; | ||
1507 | nenv = { | ||
1508 | platforms = []; | ||
1509 | source = { | ||
1510 | remotes = ["https://rubygems.org"]; | ||
1511 | sha256 = "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr"; | ||
1512 | type = "gem"; | ||
1513 | }; | ||
1514 | version = "0.3.0"; | ||
1515 | }; | ||
1516 | net-ldap = { | ||
1517 | platforms = []; | ||
1518 | source = { | ||
1519 | remotes = ["https://rubygems.org"]; | ||
1520 | sha256 = "016igqz81a8zcwqzp5bbhryqmb2skmyf57ij3nb5z8sxwhw22jgh"; | ||
1521 | type = "gem"; | ||
1522 | }; | ||
1523 | version = "0.16.1"; | ||
1524 | }; | ||
1525 | nio4r = { | ||
1526 | platforms = []; | ||
1527 | source = { | ||
1528 | remotes = ["https://rubygems.org"]; | ||
1529 | sha256 = "1a41ca1kpdmrypjp9xbgvckpy8g26zxphkja9vk7j5wl4n8yvlyr"; | ||
1530 | type = "gem"; | ||
1531 | }; | ||
1532 | version = "2.3.1"; | ||
1533 | }; | ||
1534 | nokogiri = { | ||
1535 | dependencies = ["mini_portile2"]; | ||
1536 | platforms = []; | ||
1537 | source = { | ||
1538 | remotes = ["https://rubygems.org"]; | ||
1539 | sha256 = "0byyxrazkfm29ypcx5q4syrv126nvjnf7z6bqi01sqkv4llsi4qz"; | ||
1540 | type = "gem"; | ||
1541 | }; | ||
1542 | version = "1.8.5"; | ||
1543 | }; | ||
1544 | notiffany = { | ||
1545 | dependencies = ["nenv" "shellany"]; | ||
1546 | platforms = []; | ||
1547 | source = { | ||
1548 | remotes = ["https://rubygems.org"]; | ||
1549 | sha256 = "0x838fa5il0dd9zbm3lxkpbfxcf5fxv9556mayc2mxsdl5ghv8nx"; | ||
1550 | type = "gem"; | ||
1551 | }; | ||
1552 | version = "0.1.1"; | ||
1553 | }; | ||
1554 | oauth = { | ||
1555 | platforms = []; | ||
1556 | source = { | ||
1557 | remotes = ["https://rubygems.org"]; | ||
1558 | sha256 = "1zszdg8q1b135z7l7crjj234k4j0m347hywp5kj6zsq7q78pw09y"; | ||
1559 | type = "gem"; | ||
1560 | }; | ||
1561 | version = "0.5.4"; | ||
1562 | }; | ||
1563 | oauth2 = { | ||
1564 | dependencies = ["faraday" "jwt" "multi_json" "multi_xml" "rack"]; | ||
1565 | platforms = []; | ||
1566 | source = { | ||
1567 | remotes = ["https://rubygems.org"]; | ||
1568 | sha256 = "0av6nlb5y2sm6m8fx669ywrqa9858yqaqfqzny75nqp3anag89qh"; | ||
1569 | type = "gem"; | ||
1570 | }; | ||
1571 | version = "1.4.1"; | ||
1572 | }; | ||
1573 | octokit = { | ||
1574 | dependencies = ["sawyer"]; | ||
1575 | platforms = []; | ||
1576 | source = { | ||
1577 | remotes = ["https://rubygems.org"]; | ||
1578 | sha256 = "1yh0yzzqg575ix3y2l2261b9ag82gv2v4f1wczdhcmfbxcz755x6"; | ||
1579 | type = "gem"; | ||
1580 | }; | ||
1581 | version = "4.13.0"; | ||
1582 | }; | ||
1583 | omniauth = { | ||
1584 | dependencies = ["hashie" "rack"]; | ||
1585 | platforms = []; | ||
1586 | source = { | ||
1587 | remotes = ["https://rubygems.org"]; | ||
1588 | sha256 = "1msqr4qq7mfdvl3rg89529isrv595hvjpj2gi0say4b8nwqfggmg"; | ||
1589 | type = "gem"; | ||
1590 | }; | ||
1591 | version = "1.8.1"; | ||
1592 | }; | ||
1593 | omniauth-oauth = { | ||
1594 | dependencies = ["oauth" "omniauth"]; | ||
1595 | platforms = []; | ||
1596 | source = { | ||
1597 | remotes = ["https://rubygems.org"]; | ||
1598 | sha256 = "1n5vk4by7hkyc09d9blrw2argry5awpw4gbw1l4n2s9b3j4qz037"; | ||
1599 | type = "gem"; | ||
1600 | }; | ||
1601 | version = "1.1.0"; | ||
1602 | }; | ||
1603 | omniauth-oauth2 = { | ||
1604 | dependencies = ["oauth2" "omniauth"]; | ||
1605 | platforms = []; | ||
1606 | source = { | ||
1607 | remotes = ["https://rubygems.org"]; | ||
1608 | sha256 = "0kscjf1y0lnggsl4z3w5bwllqshqjlsl5kmcya5haydajdnzvdjr"; | ||
1609 | type = "gem"; | ||
1610 | }; | ||
1611 | version = "1.5.0"; | ||
1612 | }; | ||
1613 | omniauth-tumblr = { | ||
1614 | dependencies = ["multi_json" "omniauth-oauth"]; | ||
1615 | platforms = []; | ||
1616 | source = { | ||
1617 | remotes = ["https://rubygems.org"]; | ||
1618 | sha256 = "10ncmfym4l6k6aqp402g7mqxahbggcj5xkpsjxgngs746s82y97w"; | ||
1619 | type = "gem"; | ||
1620 | }; | ||
1621 | version = "1.2"; | ||
1622 | }; | ||
1623 | omniauth-twitter = { | ||
1624 | dependencies = ["omniauth-oauth" "rack"]; | ||
1625 | platforms = []; | ||
1626 | source = { | ||
1627 | remotes = ["https://rubygems.org"]; | ||
1628 | sha256 = "0r5j65hkpgzhvvbs90id3nfsjgsad6ymzggbm7zlaxvnrmvnrk65"; | ||
1629 | type = "gem"; | ||
1630 | }; | ||
1631 | version = "1.4.0"; | ||
1632 | }; | ||
1633 | omniauth-wordpress = { | ||
1634 | dependencies = ["omniauth-oauth2"]; | ||
1635 | platforms = []; | ||
1636 | source = { | ||
1637 | remotes = ["https://rubygems.org"]; | ||
1638 | sha256 = "008zx4zwrbzyvlgv6hy68k1d05zskiwvcgwvxxbxhbl0mvlmh303"; | ||
1639 | type = "gem"; | ||
1640 | }; | ||
1641 | version = "0.2.2"; | ||
1642 | }; | ||
1643 | open_graph_reader = { | ||
1644 | dependencies = ["faraday" "nokogiri"]; | ||
1645 | platforms = []; | ||
1646 | source = { | ||
1647 | remotes = ["https://rubygems.org"]; | ||
1648 | sha256 = "0af4yldyb0d8zglw73s13pyn0g90gs4m5zf7bwy8r4kym9zbvc21"; | ||
1649 | type = "gem"; | ||
1650 | }; | ||
1651 | version = "0.6.2"; | ||
1652 | }; | ||
1653 | openid_connect = { | ||
1654 | dependencies = ["activemodel" "attr_required" "json-jwt" "rack-oauth2" "swd" "tzinfo" "validate_email" "validate_url" "webfinger"]; | ||
1655 | platforms = []; | ||
1656 | source = { | ||
1657 | remotes = ["https://rubygems.org"]; | ||
1658 | sha256 = "1r13bv18nyvw0g1nw3fzffvv2si99zj24w0k5zgawf4q6nn5f7vd"; | ||
1659 | type = "gem"; | ||
1660 | }; | ||
1661 | version = "1.1.6"; | ||
1662 | }; | ||
1663 | orm_adapter = { | ||
1664 | platforms = []; | ||
1665 | source = { | ||
1666 | remotes = ["https://rubygems.org"]; | ||
1667 | sha256 = "1fg9jpjlzf5y49qs9mlpdrgs5rpcyihq1s4k79nv9js0spjhnpda"; | ||
1668 | type = "gem"; | ||
1669 | }; | ||
1670 | version = "0.5.0"; | ||
1671 | }; | ||
1672 | parallel = { | ||
1673 | platforms = []; | ||
1674 | source = { | ||
1675 | remotes = ["https://rubygems.org"]; | ||
1676 | sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67"; | ||
1677 | type = "gem"; | ||
1678 | }; | ||
1679 | version = "1.12.1"; | ||
1680 | }; | ||
1681 | parser = { | ||
1682 | dependencies = ["ast"]; | ||
1683 | platforms = []; | ||
1684 | source = { | ||
1685 | remotes = ["https://rubygems.org"]; | ||
1686 | sha256 = "1zjk0w1kjj3xk8ymy1430aa4gg0k8ckphfj88br6il4pm83f0n1f"; | ||
1687 | type = "gem"; | ||
1688 | }; | ||
1689 | version = "2.5.3.0"; | ||
1690 | }; | ||
1691 | pg = { | ||
1692 | platforms = []; | ||
1693 | source = { | ||
1694 | remotes = ["https://rubygems.org"]; | ||
1695 | sha256 = "1pnjw3rspdfjssxyf42jnbsdlgri8ylysimp0s28wxb93k6ff2qb"; | ||
1696 | type = "gem"; | ||
1697 | }; | ||
1698 | version = "1.1.3"; | ||
1699 | }; | ||
1700 | phantomjs = { | ||
1701 | platforms = []; | ||
1702 | source = { | ||
1703 | remotes = ["https://rubygems.org"]; | ||
1704 | sha256 = "0y8pbbyq9dirxb7igkb2s5limz2895qmr41c09fjhx6k6fxcz4mk"; | ||
1705 | type = "gem"; | ||
1706 | }; | ||
1707 | version = "2.1.1.0"; | ||
1708 | }; | ||
1709 | poltergeist = { | ||
1710 | dependencies = ["capybara" "cliver" "websocket-driver"]; | ||
1711 | platforms = []; | ||
1712 | source = { | ||
1713 | remotes = ["https://rubygems.org"]; | ||
1714 | sha256 = "0il80p97psmhs6scl0grq031gv7kws4ylvvd6zyr8xv91qadga95"; | ||
1715 | type = "gem"; | ||
1716 | }; | ||
1717 | version = "1.18.1"; | ||
1718 | }; | ||
1719 | powerpack = { | ||
1720 | platforms = []; | ||
1721 | source = { | ||
1722 | remotes = ["https://rubygems.org"]; | ||
1723 | sha256 = "1r51d67wd467rpdfl6x43y84vwm8f5ql9l9m85ak1s2sp3nc5hyv"; | ||
1724 | type = "gem"; | ||
1725 | }; | ||
1726 | version = "0.1.2"; | ||
1727 | }; | ||
1728 | pronto = { | ||
1729 | dependencies = ["gitlab" "httparty" "octokit" "rainbow" "rugged" "thor"]; | ||
1730 | platforms = []; | ||
1731 | source = { | ||
1732 | remotes = ["https://rubygems.org"]; | ||
1733 | sha256 = "13xbg1pm3kz5zbzxad5qgqnkzkp3ddajj7wxx16aqbfr7rqggvhz"; | ||
1734 | type = "gem"; | ||
1735 | }; | ||
1736 | version = "0.9.5"; | ||
1737 | }; | ||
1738 | pronto-eslint = { | ||
1739 | dependencies = ["eslintrb" "pronto"]; | ||
1740 | platforms = []; | ||
1741 | source = { | ||
1742 | remotes = ["https://rubygems.org"]; | ||
1743 | sha256 = "1cxyx6mlcdgv4ykliaizkx9cps68xf7qvy8lzxmv7pcqzkxaq7xc"; | ||
1744 | type = "gem"; | ||
1745 | }; | ||
1746 | version = "0.9.1"; | ||
1747 | }; | ||
1748 | pronto-haml = { | ||
1749 | dependencies = ["haml_lint" "pronto"]; | ||
1750 | platforms = []; | ||
1751 | source = { | ||
1752 | remotes = ["https://rubygems.org"]; | ||
1753 | sha256 = "116iln1whwiqy55f86q33lnnic0awnqm415xvxwnhwlagcbwmnkg"; | ||
1754 | type = "gem"; | ||
1755 | }; | ||
1756 | version = "0.9.0"; | ||
1757 | }; | ||
1758 | pronto-rubocop = { | ||
1759 | dependencies = ["pronto" "rubocop"]; | ||
1760 | platforms = []; | ||
1761 | source = { | ||
1762 | remotes = ["https://rubygems.org"]; | ||
1763 | sha256 = "0bcm34qlpp02wf69why5lpi5p53h5r4fq36f4b1fwi621fwzlgsy"; | ||
1764 | type = "gem"; | ||
1765 | }; | ||
1766 | version = "0.9.1"; | ||
1767 | }; | ||
1768 | pronto-scss = { | ||
1769 | dependencies = ["pronto" "scss_lint"]; | ||
1770 | platforms = []; | ||
1771 | source = { | ||
1772 | remotes = ["https://rubygems.org"]; | ||
1773 | sha256 = "0kgaqd6l2w3brdsp5231fpfr6fwajciz2hdr925l1zhh6ni1y2za"; | ||
1774 | type = "gem"; | ||
1775 | }; | ||
1776 | version = "0.9.1"; | ||
1777 | }; | ||
1778 | pry = { | ||
1779 | dependencies = ["coderay" "method_source"]; | ||
1780 | platforms = []; | ||
1781 | source = { | ||
1782 | remotes = ["https://rubygems.org"]; | ||
1783 | sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69"; | ||
1784 | type = "gem"; | ||
1785 | }; | ||
1786 | version = "0.12.2"; | ||
1787 | }; | ||
1788 | pry-byebug = { | ||
1789 | dependencies = ["byebug" "pry"]; | ||
1790 | platforms = []; | ||
1791 | source = { | ||
1792 | remotes = ["https://rubygems.org"]; | ||
1793 | sha256 = "0y2758593i2ij0nhmv0j1pbdfx2cgi52ns6wkij0frgnk2lf650g"; | ||
1794 | type = "gem"; | ||
1795 | }; | ||
1796 | version = "3.6.0"; | ||
1797 | }; | ||
1798 | public_suffix = { | ||
1799 | platforms = []; | ||
1800 | source = { | ||
1801 | remotes = ["https://rubygems.org"]; | ||
1802 | sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l"; | ||
1803 | type = "gem"; | ||
1804 | }; | ||
1805 | version = "3.0.3"; | ||
1806 | }; | ||
1807 | raabro = { | ||
1808 | platforms = []; | ||
1809 | source = { | ||
1810 | remotes = ["https://rubygems.org"]; | ||
1811 | sha256 = "0xzdmbn48753f6k0ckirp8ja5p0xn1a92wbwxfyggyhj0hza9ylq"; | ||
1812 | type = "gem"; | ||
1813 | }; | ||
1814 | version = "1.1.6"; | ||
1815 | }; | ||
1816 | rack = { | ||
1817 | platforms = []; | ||
1818 | source = { | ||
1819 | remotes = ["https://rubygems.org"]; | ||
1820 | sha256 = "1pcgv8dv4vkaczzlix8q3j68capwhk420cddzijwqgi2qb4lm1zm"; | ||
1821 | type = "gem"; | ||
1822 | }; | ||
1823 | version = "2.0.6"; | ||
1824 | }; | ||
1825 | rack-cors = { | ||
1826 | platforms = []; | ||
1827 | source = { | ||
1828 | remotes = ["https://rubygems.org"]; | ||
1829 | sha256 = "1j27vy1bmhbqcyzhxg8d07qassmax769xjalfwcwz6qfiq8cf013"; | ||
1830 | type = "gem"; | ||
1831 | }; | ||
1832 | version = "1.0.2"; | ||
1833 | }; | ||
1834 | rack-google-analytics = { | ||
1835 | dependencies = ["actionpack" "activesupport"]; | ||
1836 | platforms = []; | ||
1837 | source = { | ||
1838 | remotes = ["https://rubygems.org"]; | ||
1839 | sha256 = "09pv0z5dhjjrlhi9qj5qy48hi66f7iix337qrapg7mvwwz6czcvj"; | ||
1840 | type = "gem"; | ||
1841 | }; | ||
1842 | version = "1.2.0"; | ||
1843 | }; | ||
1844 | rack-mobile-detect = { | ||
1845 | dependencies = ["rack"]; | ||
1846 | platforms = []; | ||
1847 | source = { | ||
1848 | remotes = ["https://rubygems.org"]; | ||
1849 | sha256 = "0bagli6ldhkpd1yym775sxy7w5n4jds6gbcjm3gmcl37vggvm8a5"; | ||
1850 | type = "gem"; | ||
1851 | }; | ||
1852 | version = "0.4.0"; | ||
1853 | }; | ||
1854 | rack-oauth2 = { | ||
1855 | dependencies = ["activesupport" "attr_required" "httpclient" "json-jwt" "rack"]; | ||
1856 | platforms = []; | ||
1857 | source = { | ||
1858 | remotes = ["https://rubygems.org"]; | ||
1859 | sha256 = "0kmxj9hbjhhcs3yyb433s82hkpmzb536m0mwfadjiaisganx1cii"; | ||
1860 | type = "gem"; | ||
1861 | }; | ||
1862 | version = "1.9.3"; | ||
1863 | }; | ||
1864 | rack-piwik = { | ||
1865 | platforms = []; | ||
1866 | source = { | ||
1867 | remotes = ["https://rubygems.org"]; | ||
1868 | sha256 = "0raxrckapqh693lpid0cnx1j1v2i3mz5cyssg7grgrilgrn9318z"; | ||
1869 | type = "gem"; | ||
1870 | }; | ||
1871 | version = "0.3.0"; | ||
1872 | }; | ||
1873 | rack-protection = { | ||
1874 | dependencies = ["rack"]; | ||
1875 | platforms = []; | ||
1876 | source = { | ||
1877 | remotes = ["https://rubygems.org"]; | ||
1878 | sha256 = "0ylx74ravz7nvnyygq0nk3v86qdzrmqxpwpayhppyy50l72rcajq"; | ||
1879 | type = "gem"; | ||
1880 | }; | ||
1881 | version = "2.0.4"; | ||
1882 | }; | ||
1883 | rack-rewrite = { | ||
1884 | platforms = []; | ||
1885 | source = { | ||
1886 | remotes = ["https://rubygems.org"]; | ||
1887 | sha256 = "0milw71dv96wnc6i48vbzypws51dgf415kkp8c4air0mkdhpj838"; | ||
1888 | type = "gem"; | ||
1889 | }; | ||
1890 | version = "1.5.1"; | ||
1891 | }; | ||
1892 | rack-ssl = { | ||
1893 | dependencies = ["rack"]; | ||
1894 | platforms = []; | ||
1895 | source = { | ||
1896 | remotes = ["https://rubygems.org"]; | ||
1897 | sha256 = "0c21xqkjyl10fngq6dy8082vmn2png8cwkiyzv83ymixq5cx7ygp"; | ||
1898 | type = "gem"; | ||
1899 | }; | ||
1900 | version = "1.4.1"; | ||
1901 | }; | ||
1902 | rack-test = { | ||
1903 | dependencies = ["rack"]; | ||
1904 | platforms = []; | ||
1905 | source = { | ||
1906 | remotes = ["https://rubygems.org"]; | ||
1907 | sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m"; | ||
1908 | type = "gem"; | ||
1909 | }; | ||
1910 | version = "1.1.0"; | ||
1911 | }; | ||
1912 | rails = { | ||
1913 | dependencies = ["actioncable" "actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activesupport" "railties" "sprockets-rails"]; | ||
1914 | platforms = []; | ||
1915 | source = { | ||
1916 | remotes = ["https://rubygems.org"]; | ||
1917 | sha256 = "0lb07cbwgm371zyn9i6fyj9q8rmv89lacmyzrfvzxqqx2n3ilc5q"; | ||
1918 | type = "gem"; | ||
1919 | }; | ||
1920 | version = "5.1.6"; | ||
1921 | }; | ||
1922 | rails-assets-autosize = { | ||
1923 | platforms = []; | ||
1924 | source = { | ||
1925 | remotes = ["https://rails-assets.org"]; | ||
1926 | sha256 = "0hr72mfprb9678lf7dj9lh801lm7p98nzkrnrz764sy9lmbpzcib"; | ||
1927 | type = "gem"; | ||
1928 | }; | ||
1929 | version = "4.0.2"; | ||
1930 | }; | ||
1931 | rails-assets-backbone = { | ||
1932 | dependencies = ["rails-assets-underscore"]; | ||
1933 | platforms = []; | ||
1934 | source = { | ||
1935 | remotes = ["https://rails-assets.org"]; | ||
1936 | sha256 = "0zjgwhgfmg1jyyds7zfjp6g4bz8vw56qvhlrpj943wcqpdxm93id"; | ||
1937 | type = "gem"; | ||
1938 | }; | ||
1939 | version = "1.3.3"; | ||
1940 | }; | ||
1941 | rails-assets-blueimp-gallery = { | ||
1942 | platforms = []; | ||
1943 | source = { | ||
1944 | remotes = ["https://rails-assets.org"]; | ||
1945 | sha256 = "18b7xvvkdnd39xlbkyw46i86w3wzj349s8iv5wdiypa5qdcql8mq"; | ||
1946 | type = "gem"; | ||
1947 | }; | ||
1948 | version = "2.33.0"; | ||
1949 | }; | ||
1950 | rails-assets-bootstrap = { | ||
1951 | dependencies = ["rails-assets-jquery"]; | ||
1952 | platforms = []; | ||
1953 | source = { | ||
1954 | remotes = ["https://rails-assets.org"]; | ||
1955 | sha256 = "0x4i11132qcmghmqb061iq47yksrr7i0la5hzzdm38dxybh87x5v"; | ||
1956 | type = "gem"; | ||
1957 | }; | ||
1958 | version = "3.3.7"; | ||
1959 | }; | ||
1960 | rails-assets-bootstrap-markdown = { | ||
1961 | dependencies = ["rails-assets-bootstrap"]; | ||
1962 | platforms = []; | ||
1963 | source = { | ||
1964 | remotes = ["https://rails-assets.org"]; | ||
1965 | sha256 = "1nxirs9wx5jxrjmxjwvsqlf2rsypjn3ajg7fs28c4ib7wwpabwj3"; | ||
1966 | type = "gem"; | ||
1967 | }; | ||
1968 | version = "2.10.0"; | ||
1969 | }; | ||
1970 | rails-assets-corejs-typeahead = { | ||
1971 | dependencies = ["rails-assets-jquery"]; | ||
1972 | platforms = []; | ||
1973 | source = { | ||
1974 | remotes = ["https://rails-assets.org"]; | ||
1975 | sha256 = "1p5i6afd156rakrin99c2ryaz3zykx21ir6y10l34jnw03rikcfg"; | ||
1976 | type = "gem"; | ||
1977 | }; | ||
1978 | version = "1.2.1"; | ||
1979 | }; | ||
1980 | rails-assets-diaspora_jsxc = { | ||
1981 | dependencies = ["rails-assets-emojione" "rails-assets-favico.js" "rails-assets-jquery-colorbox" "rails-assets-jquery-fullscreen-plugin" "rails-assets-jquery.slimscroll" "rails-assets-jquery.ui"]; | ||
1982 | platforms = []; | ||
1983 | source = { | ||
1984 | remotes = ["https://rails-assets.org"]; | ||
1985 | sha256 = "07vqdj0l8fsj4fd2sschba2jgfbimyfad56009ldzlcvb6ml5nhi"; | ||
1986 | type = "gem"; | ||
1987 | }; | ||
1988 | version = "0.1.5.develop.7"; | ||
1989 | }; | ||
1990 | rails-assets-emojione = { | ||
1991 | platforms = []; | ||
1992 | source = { | ||
1993 | remotes = ["https://rails-assets.org"]; | ||
1994 | sha256 = "1j29vbsf6v9ikiqlmnfgzxys4xsa1glvmfky8id5xfyymnjx2c52"; | ||
1995 | type = "gem"; | ||
1996 | }; | ||
1997 | version = "2.0.1"; | ||
1998 | }; | ||
1999 | "rails-assets-favico.js" = { | ||
2000 | platforms = []; | ||
2001 | source = { | ||
2002 | remotes = ["https://rails-assets.org"]; | ||
2003 | sha256 = "19yndhljmqlvarf49h5v71zq0p0ngvspjr2v0m6lac0q9ni7r5bv"; | ||
2004 | type = "gem"; | ||
2005 | }; | ||
2006 | version = "0.3.10"; | ||
2007 | }; | ||
2008 | rails-assets-fine-uploader = { | ||
2009 | platforms = []; | ||
2010 | source = { | ||
2011 | remotes = ["https://rails-assets.org"]; | ||
2012 | sha256 = "1vxj78x2vvlchpapxpaawysc9wn8alzdd3gxhwfwy11xv8ka9mdv"; | ||
2013 | type = "gem"; | ||
2014 | }; | ||
2015 | version = "5.13.0"; | ||
2016 | }; | ||
2017 | rails-assets-highlightjs = { | ||
2018 | platforms = []; | ||
2019 | source = { | ||
2020 | remotes = ["https://rails-assets.org"]; | ||
2021 | sha256 = "0spmb0gkfs13fmljjv1n53r53q69fhb6r573ndbxnhgb3izqgnqp"; | ||
2022 | type = "gem"; | ||
2023 | }; | ||
2024 | version = "9.12.0"; | ||
2025 | }; | ||
2026 | rails-assets-jasmine = { | ||
2027 | platforms = []; | ||
2028 | source = { | ||
2029 | remotes = ["https://rails-assets.org"]; | ||
2030 | sha256 = "1n6yixrl9cgq5kckay75b44p878s1kqi69mhgyw99w8dsq8i2vy5"; | ||
2031 | type = "gem"; | ||
2032 | }; | ||
2033 | version = "3.3.0"; | ||
2034 | }; | ||
2035 | rails-assets-jasmine-ajax = { | ||
2036 | dependencies = ["rails-assets-jasmine"]; | ||
2037 | platforms = []; | ||
2038 | source = { | ||
2039 | remotes = ["https://rails-assets.org"]; | ||
2040 | sha256 = "0l8z0p75x1yzk1l1ryfvdlvq8yq4w2xngp4icz478axd5jcqx6kg"; | ||
2041 | type = "gem"; | ||
2042 | }; | ||
2043 | version = "3.4.0"; | ||
2044 | }; | ||
2045 | rails-assets-jquery = { | ||
2046 | platforms = []; | ||
2047 | source = { | ||
2048 | remotes = ["https://rails-assets.org"]; | ||
2049 | sha256 = "1wcaappk12w300733lrqb571cir9nw35d9q6d2i52wwdvhv2fx2y"; | ||
2050 | type = "gem"; | ||
2051 | }; | ||
2052 | version = "3.3.1"; | ||
2053 | }; | ||
2054 | rails-assets-jquery-colorbox = { | ||
2055 | dependencies = ["rails-assets-jquery"]; | ||
2056 | platforms = []; | ||
2057 | source = { | ||
2058 | remotes = ["https://rails-assets.org"]; | ||
2059 | sha256 = "19ws3r1zfviwnfr9s0jh6iqss50iwqkf4a78zhrk0p3bb4lvmmsp"; | ||
2060 | type = "gem"; | ||
2061 | }; | ||
2062 | version = "1.6.4"; | ||
2063 | }; | ||
2064 | rails-assets-jquery-fullscreen-plugin = { | ||
2065 | platforms = []; | ||
2066 | source = { | ||
2067 | remotes = ["https://rails-assets.org"]; | ||
2068 | sha256 = "0ldvq4s15lap9p6w7d1yw6dajn2gh6p75dbkp79p0d8ylzapsd58"; | ||
2069 | type = "gem"; | ||
2070 | }; | ||
2071 | version = "0.5.0"; | ||
2072 | }; | ||
2073 | rails-assets-jquery-placeholder = { | ||
2074 | dependencies = ["rails-assets-jquery"]; | ||
2075 | platforms = []; | ||
2076 | source = { | ||
2077 | remotes = ["https://rails-assets.org"]; | ||
2078 | sha256 = "0h17gjazc27pj4cm2ig232ww4d4ppq9bcginwzjss95pl63richi"; | ||
2079 | type = "gem"; | ||
2080 | }; | ||
2081 | version = "2.3.1"; | ||
2082 | }; | ||
2083 | rails-assets-jquery-textchange = { | ||
2084 | dependencies = ["rails-assets-jquery"]; | ||
2085 | platforms = []; | ||
2086 | source = { | ||
2087 | remotes = ["https://rails-assets.org"]; | ||
2088 | sha256 = "0rsw3cn9a5njv80zy53339kmrmv60b8fqcrr7bacapbagb2rd4dj"; | ||
2089 | type = "gem"; | ||
2090 | }; | ||
2091 | version = "0.2.3"; | ||
2092 | }; | ||
2093 | "rails-assets-jquery.are-you-sure" = { | ||
2094 | dependencies = ["rails-assets-jquery"]; | ||
2095 | platforms = []; | ||
2096 | source = { | ||
2097 | remotes = ["https://rails-assets.org"]; | ||
2098 | sha256 = "0nj04aqh9jpcg57xbjxpm2vn7mkd5clnpma907515a1nxy40bym0"; | ||
2099 | type = "gem"; | ||
2100 | }; | ||
2101 | version = "1.9.0"; | ||
2102 | }; | ||
2103 | "rails-assets-jquery.slimscroll" = { | ||
2104 | platforms = []; | ||
2105 | source = { | ||
2106 | remotes = ["https://rails-assets.org"]; | ||
2107 | sha256 = "1rymmd2rxy1vjjj70v88abmdlfs55276rs3rksj300dgirnnj998"; | ||
2108 | type = "gem"; | ||
2109 | }; | ||
2110 | version = "1.3.8"; | ||
2111 | }; | ||
2112 | "rails-assets-jquery.ui" = { | ||
2113 | dependencies = ["rails-assets-jquery"]; | ||
2114 | platforms = []; | ||
2115 | source = { | ||
2116 | remotes = ["https://rails-assets.org"]; | ||
2117 | sha256 = "0xc9kfb29hi441irj49b7aawxkddk1dxzy938rpqv9ylpsj7knaa"; | ||
2118 | type = "gem"; | ||
2119 | }; | ||
2120 | version = "1.11.4"; | ||
2121 | }; | ||
2122 | rails-assets-markdown-it = { | ||
2123 | platforms = []; | ||
2124 | source = { | ||
2125 | remotes = ["https://rails-assets.org"]; | ||
2126 | sha256 = "0fxx7ldszsdqr5ry21bnxmv33byz7abpk9lcp100q5cqsjx091r9"; | ||
2127 | type = "gem"; | ||
2128 | }; | ||
2129 | version = "8.4.2"; | ||
2130 | }; | ||
2131 | rails-assets-markdown-it--markdown-it-for-inline = { | ||
2132 | platforms = []; | ||
2133 | source = { | ||
2134 | remotes = ["https://rails-assets.org"]; | ||
2135 | sha256 = "0fznv2x7ndadr3wb4dzhh86bpcpwz8f4d8rfhz4sfbqlai40j3jl"; | ||
2136 | type = "gem"; | ||
2137 | }; | ||
2138 | version = "0.1.1"; | ||
2139 | }; | ||
2140 | rails-assets-markdown-it-diaspora-mention = { | ||
2141 | platforms = []; | ||
2142 | source = { | ||
2143 | remotes = ["https://rails-assets.org"]; | ||
2144 | sha256 = "0asggm7wgmdll8x94291p2w6icmp2izi914dlh3b7vb7dpjq3jig"; | ||
2145 | type = "gem"; | ||
2146 | }; | ||
2147 | version = "1.2.0"; | ||
2148 | }; | ||
2149 | rails-assets-markdown-it-hashtag = { | ||
2150 | platforms = []; | ||
2151 | source = { | ||
2152 | remotes = ["https://rails-assets.org"]; | ||
2153 | sha256 = "0dr8fwaxgkfqm7z4rl4jdym0i1ycqw1sgkxshkd9k0849ry12cdk"; | ||
2154 | type = "gem"; | ||
2155 | }; | ||
2156 | version = "0.4.0"; | ||
2157 | }; | ||
2158 | rails-assets-markdown-it-sanitizer = { | ||
2159 | platforms = []; | ||
2160 | source = { | ||
2161 | remotes = ["https://rails-assets.org"]; | ||
2162 | sha256 = "0fkpffh83fc257zkzaia93j4hw2baz90lg10s5yxsxww06q5dn36"; | ||
2163 | type = "gem"; | ||
2164 | }; | ||
2165 | version = "0.4.3"; | ||
2166 | }; | ||
2167 | rails-assets-markdown-it-sub = { | ||
2168 | platforms = []; | ||
2169 | source = { | ||
2170 | remotes = ["https://rails-assets.org"]; | ||
2171 | sha256 = "08hjij5fqvhvg7s27n4g8qqsks974g3kc5k7xl2qmh41k7f4hcrk"; | ||
2172 | type = "gem"; | ||
2173 | }; | ||
2174 | version = "1.0.0"; | ||
2175 | }; | ||
2176 | rails-assets-markdown-it-sup = { | ||
2177 | platforms = []; | ||
2178 | source = { | ||
2179 | remotes = ["https://rails-assets.org"]; | ||
2180 | sha256 = "17nnnvky7zy0yiwwl6dm8ibbkyvvf63xfp3snch4dzmras05lmig"; | ||
2181 | type = "gem"; | ||
2182 | }; | ||
2183 | version = "1.0.0"; | ||
2184 | }; | ||
2185 | rails-assets-underscore = { | ||
2186 | platforms = []; | ||
2187 | source = { | ||
2188 | remotes = ["https://rails-assets.org"]; | ||
2189 | sha256 = "1ccnzj7aqrvngcs915y290pijryqmjygimdwlrykpyj8vwzifdnc"; | ||
2190 | type = "gem"; | ||
2191 | }; | ||
2192 | version = "1.9.1"; | ||
2193 | }; | ||
2194 | rails-assets-utatti-perfect-scrollbar = { | ||
2195 | platforms = []; | ||
2196 | source = { | ||
2197 | remotes = ["https://rails-assets.org"]; | ||
2198 | sha256 = "0m8syfv8p5bnwm8nrba6mpjnhrd29ffwzi6awhiw537jqw42b12v"; | ||
2199 | type = "gem"; | ||
2200 | }; | ||
2201 | version = "1.4.0"; | ||
2202 | }; | ||
2203 | rails-controller-testing = { | ||
2204 | dependencies = ["actionpack" "actionview" "activesupport"]; | ||
2205 | platforms = []; | ||
2206 | source = { | ||
2207 | remotes = ["https://rubygems.org"]; | ||
2208 | sha256 = "16kdkk73mhhs73iz3i1i0ryjm84dadiyh817b3nh8acdi490jyhy"; | ||
2209 | type = "gem"; | ||
2210 | }; | ||
2211 | version = "1.0.2"; | ||
2212 | }; | ||
2213 | rails-dom-testing = { | ||
2214 | dependencies = ["activesupport" "nokogiri"]; | ||
2215 | platforms = []; | ||
2216 | source = { | ||
2217 | remotes = ["https://rubygems.org"]; | ||
2218 | sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i"; | ||
2219 | type = "gem"; | ||
2220 | }; | ||
2221 | version = "2.0.3"; | ||
2222 | }; | ||
2223 | rails-html-sanitizer = { | ||
2224 | dependencies = ["loofah"]; | ||
2225 | platforms = []; | ||
2226 | source = { | ||
2227 | remotes = ["https://rubygems.org"]; | ||
2228 | sha256 = "1gv7vr5d9g2xmgpjfq4nxsqr70r9pr042r9ycqqnfvw5cz9c7jwr"; | ||
2229 | type = "gem"; | ||
2230 | }; | ||
2231 | version = "1.0.4"; | ||
2232 | }; | ||
2233 | rails-i18n = { | ||
2234 | dependencies = ["i18n" "railties"]; | ||
2235 | platforms = []; | ||
2236 | source = { | ||
2237 | remotes = ["https://rubygems.org"]; | ||
2238 | sha256 = "05lkhc737a9dw0hd5ljmja0yp4cw39r3200s1r0n4bs7z1g3ka7l"; | ||
2239 | type = "gem"; | ||
2240 | }; | ||
2241 | version = "5.1.2"; | ||
2242 | }; | ||
2243 | rails-timeago = { | ||
2244 | dependencies = ["actionpack" "activesupport"]; | ||
2245 | platforms = []; | ||
2246 | source = { | ||
2247 | remotes = ["https://rubygems.org"]; | ||
2248 | sha256 = "01x1vs9hni9wn8dc4fmyqzkrn651chzsi2mhmk0pxdrfx9md0lxv"; | ||
2249 | type = "gem"; | ||
2250 | }; | ||
2251 | version = "2.16.0"; | ||
2252 | }; | ||
2253 | railties = { | ||
2254 | dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"]; | ||
2255 | platforms = []; | ||
2256 | source = { | ||
2257 | remotes = ["https://rubygems.org"]; | ||
2258 | sha256 = "0ycy2gdaj0px1vfaghskvl6qkczwaigrli2zxn54w7zn1z29faj8"; | ||
2259 | type = "gem"; | ||
2260 | }; | ||
2261 | version = "5.1.6"; | ||
2262 | }; | ||
2263 | rainbow = { | ||
2264 | dependencies = ["rake"]; | ||
2265 | platforms = []; | ||
2266 | source = { | ||
2267 | remotes = ["https://rubygems.org"]; | ||
2268 | sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w"; | ||
2269 | type = "gem"; | ||
2270 | }; | ||
2271 | version = "2.2.2"; | ||
2272 | }; | ||
2273 | raindrops = { | ||
2274 | platforms = []; | ||
2275 | source = { | ||
2276 | remotes = ["https://rubygems.org"]; | ||
2277 | sha256 = "1qpbd9jif40c53fz2r0l8khfl016y8s8bkx37ibcaafclbl3xygp"; | ||
2278 | type = "gem"; | ||
2279 | }; | ||
2280 | version = "0.19.0"; | ||
2281 | }; | ||
2282 | rake = { | ||
2283 | platforms = []; | ||
2284 | source = { | ||
2285 | remotes = ["https://rubygems.org"]; | ||
2286 | sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg"; | ||
2287 | type = "gem"; | ||
2288 | }; | ||
2289 | version = "12.3.1"; | ||
2290 | }; | ||
2291 | rb-fsevent = { | ||
2292 | platforms = []; | ||
2293 | source = { | ||
2294 | remotes = ["https://rubygems.org"]; | ||
2295 | sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8"; | ||
2296 | type = "gem"; | ||
2297 | }; | ||
2298 | version = "0.10.3"; | ||
2299 | }; | ||
2300 | rb-inotify = { | ||
2301 | dependencies = ["ffi"]; | ||
2302 | platforms = []; | ||
2303 | source = { | ||
2304 | remotes = ["https://rubygems.org"]; | ||
2305 | sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71"; | ||
2306 | type = "gem"; | ||
2307 | }; | ||
2308 | version = "0.9.10"; | ||
2309 | }; | ||
2310 | redcarpet = { | ||
2311 | platforms = []; | ||
2312 | source = { | ||
2313 | remotes = ["https://rubygems.org"]; | ||
2314 | sha256 = "0h9qz2hik4s9knpmbwrzb3jcp3vc5vygp9ya8lcpl7f1l9khmcd7"; | ||
2315 | type = "gem"; | ||
2316 | }; | ||
2317 | version = "3.4.0"; | ||
2318 | }; | ||
2319 | redis = { | ||
2320 | platforms = []; | ||
2321 | source = { | ||
2322 | remotes = ["https://rubygems.org"]; | ||
2323 | sha256 = "0i415x8gi0c5vsiy6ikvx5js6fhc4x80a5lqv8iidy2iymd20irv"; | ||
2324 | type = "gem"; | ||
2325 | }; | ||
2326 | version = "3.3.5"; | ||
2327 | }; | ||
2328 | regexp_parser = { | ||
2329 | platforms = []; | ||
2330 | source = { | ||
2331 | remotes = ["https://rubygems.org"]; | ||
2332 | sha256 = "18g5jyg3blsdrz3mc8d87bms6qqn6gcdh1nvdhvgbjdpk9pw21dq"; | ||
2333 | type = "gem"; | ||
2334 | }; | ||
2335 | version = "1.3.0"; | ||
2336 | }; | ||
2337 | request_store = { | ||
2338 | dependencies = ["rack"]; | ||
2339 | platforms = []; | ||
2340 | source = { | ||
2341 | remotes = ["https://rubygems.org"]; | ||
2342 | sha256 = "1963330z03fk382fi8y231ygcbnh86m91dqlp5rh1mwy9ihzzl6d"; | ||
2343 | type = "gem"; | ||
2344 | }; | ||
2345 | version = "1.4.1"; | ||
2346 | }; | ||
2347 | responders = { | ||
2348 | dependencies = ["actionpack" "railties"]; | ||
2349 | platforms = []; | ||
2350 | source = { | ||
2351 | remotes = ["https://rubygems.org"]; | ||
2352 | sha256 = "1rhdyyvvm26f2l3fgwdp6xasfl2y0whwgy766bhdwz697mf78zfn"; | ||
2353 | type = "gem"; | ||
2354 | }; | ||
2355 | version = "2.4.0"; | ||
2356 | }; | ||
2357 | rspec = { | ||
2358 | dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; | ||
2359 | platforms = []; | ||
2360 | source = { | ||
2361 | remotes = ["https://rubygems.org"]; | ||
2362 | sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3"; | ||
2363 | type = "gem"; | ||
2364 | }; | ||
2365 | version = "3.8.0"; | ||
2366 | }; | ||
2367 | rspec-core = { | ||
2368 | dependencies = ["rspec-support"]; | ||
2369 | platforms = []; | ||
2370 | source = { | ||
2371 | remotes = ["https://rubygems.org"]; | ||
2372 | sha256 = "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p"; | ||
2373 | type = "gem"; | ||
2374 | }; | ||
2375 | version = "3.8.0"; | ||
2376 | }; | ||
2377 | rspec-expectations = { | ||
2378 | dependencies = ["diff-lcs" "rspec-support"]; | ||
2379 | platforms = []; | ||
2380 | source = { | ||
2381 | remotes = ["https://rubygems.org"]; | ||
2382 | sha256 = "18l21hy1zdc2pgc2yb17k3n2al1khpfr0z6pijlm852iz6vj0dkm"; | ||
2383 | type = "gem"; | ||
2384 | }; | ||
2385 | version = "3.8.2"; | ||
2386 | }; | ||
2387 | rspec-json_expectations = { | ||
2388 | platforms = []; | ||
2389 | source = { | ||
2390 | remotes = ["https://rubygems.org"]; | ||
2391 | sha256 = "0l3dhvkb95zwyg72wz33azxigc9cisqgg3z16ksns1sx0b93nnbn"; | ||
2392 | type = "gem"; | ||
2393 | }; | ||
2394 | version = "2.1.0"; | ||
2395 | }; | ||
2396 | rspec-mocks = { | ||
2397 | dependencies = ["diff-lcs" "rspec-support"]; | ||
2398 | platforms = []; | ||
2399 | source = { | ||
2400 | remotes = ["https://rubygems.org"]; | ||
2401 | sha256 = "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp"; | ||
2402 | type = "gem"; | ||
2403 | }; | ||
2404 | version = "3.8.0"; | ||
2405 | }; | ||
2406 | rspec-rails = { | ||
2407 | dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"]; | ||
2408 | platforms = []; | ||
2409 | source = { | ||
2410 | remotes = ["https://rubygems.org"]; | ||
2411 | sha256 = "0sqj5da2kc937j5jb18jcf0hrmmzwgj7pk62j0q3qndhc2kvx88p"; | ||
2412 | type = "gem"; | ||
2413 | }; | ||
2414 | version = "3.8.1"; | ||
2415 | }; | ||
2416 | rspec-support = { | ||
2417 | platforms = []; | ||
2418 | source = { | ||
2419 | remotes = ["https://rubygems.org"]; | ||
2420 | sha256 = "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609"; | ||
2421 | type = "gem"; | ||
2422 | }; | ||
2423 | version = "3.8.0"; | ||
2424 | }; | ||
2425 | rubocop = { | ||
2426 | dependencies = ["jaro_winkler" "parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"]; | ||
2427 | platforms = []; | ||
2428 | source = { | ||
2429 | remotes = ["https://rubygems.org"]; | ||
2430 | sha256 = "1ivk049z3mp12nc6v1wn35bsq1g7nz1i2r4xwzqf0v25hm2v7n1i"; | ||
2431 | type = "gem"; | ||
2432 | }; | ||
2433 | version = "0.60.0"; | ||
2434 | }; | ||
2435 | ruby-oembed = { | ||
2436 | platforms = []; | ||
2437 | source = { | ||
2438 | remotes = ["https://rubygems.org"]; | ||
2439 | sha256 = "1kw4aplb3m13z3kchhb79wf87qb3prn1m99s6vl5cyp0xqwyymv0"; | ||
2440 | type = "gem"; | ||
2441 | }; | ||
2442 | version = "0.12.0"; | ||
2443 | }; | ||
2444 | ruby-progressbar = { | ||
2445 | platforms = []; | ||
2446 | source = { | ||
2447 | remotes = ["https://rubygems.org"]; | ||
2448 | sha256 = "1cv2ym3rl09svw8940ny67bav7b2db4ms39i4raaqzkf59jmhglk"; | ||
2449 | type = "gem"; | ||
2450 | }; | ||
2451 | version = "1.10.0"; | ||
2452 | }; | ||
2453 | ruby_dep = { | ||
2454 | platforms = []; | ||
2455 | source = { | ||
2456 | remotes = ["https://rubygems.org"]; | ||
2457 | sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5"; | ||
2458 | type = "gem"; | ||
2459 | }; | ||
2460 | version = "1.5.0"; | ||
2461 | }; | ||
2462 | rubyzip = { | ||
2463 | platforms = []; | ||
2464 | source = { | ||
2465 | remotes = ["https://rubygems.org"]; | ||
2466 | sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj"; | ||
2467 | type = "gem"; | ||
2468 | }; | ||
2469 | version = "1.2.2"; | ||
2470 | }; | ||
2471 | rugged = { | ||
2472 | platforms = []; | ||
2473 | source = { | ||
2474 | remotes = ["https://rubygems.org"]; | ||
2475 | sha256 = "1jv4nw9hvlxp8hhhlllrfcznki82i50fp1sj65zsjllfl2bvz8x6"; | ||
2476 | type = "gem"; | ||
2477 | }; | ||
2478 | version = "0.27.5"; | ||
2479 | }; | ||
2480 | safe_yaml = { | ||
2481 | platforms = []; | ||
2482 | source = { | ||
2483 | remotes = ["https://rubygems.org"]; | ||
2484 | sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094"; | ||
2485 | type = "gem"; | ||
2486 | }; | ||
2487 | version = "1.0.4"; | ||
2488 | }; | ||
2489 | sass = { | ||
2490 | platforms = []; | ||
2491 | source = { | ||
2492 | remotes = ["https://rubygems.org"]; | ||
2493 | sha256 = "0kfpcwh8dgw4lc81qglkvjl73689jy3g7196zkxm4fpskg1p5lkw"; | ||
2494 | type = "gem"; | ||
2495 | }; | ||
2496 | version = "3.4.25"; | ||
2497 | }; | ||
2498 | sass-rails = { | ||
2499 | dependencies = ["railties" "sass" "sprockets" "sprockets-rails" "tilt"]; | ||
2500 | platforms = []; | ||
2501 | source = { | ||
2502 | remotes = ["https://rubygems.org"]; | ||
2503 | sha256 = "1wa63sbsimrsf7nfm8h0m1wbsllkfxvd7naph5d1j6pbc555ma7s"; | ||
2504 | type = "gem"; | ||
2505 | }; | ||
2506 | version = "5.0.7"; | ||
2507 | }; | ||
2508 | sawyer = { | ||
2509 | dependencies = ["addressable" "faraday"]; | ||
2510 | platforms = []; | ||
2511 | source = { | ||
2512 | remotes = ["https://rubygems.org"]; | ||
2513 | sha256 = "0sv1463r7bqzvx4drqdmd36m7rrv6sf1v3c6vswpnq3k6vdw2dvd"; | ||
2514 | type = "gem"; | ||
2515 | }; | ||
2516 | version = "0.8.1"; | ||
2517 | }; | ||
2518 | scss_lint = { | ||
2519 | dependencies = ["rake" "sass"]; | ||
2520 | platforms = []; | ||
2521 | source = { | ||
2522 | remotes = ["https://rubygems.org"]; | ||
2523 | sha256 = "11rl8kj32p34mqlkhxvlwfrwl8gdl0iha8q9xsrr3sjxjagzv8yp"; | ||
2524 | type = "gem"; | ||
2525 | }; | ||
2526 | version = "0.55.0"; | ||
2527 | }; | ||
2528 | secure_headers = { | ||
2529 | platforms = []; | ||
2530 | source = { | ||
2531 | remotes = ["https://rubygems.org"]; | ||
2532 | sha256 = "17cxci8jyvlgssix0cy7kbm5m2h7s8ym9caj8nilrbd21jis9pc5"; | ||
2533 | type = "gem"; | ||
2534 | }; | ||
2535 | version = "6.0.0"; | ||
2536 | }; | ||
2537 | shellany = { | ||
2538 | platforms = []; | ||
2539 | source = { | ||
2540 | remotes = ["https://rubygems.org"]; | ||
2541 | sha256 = "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf"; | ||
2542 | type = "gem"; | ||
2543 | }; | ||
2544 | version = "0.0.1"; | ||
2545 | }; | ||
2546 | shoulda-matchers = { | ||
2547 | dependencies = ["activesupport"]; | ||
2548 | platforms = []; | ||
2549 | source = { | ||
2550 | remotes = ["https://rubygems.org"]; | ||
2551 | sha256 = "1zvv94pqk5b5my3w1shdz7h34xf2ldhg5k4qfdpbwi2iy0j9zw2a"; | ||
2552 | type = "gem"; | ||
2553 | }; | ||
2554 | version = "3.1.2"; | ||
2555 | }; | ||
2556 | sidekiq = { | ||
2557 | dependencies = ["connection_pool" "rack-protection" "redis"]; | ||
2558 | platforms = []; | ||
2559 | source = { | ||
2560 | remotes = ["https://rubygems.org"]; | ||
2561 | sha256 = "1zyf9y3rvzizbwh68i2g1lzd40lalrdc4iyjmaa74gnfwsf92i26"; | ||
2562 | type = "gem"; | ||
2563 | }; | ||
2564 | version = "5.2.3"; | ||
2565 | }; | ||
2566 | sidekiq-cron = { | ||
2567 | dependencies = ["fugit" "sidekiq"]; | ||
2568 | platforms = []; | ||
2569 | source = { | ||
2570 | remotes = ["https://rubygems.org"]; | ||
2571 | sha256 = "1aliswahmpxn1ib2brn4126gk97ac3zdnwr71mn8vzbr3vdd7fl0"; | ||
2572 | type = "gem"; | ||
2573 | }; | ||
2574 | version = "1.0.4"; | ||
2575 | }; | ||
2576 | simple_captcha2 = { | ||
2577 | dependencies = ["rails"]; | ||
2578 | platforms = []; | ||
2579 | source = { | ||
2580 | remotes = ["https://rubygems.org"]; | ||
2581 | sha256 = "0vdjydym8sjpa8c1q0n2hanj3n9vzi4ycdw2p6bbm6qqmm1f3fq3"; | ||
2582 | type = "gem"; | ||
2583 | }; | ||
2584 | version = "0.4.3"; | ||
2585 | }; | ||
2586 | simple_oauth = { | ||
2587 | platforms = []; | ||
2588 | source = { | ||
2589 | remotes = ["https://rubygems.org"]; | ||
2590 | sha256 = "0dw9ii6m7wckml100xhjc6vxpjcry174lbi9jz5v7ibjr3i94y8l"; | ||
2591 | type = "gem"; | ||
2592 | }; | ||
2593 | version = "0.3.1"; | ||
2594 | }; | ||
2595 | simplecov = { | ||
2596 | dependencies = ["docile" "json" "simplecov-html"]; | ||
2597 | platforms = []; | ||
2598 | source = { | ||
2599 | remotes = ["https://rubygems.org"]; | ||
2600 | sha256 = "1sfyfgf7zrp2n42v7rswkqgk3bbwk1bnsphm24y7laxv3f8z0947"; | ||
2601 | type = "gem"; | ||
2602 | }; | ||
2603 | version = "0.16.1"; | ||
2604 | }; | ||
2605 | simplecov-html = { | ||
2606 | platforms = []; | ||
2607 | source = { | ||
2608 | remotes = ["https://rubygems.org"]; | ||
2609 | sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn"; | ||
2610 | type = "gem"; | ||
2611 | }; | ||
2612 | version = "0.10.2"; | ||
2613 | }; | ||
2614 | sinon-rails = { | ||
2615 | dependencies = ["railties"]; | ||
2616 | platforms = []; | ||
2617 | source = { | ||
2618 | remotes = ["https://rubygems.org"]; | ||
2619 | sha256 = "1b7996hb8vfky29b0zcql90x8i6vhdg2zy9nfzmhh820gjv3kggb"; | ||
2620 | type = "gem"; | ||
2621 | }; | ||
2622 | version = "1.15.0"; | ||
2623 | }; | ||
2624 | spring = { | ||
2625 | dependencies = ["activesupport"]; | ||
2626 | platforms = []; | ||
2627 | source = { | ||
2628 | remotes = ["https://rubygems.org"]; | ||
2629 | sha256 = "168yz9c1fv21wc5i8q7n43b9nk33ivg3ws1fn6x0afgryz3ssx75"; | ||
2630 | type = "gem"; | ||
2631 | }; | ||
2632 | version = "2.0.2"; | ||
2633 | }; | ||
2634 | spring-commands-cucumber = { | ||
2635 | dependencies = ["spring"]; | ||
2636 | platforms = []; | ||
2637 | source = { | ||
2638 | remotes = ["https://rubygems.org"]; | ||
2639 | sha256 = "0mw81gvms2svn4k4pc6ly7smkmf0j9r2xbf0d38vygbyhiwd1c9a"; | ||
2640 | type = "gem"; | ||
2641 | }; | ||
2642 | version = "1.0.1"; | ||
2643 | }; | ||
2644 | spring-commands-rspec = { | ||
2645 | dependencies = ["spring"]; | ||
2646 | platforms = []; | ||
2647 | source = { | ||
2648 | remotes = ["https://rubygems.org"]; | ||
2649 | sha256 = "0b0svpq3md1pjz5drpa5pxwg8nk48wrshq8lckim4x3nli7ya0k2"; | ||
2650 | type = "gem"; | ||
2651 | }; | ||
2652 | version = "1.0.4"; | ||
2653 | }; | ||
2654 | sprockets = { | ||
2655 | dependencies = ["concurrent-ruby" "rack"]; | ||
2656 | platforms = []; | ||
2657 | source = { | ||
2658 | remotes = ["https://rubygems.org"]; | ||
2659 | sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay"; | ||
2660 | type = "gem"; | ||
2661 | }; | ||
2662 | version = "3.7.2"; | ||
2663 | }; | ||
2664 | sprockets-rails = { | ||
2665 | dependencies = ["actionpack" "activesupport" "sprockets"]; | ||
2666 | platforms = []; | ||
2667 | source = { | ||
2668 | remotes = ["https://rubygems.org"]; | ||
2669 | sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1"; | ||
2670 | type = "gem"; | ||
2671 | }; | ||
2672 | version = "3.2.1"; | ||
2673 | }; | ||
2674 | state_machines = { | ||
2675 | platforms = []; | ||
2676 | source = { | ||
2677 | remotes = ["https://rubygems.org"]; | ||
2678 | sha256 = "00mi16hg3rhkxz4y58s173cbnjlba41y9bfcim90p4ja6yfj9ri3"; | ||
2679 | type = "gem"; | ||
2680 | }; | ||
2681 | version = "0.5.0"; | ||
2682 | }; | ||
2683 | string-direction = { | ||
2684 | platforms = []; | ||
2685 | source = { | ||
2686 | remotes = ["https://rubygems.org"]; | ||
2687 | sha256 = "0iyddwmkj425c6xbn5pmlr2yzwcq4snzlan7rky5b1yp2pvf70jj"; | ||
2688 | type = "gem"; | ||
2689 | }; | ||
2690 | version = "1.2.1"; | ||
2691 | }; | ||
2692 | swd = { | ||
2693 | dependencies = ["activesupport" "attr_required" "httpclient"]; | ||
2694 | platforms = []; | ||
2695 | source = { | ||
2696 | remotes = ["https://rubygems.org"]; | ||
2697 | sha256 = "1s2vjb6f13za7p1iycl2p73d3p202xa6xny9fjrp8ynwsqix7lyd"; | ||
2698 | type = "gem"; | ||
2699 | }; | ||
2700 | version = "1.1.2"; | ||
2701 | }; | ||
2702 | sysexits = { | ||
2703 | platforms = []; | ||
2704 | source = { | ||
2705 | remotes = ["https://rubygems.org"]; | ||
2706 | sha256 = "0qjng6pllznmprzx8vb0zg0c86hdrkyjs615q41s9fjpmv2430jr"; | ||
2707 | type = "gem"; | ||
2708 | }; | ||
2709 | version = "1.2.0"; | ||
2710 | }; | ||
2711 | systemu = { | ||
2712 | platforms = []; | ||
2713 | source = { | ||
2714 | remotes = ["https://rubygems.org"]; | ||
2715 | sha256 = "0gmkbakhfci5wnmbfx5i54f25j9zsvbw858yg3jjhfs5n4ad1xq1"; | ||
2716 | type = "gem"; | ||
2717 | }; | ||
2718 | version = "2.6.5"; | ||
2719 | }; | ||
2720 | temple = { | ||
2721 | platforms = []; | ||
2722 | source = { | ||
2723 | remotes = ["https://rubygems.org"]; | ||
2724 | sha256 = "00nxf610nzi4n1i2lkby43nrnarvl89fcl6lg19406msr0k3ycmq"; | ||
2725 | type = "gem"; | ||
2726 | }; | ||
2727 | version = "0.8.0"; | ||
2728 | }; | ||
2729 | term-ansicolor = { | ||
2730 | dependencies = ["tins"]; | ||
2731 | platforms = []; | ||
2732 | source = { | ||
2733 | remotes = ["https://rubygems.org"]; | ||
2734 | sha256 = "079hbagd9mk0839rkajsdrbzkn992gj8ah2n45qd64v25ml27i6d"; | ||
2735 | type = "gem"; | ||
2736 | }; | ||
2737 | version = "1.7.0"; | ||
2738 | }; | ||
2739 | terminal-table = { | ||
2740 | dependencies = ["unicode-display_width"]; | ||
2741 | platforms = []; | ||
2742 | source = { | ||
2743 | remotes = ["https://rubygems.org"]; | ||
2744 | sha256 = "1512cngw35hsmhvw4c05rscihc59mnj09m249sm9p3pik831ydqk"; | ||
2745 | type = "gem"; | ||
2746 | }; | ||
2747 | version = "1.8.0"; | ||
2748 | }; | ||
2749 | thor = { | ||
2750 | platforms = []; | ||
2751 | source = { | ||
2752 | remotes = ["https://rubygems.org"]; | ||
2753 | sha256 = "01n5dv9kql60m6a00zc0r66jvaxx98qhdny3klyj0p3w34pad2ns"; | ||
2754 | type = "gem"; | ||
2755 | }; | ||
2756 | version = "0.19.4"; | ||
2757 | }; | ||
2758 | thread_safe = { | ||
2759 | platforms = []; | ||
2760 | source = { | ||
2761 | remotes = ["https://rubygems.org"]; | ||
2762 | sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy"; | ||
2763 | type = "gem"; | ||
2764 | }; | ||
2765 | version = "0.3.6"; | ||
2766 | }; | ||
2767 | tilt = { | ||
2768 | platforms = []; | ||
2769 | source = { | ||
2770 | remotes = ["https://rubygems.org"]; | ||
2771 | sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra"; | ||
2772 | type = "gem"; | ||
2773 | }; | ||
2774 | version = "2.0.8"; | ||
2775 | }; | ||
2776 | timecop = { | ||
2777 | platforms = []; | ||
2778 | source = { | ||
2779 | remotes = ["https://rubygems.org"]; | ||
2780 | sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp"; | ||
2781 | type = "gem"; | ||
2782 | }; | ||
2783 | version = "0.9.1"; | ||
2784 | }; | ||
2785 | timers = { | ||
2786 | platforms = []; | ||
2787 | source = { | ||
2788 | remotes = ["https://rubygems.org"]; | ||
2789 | sha256 = "04zbs9wyzajn7g9xfgg2zqz5kzf0qa7jgh4hgry4pfcxfmlnwdwx"; | ||
2790 | type = "gem"; | ||
2791 | }; | ||
2792 | version = "4.2.0"; | ||
2793 | }; | ||
2794 | tins = { | ||
2795 | platforms = []; | ||
2796 | source = { | ||
2797 | remotes = ["https://rubygems.org"]; | ||
2798 | sha256 = "1pqj45n216zrz7yckdbdknlmhh187iqzx8fp76y2h0jrgqjfkxmj"; | ||
2799 | type = "gem"; | ||
2800 | }; | ||
2801 | version = "1.20.2"; | ||
2802 | }; | ||
2803 | to_regexp = { | ||
2804 | platforms = []; | ||
2805 | source = { | ||
2806 | remotes = ["https://rubygems.org"]; | ||
2807 | sha256 = "1rgabfhnql6l4fx09mmj5d0vza924iczqf2blmn82l782b6qqi9v"; | ||
2808 | type = "gem"; | ||
2809 | }; | ||
2810 | version = "0.2.1"; | ||
2811 | }; | ||
2812 | turbo_dev_assets = { | ||
2813 | platforms = []; | ||
2814 | source = { | ||
2815 | remotes = ["https://rubygems.org"]; | ||
2816 | sha256 = "08yp7gpishjfj8b7d61hxs677288ycv6yg78a7hfzn631gxczipx"; | ||
2817 | type = "gem"; | ||
2818 | }; | ||
2819 | version = "0.0.2"; | ||
2820 | }; | ||
2821 | twitter = { | ||
2822 | dependencies = ["addressable" "buftok" "equalizer" "http" "http-form_data" "http_parser.rb" "memoizable" "multipart-post" "naught" "simple_oauth"]; | ||
2823 | platforms = []; | ||
2824 | source = { | ||
2825 | remotes = ["https://rubygems.org"]; | ||
2826 | sha256 = "0fjyz3viabz3xs5d9aad18zgdbhfwm51jsnzigc8kxk77p1x58n5"; | ||
2827 | type = "gem"; | ||
2828 | }; | ||
2829 | version = "6.2.0"; | ||
2830 | }; | ||
2831 | twitter-text = { | ||
2832 | dependencies = ["unf"]; | ||
2833 | platforms = []; | ||
2834 | source = { | ||
2835 | remotes = ["https://rubygems.org"]; | ||
2836 | sha256 = "1732h7hy1k152w8wfvjsx7b79alk45i5imwd37ia4qcx8hfm3gvg"; | ||
2837 | type = "gem"; | ||
2838 | }; | ||
2839 | version = "1.14.7"; | ||
2840 | }; | ||
2841 | typhoeus = { | ||
2842 | dependencies = ["ethon"]; | ||
2843 | platforms = []; | ||
2844 | source = { | ||
2845 | remotes = ["https://rubygems.org"]; | ||
2846 | sha256 = "0cni8b1idcp0dk8kybmxydadhfpaj3lbs99w5kjibv8bsmip2zi5"; | ||
2847 | type = "gem"; | ||
2848 | }; | ||
2849 | version = "1.3.1"; | ||
2850 | }; | ||
2851 | tzinfo = { | ||
2852 | dependencies = ["thread_safe"]; | ||
2853 | platforms = []; | ||
2854 | source = { | ||
2855 | remotes = ["https://rubygems.org"]; | ||
2856 | sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z"; | ||
2857 | type = "gem"; | ||
2858 | }; | ||
2859 | version = "1.2.5"; | ||
2860 | }; | ||
2861 | uglifier = { | ||
2862 | dependencies = ["execjs"]; | ||
2863 | platforms = []; | ||
2864 | source = { | ||
2865 | remotes = ["https://rubygems.org"]; | ||
2866 | sha256 = "1g203kly5wp4qlkc7371skyvyin6iinc8i0p5wrpiqgblqxxgcf1"; | ||
2867 | type = "gem"; | ||
2868 | }; | ||
2869 | version = "4.1.19"; | ||
2870 | }; | ||
2871 | unf = { | ||
2872 | dependencies = ["unf_ext"]; | ||
2873 | platforms = []; | ||
2874 | source = { | ||
2875 | remotes = ["https://rubygems.org"]; | ||
2876 | sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9"; | ||
2877 | type = "gem"; | ||
2878 | }; | ||
2879 | version = "0.1.4"; | ||
2880 | }; | ||
2881 | unf_ext = { | ||
2882 | platforms = []; | ||
2883 | source = { | ||
2884 | remotes = ["https://rubygems.org"]; | ||
2885 | sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1"; | ||
2886 | type = "gem"; | ||
2887 | }; | ||
2888 | version = "0.0.7.5"; | ||
2889 | }; | ||
2890 | unicode-display_width = { | ||
2891 | platforms = []; | ||
2892 | source = { | ||
2893 | remotes = ["https://rubygems.org"]; | ||
2894 | sha256 = "0040bsdpcmvp8w31lqi2s9s4p4h031zv52401qidmh25cgyh4a57"; | ||
2895 | type = "gem"; | ||
2896 | }; | ||
2897 | version = "1.4.0"; | ||
2898 | }; | ||
2899 | unicorn = { | ||
2900 | dependencies = ["kgio" "raindrops"]; | ||
2901 | platforms = []; | ||
2902 | source = { | ||
2903 | remotes = ["https://rubygems.org"]; | ||
2904 | sha256 = "1qfhvzs4i6ja1s43j8p1kfbzm10n7a02ngki30a38y5m46a2qrak"; | ||
2905 | type = "gem"; | ||
2906 | }; | ||
2907 | version = "5.4.1"; | ||
2908 | }; | ||
2909 | unicorn-worker-killer = { | ||
2910 | dependencies = ["get_process_mem" "unicorn"]; | ||
2911 | platforms = []; | ||
2912 | source = { | ||
2913 | remotes = ["https://rubygems.org"]; | ||
2914 | sha256 = "0rrdxpwdsapx47axjin8ymxb4f685qlpx8a26bql4ay1559c3gva"; | ||
2915 | type = "gem"; | ||
2916 | }; | ||
2917 | version = "0.4.4"; | ||
2918 | }; | ||
2919 | uuid = { | ||
2920 | dependencies = ["macaddr"]; | ||
2921 | platforms = []; | ||
2922 | source = { | ||
2923 | remotes = ["https://rubygems.org"]; | ||
2924 | sha256 = "1mr405vg4ccnndkyf7pb49gp1fha8i6gj7iwq43nxkak41cwzh5f"; | ||
2925 | type = "gem"; | ||
2926 | }; | ||
2927 | version = "2.3.9"; | ||
2928 | }; | ||
2929 | valid = { | ||
2930 | platforms = []; | ||
2931 | source = { | ||
2932 | remotes = ["https://rubygems.org"]; | ||
2933 | sha256 = "0vxrgik9gxyh5j2w16nz5azjk0cbzmvv883hq9pvxm9anfbbj8d3"; | ||
2934 | type = "gem"; | ||
2935 | }; | ||
2936 | version = "1.2.0"; | ||
2937 | }; | ||
2938 | validate_email = { | ||
2939 | dependencies = ["activemodel" "mail"]; | ||
2940 | platforms = []; | ||
2941 | source = { | ||
2942 | remotes = ["https://rubygems.org"]; | ||
2943 | sha256 = "1r1fz29l699arka177c9xw7409d1a3ff95bf7a6pmc97slb91zlx"; | ||
2944 | type = "gem"; | ||
2945 | }; | ||
2946 | version = "0.1.6"; | ||
2947 | }; | ||
2948 | validate_url = { | ||
2949 | dependencies = ["activemodel" "addressable"]; | ||
2950 | platforms = []; | ||
2951 | source = { | ||
2952 | remotes = ["https://rubygems.org"]; | ||
2953 | sha256 = "1df4gch8dizimpbl185vfgw95yb8ffr6zwj6whzbxfil95c3f2qh"; | ||
2954 | type = "gem"; | ||
2955 | }; | ||
2956 | version = "1.0.2"; | ||
2957 | }; | ||
2958 | versionist = { | ||
2959 | dependencies = ["activesupport" "railties" "yard"]; | ||
2960 | platforms = []; | ||
2961 | source = { | ||
2962 | remotes = ["https://rubygems.org"]; | ||
2963 | sha256 = "1p8wizg6jml7gz1qiqk7d77hy0w5650g812jhgd0zzkwwdmzm38m"; | ||
2964 | type = "gem"; | ||
2965 | }; | ||
2966 | version = "1.7.0"; | ||
2967 | }; | ||
2968 | warden = { | ||
2969 | dependencies = ["rack"]; | ||
2970 | platforms = []; | ||
2971 | source = { | ||
2972 | remotes = ["https://rubygems.org"]; | ||
2973 | sha256 = "1fr9n9i9r82xb6i61fdw4xgc7zjv7fsdrr4k0njchy87iw9fl454"; | ||
2974 | type = "gem"; | ||
2975 | }; | ||
2976 | version = "1.2.8"; | ||
2977 | }; | ||
2978 | webfinger = { | ||
2979 | dependencies = ["activesupport" "httpclient"]; | ||
2980 | platforms = []; | ||
2981 | source = { | ||
2982 | remotes = ["https://rubygems.org"]; | ||
2983 | sha256 = "0m0jh8k7c0ifh2jhbn7ihqrmn5fi754wflva97zgy70hpdvxyjar"; | ||
2984 | type = "gem"; | ||
2985 | }; | ||
2986 | version = "1.1.0"; | ||
2987 | }; | ||
2988 | webmock = { | ||
2989 | dependencies = ["addressable" "crack" "hashdiff"]; | ||
2990 | platforms = []; | ||
2991 | source = { | ||
2992 | remotes = ["https://rubygems.org"]; | ||
2993 | sha256 = "03994dxs4xayvkxqp01dd1ivhg4xxx7z35f7cxw7y2mwj3xn24ib"; | ||
2994 | type = "gem"; | ||
2995 | }; | ||
2996 | version = "3.4.2"; | ||
2997 | }; | ||
2998 | websocket-driver = { | ||
2999 | dependencies = ["websocket-extensions"]; | ||
3000 | platforms = []; | ||
3001 | source = { | ||
3002 | remotes = ["https://rubygems.org"]; | ||
3003 | sha256 = "1943442yllhldh9dbp374x2q39cxa49xrm28nb78b7mfbv3y195l"; | ||
3004 | type = "gem"; | ||
3005 | }; | ||
3006 | version = "0.6.5"; | ||
3007 | }; | ||
3008 | websocket-extensions = { | ||
3009 | platforms = []; | ||
3010 | source = { | ||
3011 | remotes = ["https://rubygems.org"]; | ||
3012 | sha256 = "034sdr7fd34yag5l6y156rkbhiqgmy395m231dwhlpcswhs6d270"; | ||
3013 | type = "gem"; | ||
3014 | }; | ||
3015 | version = "0.1.3"; | ||
3016 | }; | ||
3017 | will_paginate = { | ||
3018 | platforms = []; | ||
3019 | source = { | ||
3020 | remotes = ["https://rubygems.org"]; | ||
3021 | sha256 = "0ihf15yaj8883ddhkxq7q60zrg3zfsvqaf5853gybhcg18zq8bn9"; | ||
3022 | type = "gem"; | ||
3023 | }; | ||
3024 | version = "3.1.6"; | ||
3025 | }; | ||
3026 | xpath = { | ||
3027 | dependencies = ["nokogiri"]; | ||
3028 | platforms = []; | ||
3029 | source = { | ||
3030 | remotes = ["https://rubygems.org"]; | ||
3031 | sha256 = "0bh8lk9hvlpn7vmi6h4hkcwjzvs2y0cmkk3yjjdr8fxvj6fsgzbd"; | ||
3032 | type = "gem"; | ||
3033 | }; | ||
3034 | version = "3.2.0"; | ||
3035 | }; | ||
3036 | yard = { | ||
3037 | platforms = []; | ||
3038 | source = { | ||
3039 | remotes = ["https://rubygems.org"]; | ||
3040 | sha256 = "0lmmr1839qgbb3zxfa7jf5mzy17yjl1yirwlgzdhws4452gqhn67"; | ||
3041 | type = "gem"; | ||
3042 | }; | ||
3043 | version = "0.9.16"; | ||
3044 | }; | ||
3045 | } | ||
diff --git a/virtual/modules/websites/tools/diaspora/ldap.patch b/virtual/modules/websites/tools/diaspora/ldap.patch new file mode 100644 index 0000000..3d4f785 --- /dev/null +++ b/virtual/modules/websites/tools/diaspora/ldap.patch | |||
@@ -0,0 +1,256 @@ | |||
1 | commit 936a14e225037aca4cdeac11c843c7985e636c88 | ||
2 | Author: Ismaël Bouya <ismael.bouya@normalesup.org> | ||
3 | Date: Mon Jul 24 19:58:24 2017 +0200 | ||
4 | |||
5 | Add LDAP to diaspora | ||
6 | |||
7 | diff --git a/Gemfile b/Gemfile | ||
8 | index 414b0138d..2a934e9c9 100644 | ||
9 | --- a/Gemfile | ||
10 | +++ b/Gemfile | ||
11 | @@ -217,6 +217,9 @@ gem "thor", "0.19.1" | ||
12 | |||
13 | # gem "therubyracer", :platform => :ruby | ||
14 | |||
15 | +# LDAP | ||
16 | +gem 'net-ldap', '~> 0.16' | ||
17 | + | ||
18 | group :production do # we don"t install these on travis to speed up test runs | ||
19 | # Analytics | ||
20 | |||
21 | diff --git a/Gemfile.lock b/Gemfile.lock | ||
22 | index 84f8172e4..cdbf19fcd 100644 | ||
23 | --- a/Gemfile.lock 2019-01-13 19:55:52.538561762 +0100 | ||
24 | +++ b/Gemfile.lock 2019-01-13 19:58:11.087099067 +0100 | ||
25 | @@ -398,6 +398,7 @@ | ||
26 | mysql2 (0.5.2) | ||
27 | naught (1.1.0) | ||
28 | nenv (0.3.0) | ||
29 | + net-ldap (0.16.1) | ||
30 | nio4r (2.3.1) | ||
31 | nokogiri (1.8.5) | ||
32 | mini_portile2 (~> 2.3.0) | ||
33 | @@ -820,6 +821,7 @@ | ||
34 | minitest | ||
35 | mobile-fu (= 1.4.0) | ||
36 | mysql2 (= 0.5.2) | ||
37 | + net-ldap (~> 0.16) | ||
38 | nokogiri (= 1.8.5) | ||
39 | omniauth (= 1.8.1) | ||
40 | omniauth-tumblr (= 1.2) | ||
41 | diff --git a/app/models/user.rb b/app/models/user.rb | ||
42 | index 940a48f25..d1e2beeee 100644 | ||
43 | --- a/app/models/user.rb | ||
44 | +++ b/app/models/user.rb | ||
45 | @@ -337,6 +337,12 @@ class User < ActiveRecord::Base | ||
46 | end | ||
47 | |||
48 | def send_confirm_email | ||
49 | + if skip_email_confirmation? | ||
50 | + self.email = unconfirmed_email | ||
51 | + self.unconfirmed_email = nil | ||
52 | + save | ||
53 | + end | ||
54 | + | ||
55 | return if unconfirmed_email.blank? | ||
56 | Workers::Mail::ConfirmEmail.perform_async(id) | ||
57 | end | ||
58 | @@ -554,6 +560,14 @@ class User < ActiveRecord::Base | ||
59 | end | ||
60 | end | ||
61 | |||
62 | + def ldap_user? | ||
63 | + AppConfig.ldap.enable? && ldap_dn.present? | ||
64 | + end | ||
65 | + | ||
66 | + def skip_email_confirmation? | ||
67 | + ldap_user? && AppConfig.ldap.skip_email_confirmation? | ||
68 | + end | ||
69 | + | ||
70 | private | ||
71 | |||
72 | def clearable_fields | ||
73 | diff --git a/config/defaults.yml b/config/defaults.yml | ||
74 | index c046aff07..66e9afa13 100644 | ||
75 | --- a/config/defaults.yml | ||
76 | +++ b/config/defaults.yml | ||
77 | @@ -202,6 +202,20 @@ defaults: | ||
78 | scope: tags | ||
79 | include_user_tags: false | ||
80 | pod_tags: | ||
81 | + ldap: | ||
82 | + enable: false | ||
83 | + host: localhost | ||
84 | + port: 389 | ||
85 | + only_ldap: true | ||
86 | + mail_attribute: mail | ||
87 | + skip_email_confirmation: true | ||
88 | + use_bind_dn: true | ||
89 | + bind_dn: "cn=diaspora,dc=example,dc=com" | ||
90 | + bind_pw: "password" | ||
91 | + search_base: "dc=example,dc=com" | ||
92 | + search_filter: "uid=%{username}" | ||
93 | + bind_template: "uid=%{username},dc=example,dc=com" | ||
94 | + | ||
95 | |||
96 | development: | ||
97 | environment: | ||
98 | diff --git a/config/diaspora.yml.example b/config/diaspora.yml.example | ||
99 | index b2573625d..c357c8651 100644 | ||
100 | --- a/config/diaspora.yml.example | ||
101 | +++ b/config/diaspora.yml.example | ||
102 | @@ -710,6 +710,36 @@ configuration: ## Section | ||
103 | ## If scope is 'tags', a comma separated list of tags here can be set. | ||
104 | ## For example "linux,diaspora", to receive posts related to these tags | ||
105 | #pod_tags: | ||
106 | + ldap: | ||
107 | + # Uncomment next line if you want to use LDAP on your instance | ||
108 | + enable: true | ||
109 | + host: localhost | ||
110 | + port: 389 | ||
111 | + # Use only LDAP authentication (don't try other means) | ||
112 | + only_ldap: true | ||
113 | + # LDAP attribute to find the user's e-mail. Necessary to create accounts | ||
114 | + # for not existing users | ||
115 | + mail_attribute: mail | ||
116 | + # Skip e-mail confirmation when creating an account via LDAP. | ||
117 | + skip_email_confirmation: true | ||
118 | + # ----- Using bind_dn and bind_pw | ||
119 | + # bind_dn and bind_pw may be used if the diaspora instance | ||
120 | + # should be able to connect to LDAP to find and search for users. | ||
121 | + | ||
122 | + use_bind_dn: true | ||
123 | + bind_dn: "cn=diaspora,dc=example,dc=com" | ||
124 | + bind_pw: "password" | ||
125 | + search_base: "dc=example,dc=com" | ||
126 | + # This is the filter with which to search for the user. %{username} will | ||
127 | + # be replaced by the given login. | ||
128 | + search_filter: "uid=%{username}" | ||
129 | + # | ||
130 | + # ----- Using template | ||
131 | + # This setting doesn't require a diaspora LDAP user. Use a template, and | ||
132 | + # diaspora will try to login with the templated dn and password | ||
133 | + # | ||
134 | + # bind_template: "uid=%{username},dc=example,dc=com" | ||
135 | + | ||
136 | |||
137 | ## Here you can override settings defined above if you need | ||
138 | ## to have them different in different environments. | ||
139 | diff --git a/config/initializers/0_ldap_authenticatable.rb b/config/initializers/0_ldap_authenticatable.rb | ||
140 | new file mode 100644 | ||
141 | index 000000000..49846502f | ||
142 | --- /dev/null | ||
143 | +++ b/config/initializers/0_ldap_authenticatable.rb | ||
144 | @@ -0,0 +1,82 @@ | ||
145 | +require 'net/ldap' | ||
146 | +require 'devise/strategies/authenticatable' | ||
147 | + | ||
148 | +module Devise | ||
149 | + module Strategies | ||
150 | + class LdapAuthenticatable < Authenticatable | ||
151 | + def valid? | ||
152 | + AppConfig.ldap.enable? && params[:user].present? | ||
153 | + end | ||
154 | + | ||
155 | + def authenticate! | ||
156 | + ldap = Net::LDAP.new( | ||
157 | + host: AppConfig.ldap.host, | ||
158 | + port: AppConfig.ldap.port, | ||
159 | + encryption: :simple_tls, | ||
160 | + ) | ||
161 | + | ||
162 | + if AppConfig.ldap.use_bind_dn? | ||
163 | + ldap.auth AppConfig.ldap.bind_dn, AppConfig.ldap.bind_pw | ||
164 | + | ||
165 | + if !ldap.bind | ||
166 | + return fail(:ldap_configuration_error) | ||
167 | + end | ||
168 | + | ||
169 | + search_filter = AppConfig.ldap.search_filter % { username: params[:user][:username] } | ||
170 | + | ||
171 | + result = ldap.search(base: AppConfig.ldap.search_base, filter: search_filter, result_set: true) | ||
172 | + | ||
173 | + if result.count != 1 | ||
174 | + return login_fail | ||
175 | + end | ||
176 | + | ||
177 | + user_dn = result.first.dn | ||
178 | + user_email = result.first[AppConfig.ldap.mail_attribute].first | ||
179 | + else | ||
180 | + user_dn = AppConfig.ldap.bind_template % { username: params[:user][:username] } | ||
181 | + end | ||
182 | + | ||
183 | + ldap.auth user_dn, params[:user][:password] | ||
184 | + | ||
185 | + if ldap.bind | ||
186 | + user = User.find_by(ldap_dn: user_dn) | ||
187 | + | ||
188 | + # We don't want to trust too much the email attribute from | ||
189 | + # LDAP: if the user can edit it himself, he may login as | ||
190 | + # anyone | ||
191 | + if user.nil? | ||
192 | + if !AppConfig.ldap.use_bind_dn? | ||
193 | + result = ldap.search(base: user_dn, scope: Net::LDAP::SearchScope_BaseObject, filter: "(objectClass=*)", result_set: true) | ||
194 | + user_email = result.first[AppConfig.ldap.mail_attribute].first | ||
195 | + end | ||
196 | + | ||
197 | + if user_email.present? && User.find_by(email: user_email).nil? | ||
198 | + # Password is used for remember_me token | ||
199 | + user = User.build(email: user_email, ldap_dn: user_dn, password: SecureRandom.hex, username: params[:user][:username]) | ||
200 | + user.save | ||
201 | + user.seed_aspects | ||
202 | + elsif User.find_by(email: user_email).present? | ||
203 | + return fail(:ldap_existing_email) | ||
204 | + else | ||
205 | + return fail(:ldap_cannot_create_account_without_email) | ||
206 | + end | ||
207 | + end | ||
208 | + | ||
209 | + success!(user) | ||
210 | + else | ||
211 | + return login_fail | ||
212 | + end | ||
213 | + end | ||
214 | + | ||
215 | + def login_fail | ||
216 | + if AppConfig.ldap.only_ldap? | ||
217 | + return fail(:ldap_invalid_login) | ||
218 | + else | ||
219 | + return pass | ||
220 | + end | ||
221 | + end | ||
222 | + end | ||
223 | + end | ||
224 | +end | ||
225 | + | ||
226 | +Warden::Strategies.add(:ldap_authenticatable, Devise::Strategies::LdapAuthenticatable) | ||
227 | diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb | ||
228 | index 3698e2373..14e88063e 100644 | ||
229 | --- a/config/initializers/devise.rb | ||
230 | +++ b/config/initializers/devise.rb | ||
231 | @@ -250,10 +250,9 @@ Devise.setup do |config| | ||
232 | # If you want to use other strategies, that are not supported by Devise, or | ||
233 | # change the failure app, you can configure them inside the config.warden block. | ||
234 | # | ||
235 | - # config.warden do |manager| | ||
236 | - # manager.intercept_401 = false | ||
237 | - # manager.default_strategies(:scope => :user).unshift :some_external_strategy | ||
238 | - # end | ||
239 | + config.warden do |manager| | ||
240 | + manager.default_strategies(scope: :user).unshift :ldap_authenticatable | ||
241 | + end | ||
242 | |||
243 | # ==> Mountable engine configurations | ||
244 | # When using Devise inside an engine, let's call it `MyEngine`, and this engine | ||
245 | diff --git a/db/migrate/20170724182100_add_ldap_dn_to_users.rb b/db/migrate/20170724182100_add_ldap_dn_to_users.rb | ||
246 | new file mode 100644 | ||
247 | index 000000000..f5cc84d11 | ||
248 | --- /dev/null | ||
249 | +++ b/db/migrate/20170724182100_add_ldap_dn_to_users.rb | ||
250 | @@ -0,0 +1,6 @@ | ||
251 | +class AddLdapDnToUsers < ActiveRecord::Migration | ||
252 | + def change | ||
253 | + add_column :users, :ldap_dn, :text, null: true, default: nil | ||
254 | + add_index :users, ['ldap_dn'], :length => { "ldap_dn" => 191 } | ||
255 | + end | ||
256 | +end | ||