1 |
commit: 22394d577a18d2198b9c734b737d29911809c858 |
2 |
Author: Alfredo Tupone <tupone <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Apr 21 20:08:58 2021 +0000 |
4 |
Commit: Alfredo Tupone <tupone <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Apr 21 20:08:58 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=22394d57 |
7 |
|
8 |
www-apps/liquid_feedback_frontend: version bump to 3.2.1 |
9 |
|
10 |
Package-Manager: Portage-3.0.17, Repoman-3.0.2 |
11 |
Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org> |
12 |
|
13 |
www-apps/liquid_feedback_frontend/Manifest | 1 + |
14 |
.../files/liquid_feedback.initd | 16 + |
15 |
.../liquid_feedback_frontend/files/myconfig-3.lua | 487 +++++++++++++++++++++ |
16 |
.../liquid_feedback_frontend-3.2.1.ebuild | 46 ++ |
17 |
4 files changed, 550 insertions(+) |
18 |
|
19 |
diff --git a/www-apps/liquid_feedback_frontend/Manifest b/www-apps/liquid_feedback_frontend/Manifest |
20 |
index 4abfed6f10f..862e9f0e6bc 100644 |
21 |
--- a/www-apps/liquid_feedback_frontend/Manifest |
22 |
+++ b/www-apps/liquid_feedback_frontend/Manifest |
23 |
@@ -1,3 +1,4 @@ |
24 |
DIST liquid_feedback_frontend-italian-2.2.7.tar.gz 7670 BLAKE2B 8131613849efdea1eaa1eda4f5620d7418d6b32c0f57b0aebb07c7dbe17afda2eee814733eada0656a159a93dda97a5a21e17db71baf3ca84e708caf502a4247 SHA512 63cfcb4a565fa570777c2f3d2dcec2e98f16415ad9f8a6d62076f4e2cdf0ddae95610688b6b7751a865344acb7b65f78e7cb1ae4103b24dacf63e3e346405918 |
25 |
DIST liquid_feedback_frontend-v2.2.7.tar.gz 362509 BLAKE2B 980e261ac9bddfb0f87757457fe58e93481e6d56dc0199b9fc72308e094aec21730f6d901f2e5c1b18a7f5993d1704cc91f64870c16c6215cbbf806095aabe12 SHA512 aa8c99e53c329dbf4659dabe617938d63b2aa42bab99ff4e200d4e15be8ed8ef5f64a71293fa796adde47525d1a76ece3b04cff982474eb2307a3fcd4f269d78 |
26 |
DIST liquid_feedback_frontend-v3.0.6.tar.gz 497521 BLAKE2B a9e7e7944b418a707a459093b41798818644e2d8aed47a48808c2bf7800acdcde61a04e07483dbb387264df2236b1b02f2410cb34f62bdec6244405db0cf3474 SHA512 d283d277cf6836c53398480c566158481fc65400e128bc4817975fd39c41e6e56b17f7f789a74b1b2a89f84aaf315101e9aa86a474c1817362443d03610fe6e9 |
27 |
+DIST liquid_feedback_frontend-v3.2.1.tar.gz 499832 BLAKE2B 6d9ead85fa7e47c04c4169b85ffa119737a798d94b236dbd7d11ae4c5d38cc072a71a45b52e250effa62dac65c3ebcd723061e395b05d9f31d0bb01f8e82f9b9 SHA512 1b5e5fc390a2a705c99145ea36556f9b14de4c052c4673e2c7f12148efe485feaf1a91781c016015c41465559204e906e3cad78e37f41289abd5ca27c4257bb3 |
28 |
|
29 |
diff --git a/www-apps/liquid_feedback_frontend/files/liquid_feedback.initd b/www-apps/liquid_feedback_frontend/files/liquid_feedback.initd |
30 |
new file mode 100755 |
31 |
index 00000000000..0fe14172b52 |
32 |
--- /dev/null |
33 |
+++ b/www-apps/liquid_feedback_frontend/files/liquid_feedback.initd |
34 |
@@ -0,0 +1,16 @@ |
35 |
+#!/sbin/openrc-run |
36 |
+# Copyright 2021 Gentoo Authors |
37 |
+# Distributed under the terms of the GNU General Public License v2 |
38 |
+ |
39 |
+name="liquid feedback daemon" |
40 |
+description="Liquid Feedback Frontend" |
41 |
+command=/usr/bin/moonbridge |
42 |
+command_args="-l /var/log/liquid_feedback/lqfb.log /usr/lib/webmcp/bin/mcp.lua /usr/lib/webmcp /var/lib/liquid_feedback_frontend main myconfig-3" |
43 |
+pidfile=/run/lqfb.pid |
44 |
+command_user="apache:apache" |
45 |
+command_background=true |
46 |
+ |
47 |
+depend() { |
48 |
+ need net |
49 |
+ need postgresql |
50 |
+} |
51 |
|
52 |
diff --git a/www-apps/liquid_feedback_frontend/files/myconfig-3.lua b/www-apps/liquid_feedback_frontend/files/myconfig-3.lua |
53 |
new file mode 100644 |
54 |
index 00000000000..1a1c51f2ac3 |
55 |
--- /dev/null |
56 |
+++ b/www-apps/liquid_feedback_frontend/files/myconfig-3.lua |
57 |
@@ -0,0 +1,487 @@ |
58 |
+-- ======================================================================== |
59 |
+-- MANDATORY (MUST BE CAREFULLY CHECKED AND PROPERLY SET!) |
60 |
+-- ======================================================================== |
61 |
+ |
62 |
+-- Name of this instance, defaults to name of config file |
63 |
+-- ------------------------------------------------------------------------ |
64 |
+config.instance_name = "Instance name" |
65 |
+ |
66 |
+ |
67 |
+-- Information about service provider (HTML) |
68 |
+-- ------------------------------------------------------------------------ |
69 |
+config.app_service_provider = "Snake Oil<br/>10000 Berlin<br/>Germany" |
70 |
+ |
71 |
+ |
72 |
+-- A HTML formatted text the user has to accept while registering |
73 |
+-- ------------------------------------------------------------------------ |
74 |
+config.use_terms = "<h1>Terms of Use</h1><p>Insert terms here</p>" |
75 |
+ |
76 |
+ |
77 |
+-- Checkbox(es) the user has to accept while registering |
78 |
+-- ------------------------------------------------------------------------ |
79 |
+--[[ |
80 |
+config.use_terms_checkboxes = { |
81 |
+ { |
82 |
+ name = "terms_of_use_v1", |
83 |
+ html = "I accept the terms of use.", |
84 |
+ not_accepted_error = "You have to accept the terms of use to be able to register." |
85 |
+ }, |
86 |
+ { |
87 |
+ name = "extra_terms_of_use_v1", |
88 |
+ html = "I accept the extra terms of use.", |
89 |
+ not_accepted_error = "You have to accept the extra terms of use to be able to register." |
90 |
+ } |
91 |
+} |
92 |
+--]] |
93 |
+ |
94 |
+-- Absolute base url of application |
95 |
+-- ------------------------------------------------------------------------ |
96 |
+config.absolute_base_url = "http://example.com/" |
97 |
+config.localhost = false |
98 |
+ |
99 |
+ |
100 |
+-- Connection information for the LiquidFeedback database |
101 |
+-- ------------------------------------------------------------------------ |
102 |
+config.database = { engine='postgresql', dbname='liquid_feedback', user='liquid_feedback', password='xxx' } |
103 |
+ |
104 |
+ |
105 |
+-- Location of the rocketwiki binaries |
106 |
+-- ------------------------------------------------------------------------ |
107 |
+config.enforce_formatting_engine = "markdown2" |
108 |
+config.formatting_engines = { |
109 |
+ { id = "markdown2", |
110 |
+ name = "python-markdown2", |
111 |
+ executable = "markdown2", |
112 |
+ args = {'-s', 'escape', '-x', 'nofollow,wiki-tables'}, |
113 |
+ remove_images = true |
114 |
+ }, |
115 |
+-- { id = "markdown_py", |
116 |
+-- name = "Python Markdown", |
117 |
+-- executable = "markdown_py", |
118 |
+-- args = {'-s', 'escape', '-x', 'extra', '-x', 'nl2br', '-x', 'sane_lists'}, |
119 |
+-- remove_images = true |
120 |
+-- }, |
121 |
+-- { id = "rocketwiki", |
122 |
+-- name = "RocketWiki", |
123 |
+-- executable = "/opt/rocketwiki-lqfb/rocketwiki-lqfb" |
124 |
+-- }, |
125 |
+-- { id = "compat", |
126 |
+-- name = "Traditional WIKI syntax", |
127 |
+-- executable = "/opt/rocketwiki-lqfb/rocketwiki-lqfb-compat" |
128 |
+-- }, |
129 |
+} |
130 |
+ |
131 |
+ |
132 |
+-- Public access level |
133 |
+-- ------------------------------------------------------------------------ |
134 |
+-- Available options: |
135 |
+-- "none" |
136 |
+-- -> Closed user group, no public access at all |
137 |
+-- (except login/registration/password reset) |
138 |
+-- "anonymous" |
139 |
+-- -> Shows only initiative/suggestions texts and aggregated |
140 |
+-- supporter/voter counts |
141 |
+-- "authors_pseudonymous" |
142 |
+-- -> Like anonymous, but shows screen names of authors |
143 |
+-- "all_pseudonymous" |
144 |
+-- -> Show everything a member can see, except profile pages |
145 |
+-- "everything" |
146 |
+-- -> Show everything a member can see, including profile pages |
147 |
+-- ------------------------------------------------------------------------ |
148 |
+config.public_access = "none" |
149 |
+ |
150 |
+ |
151 |
+ |
152 |
+-- ======================================================================== |
153 |
+-- OPTIONAL |
154 |
+-- Remove leading -- to use a option |
155 |
+-- ======================================================================== |
156 |
+ |
157 |
+-- Disable registration |
158 |
+-- ------------------------------------------------------------------------ |
159 |
+-- Available options: |
160 |
+-- false: registration is enabled (default) |
161 |
+-- true: registration is disabled |
162 |
+-- ------------------------------------------------------------------------ |
163 |
+-- config.disable_registration = true |
164 |
+ |
165 |
+ |
166 |
+-- List of enabled languages, defaults to available languages |
167 |
+-- ------------------------------------------------------------------------ |
168 |
+-- config.enabled_languages = { 'en', 'de', 'eo', 'el', 'hu', 'it', 'ka', 'nl', 'zh-Hans', 'zh-TW' } |
169 |
+ |
170 |
+ |
171 |
+-- Default language, defaults to "en" |
172 |
+-- ------------------------------------------------------------------------ |
173 |
+-- config.default_lang = "en" |
174 |
+ |
175 |
+ |
176 |
+-- after how long is a user considered inactive and the trustee will see warning, |
177 |
+-- notation is according to postgresql intervals, default: no warning at all |
178 |
+-- ------------------------------------------------------------------------ |
179 |
+-- config.delegation_warning_time = '6 months' |
180 |
+ |
181 |
+ |
182 |
+-- after which time a user is advised (_soft) or forced (_hard) to check |
183 |
+-- unit and area delegations. default: no check at all |
184 |
+-- ------------------------------------------------------------------------ |
185 |
+-- config.check_delegations_interval_hard = "6 months" |
186 |
+-- config.check_delegations_interval_soft = "3 months" |
187 |
+ |
188 |
+ |
189 |
+-- default option when checking delegations |
190 |
+-- available options: "confirm", "revoke" and "none", default: "confirm" |
191 |
+-- ------------------------------------------------------------------------ |
192 |
+-- config.check_delegations_default = "confirm" |
193 |
+ |
194 |
+ |
195 |
+-- Prefix of all automatic mails, defaults to "[Liquid Feedback] " |
196 |
+-- ------------------------------------------------------------------------ |
197 |
+-- config.mail_subject_prefix = "[LiquidFeedback] " |
198 |
+ |
199 |
+ |
200 |
+-- Sender of all automatic mails, defaults to system defaults |
201 |
+-- ------------------------------------------------------------------------ |
202 |
+-- config.mail_envelope_from = "liquidfeedback@×××××××.com" |
203 |
+-- config.mail_from = { name = "LiquidFeedback", address = "liquidfeedback@×××××××.com" } |
204 |
+-- config.mail_reply_to = { name = "Support", address = "support@×××××××.com" } |
205 |
+ |
206 |
+ |
207 |
+-- Template for digest emails |
208 |
+-- #{name} will be replaced by member screen name |
209 |
+-- #{digest} will be replaced with the digest content |
210 |
+-- ------------------------------------------------------------------------ |
211 |
+-- config.notification_digest_template = [[ |
212 |
+-- Hello #{name}, |
213 |
+-- |
214 |
+-- this is your personal digest. |
215 |
+-- |
216 |
+-- #{digest} |
217 |
+-- ]] |
218 |
+ |
219 |
+ |
220 |
+-- Configuration of password hashing algorithm (defaults to "crypt_sha512") |
221 |
+-- ------------------------------------------------------------------------ |
222 |
+-- config.password_hash_algorithm = "crypt_sha512" |
223 |
+-- config.password_hash_algorithm = "crypt_sha256" |
224 |
+-- config.password_hash_algorithm = "crypt_md5" |
225 |
+ |
226 |
+ |
227 |
+-- Number of rounds for crypt_sha* algorithms, minimum and maximum |
228 |
+-- (defaults to minimum 10000 and maximum 20000) |
229 |
+-- ------------------------------------------------------------------------ |
230 |
+-- config.password_hash_min_rounds = 10000 |
231 |
+-- config.password_hash_max_rounds = 20000 |
232 |
+ |
233 |
+ |
234 |
+-- Supply custom url for avatar/photo delivery |
235 |
+-- ------------------------------------------------------------------------ |
236 |
+-- config.fastpath_url_func = nil |
237 |
+ |
238 |
+ |
239 |
+-- Local directory for database dumps offered for download |
240 |
+-- ------------------------------------------------------------------------ |
241 |
+-- config.download_dir = nil |
242 |
+ |
243 |
+ |
244 |
+-- Special use terms for database dump download |
245 |
+-- ------------------------------------------------------------------------ |
246 |
+-- config.download_use_terms = "=== Download use terms ===\n" |
247 |
+ |
248 |
+ |
249 |
+-- Use custom image conversion, defaults to ImageMagick's convert |
250 |
+-- ------------------------------------------------------------------------ |
251 |
+--config.member_image_content_type = "image/jpeg" |
252 |
+--config.member_image_convert_func = { |
253 |
+-- avatar = function(data) return extos.pfilter(data, "convert", "jpeg:-", "-thumbnail", "48x48", "jpeg:-") end, |
254 |
+-- photo = function(data) return extos.pfilter(data, "convert", "jpeg:-", "-thumbnail", "240x240", "jpeg:-") end |
255 |
+--} |
256 |
+ |
257 |
+ |
258 |
+-- Display a html formatted public message of the day |
259 |
+-- ------------------------------------------------------------------------ |
260 |
+-- config.motd_public = "<h1>Message of the day (public)</h1><p>The MOTD is formatted with HTML</p>" |
261 |
+ |
262 |
+ |
263 |
+-- Display a html formatted internal message of the day |
264 |
+-- ------------------------------------------------------------------------ |
265 |
+-- config.motd_intern = "<h1>Message of the day (intern)</h1><p>The MOTD is formatted with HTML</p>" |
266 |
+ |
267 |
+ |
268 |
+-- Integration of Etherpad, disabled by default |
269 |
+-- ------------------------------------------------------------------------ |
270 |
+--config.etherpad = { |
271 |
+-- base_url = "http://example.com:9001/", |
272 |
+-- api_base = "http://localhost:9001/", |
273 |
+-- api_key = "mysecretapikey", |
274 |
+-- group_id = "mygroupname", |
275 |
+-- cookie_path = "/" |
276 |
+--} |
277 |
+ |
278 |
+ |
279 |
+-- Free timings |
280 |
+-- ------------------------------------------------------------------------ |
281 |
+-- This example expects a date string entered in the free timing field |
282 |
+-- by the user creating a poll, interpreting it as target date for then |
283 |
+-- poll and splits the remaining time at the ratio of 4:1:2 |
284 |
+-- Please note, polling policies never have an admission phase |
285 |
+-- The available_func is optional, if not set any target date is allowed |
286 |
+ |
287 |
+--[[ |
288 |
+config.free_timing = { |
289 |
+ calculate_func = function(policy, timing_string) |
290 |
+ local function interval_by_seconds(secs) |
291 |
+ local secs_per_day = 60 * 60 * 24 |
292 |
+ local days |
293 |
+ days = math.floor(secs / secs_per_day) |
294 |
+ secs = secs - days * secs_per_day |
295 |
+ return days .. " days " .. secs .. " seconds" |
296 |
+ end |
297 |
+ local target_date = parse.date(timing_string, atom.date) |
298 |
+ if not target_date then |
299 |
+ return false |
300 |
+ end |
301 |
+ local target_timestamp = target_date.midday |
302 |
+ local now = atom.timestamp:get_current() |
303 |
+ trace.debug(target_timestamp, now) |
304 |
+ local duration = target_timestamp - now |
305 |
+ if duration < 0 then |
306 |
+ return false |
307 |
+ end |
308 |
+ return { |
309 |
+ discussion = interval_by_seconds(duration / 7 * 4), |
310 |
+ verification = interval_by_seconds(duration / 7 * 1), |
311 |
+ voting = interval_by_seconds(duration / 7 * 2) |
312 |
+ } |
313 |
+ end, |
314 |
+ available_func = function(policy) |
315 |
+ return { |
316 |
+ { name = "End of 2013", id = '2013-12-31' }, |
317 |
+ { name = "End of 2014", id = '2014-12-31' }, |
318 |
+ { name = "End of 2015", id = '2015-12-31' } |
319 |
+ } |
320 |
+ end |
321 |
+} |
322 |
+--]] |
323 |
+ |
324 |
+-- Configuration of lf4rcs |
325 |
+-- ------------------------------------------------------------------------ |
326 |
+-- config.lf4rc = {} |
327 |
+ |
328 |
+-- Example configuration for controlling a Git repository |
329 |
+--[[ |
330 |
+config.lf4rcs.git = { |
331 |
+ |
332 |
+ render_draft_reference = function(url, draft) |
333 |
+ if not draft.external_reference then return end |
334 |
+ ui.tag{ content = _"Changeset:" } |
335 |
+ slot.put(" ") |
336 |
+ ui.link{ |
337 |
+ text = draft.external_reference, |
338 |
+ external = url .. ";a=commit;h=" .. draft.external_reference |
339 |
+ } |
340 |
+ end, |
341 |
+ |
342 |
+ get_remote_user = function() |
343 |
+ return os.getenv("REMOTE_USER") |
344 |
+ end, |
345 |
+ |
346 |
+ get_branches = function(path, exec) |
347 |
+ local branches = {} |
348 |
+ for line in io.lines() do |
349 |
+ local oldrev, newrev, branch = string.match(line, "([^ ]+) ([^ ]+) refs/heads/(.+)") |
350 |
+ if not branch then |
351 |
+ return nil, "unexpected format from git hook environment" |
352 |
+ end |
353 |
+ branches[branch] = { newrev } |
354 |
+ end |
355 |
+ return branches |
356 |
+ end, |
357 |
+ |
358 |
+ commit = function(path, exec, branch, target_node_id, close_message, merge_message) |
359 |
+ if merge_message then |
360 |
+ exec("git", "-C", path, "checkout", "-f", "master") |
361 |
+ exec("git", "-C", path, "merge", target_node_id, "-m", merge_message) |
362 |
+ exec("git", "-C", path, "push", "origin", "master") |
363 |
+ end |
364 |
+ end |
365 |
+ |
366 |
+} |
367 |
+ |
368 |
+-- Example configuration for controlling a Mercurial repository |
369 |
+config.lf4rcs.hg = { |
370 |
+ |
371 |
+ working_branch_name = "work", |
372 |
+ |
373 |
+ render_draft_reference = function(url, draft) |
374 |
+ if not draft.external_reference then return end |
375 |
+ ui.tag{ content = _"Changeset graph:" } |
376 |
+ slot.put(" ") |
377 |
+ ui.link{ |
378 |
+ text = draft.external_reference, |
379 |
+ external = url .. "/graph/" .. draft.external_reference |
380 |
+ } |
381 |
+ end, |
382 |
+ |
383 |
+ get_remote_user = function() |
384 |
+ return os.getenv("REMOTE_USER") |
385 |
+ end, |
386 |
+ |
387 |
+ get_branches = function(path, exec) |
388 |
+ local first_node_id = os.getenv("HG_NODE") |
389 |
+ if not first_node_id then |
390 |
+ return nil, "internal error, no first node ID available" |
391 |
+ end |
392 |
+ local hg_log = exec( |
393 |
+ "hg", "log", "-R", path, "-r", first_node_id .. ":", "--template", "{branches}\n" |
394 |
+ ) |
395 |
+ local branches = {} |
396 |
+ for branch in hg_log:gmatch("(.-)\n") do |
397 |
+ if branch == "" then branch = "default" end |
398 |
+ if not branches[branch] then |
399 |
+ branches[branch] = {} |
400 |
+ local head_lines = exec( |
401 |
+ "hg", "heads", "-R", path, "--template", "{node}\n", branch |
402 |
+ ) |
403 |
+ for node_id in string.gmatch(head_lines, "[^\n]+") do |
404 |
+ table.insert(branches[branch], node_id) |
405 |
+ end |
406 |
+ end |
407 |
+ end |
408 |
+ return branches |
409 |
+ end, |
410 |
+ |
411 |
+ extra_checks = function(path, exec) |
412 |
+ local result = exec("hg", "heads", "-t", "-c") |
413 |
+ for branch in string.gmatch(result, "[^\n]+") do |
414 |
+ if branch == lf4rcs.config.hg.working_branch_name then |
415 |
+ return nil, "open head found for branch " .. lf4rcs.config.hg.working_branch_name |
416 |
+ end |
417 |
+ end |
418 |
+ return true |
419 |
+ end, |
420 |
+ |
421 |
+ commit = function(path, exec, branch, target_node_id, close_message, merge_message) |
422 |
+ exec("hg", "up", "-R", path, "-C", "-r", target_node_id) |
423 |
+ exec("hg", "commit", "-R", path, "--close-branch", "-m", close_message) |
424 |
+ if merge_message then |
425 |
+ exec("hg", "up", "-R", path, "-C", "-r", "default") |
426 |
+ exec("hg", "merge", "-R", path, "-r", "tip") |
427 |
+ exec("hg", "commit", "-R", path, "-m", merge_message) |
428 |
+ end |
429 |
+ end |
430 |
+ |
431 |
+} |
432 |
+ |
433 |
+-- Grace period after creating an initiative for pushing changes during verification phase |
434 |
+-- disabled by default (nil), use PostgreSQL interval notation |
435 |
+-- config.lf4rcs.push_grace_period = nil |
436 |
+ |
437 |
+lf4rcs.init() |
438 |
+--]] |
439 |
+ |
440 |
+-- External references |
441 |
+-- ------------------------------------------------------------------------ |
442 |
+-- Rendering of external references |
443 |
+ |
444 |
+--[[ |
445 |
+config.render_external_reference = { |
446 |
+ draft = function(draft, wrapper) |
447 |
+ wrapper(function() |
448 |
+ ui.tag{ content = draft.external_reference) |
449 |
+ end) |
450 |
+ end, |
451 |
+ initiative = function(initiative, wrapper) |
452 |
+ wrapper(function() |
453 |
+ ui.tag{ content = initiative.external_reference) |
454 |
+ end) |
455 |
+ end |
456 |
+end |
457 |
+--]] |
458 |
+ |
459 |
+-- Admin logger |
460 |
+-- ------------------------------------------------------------------------ |
461 |
+-- Logging administrative activities |
462 |
+-- disabled by default |
463 |
+ |
464 |
+--[[ |
465 |
+config.admin_logger = function(params) |
466 |
+ |
467 |
+ local adminid = app.session.member_id |
468 |
+ local adminname = app.session.member.name |
469 |
+ local url = params._webmcp_path |
470 |
+ |
471 |
+ -- do something (e.g. calling 'logger' via extos.pfilter) |
472 |
+ |
473 |
+end |
474 |
+--]] |
475 |
+ |
476 |
+ |
477 |
+-- Network interface to bind to |
478 |
+-- ------------------------------------------------------------------------ |
479 |
+-- Available options: |
480 |
+-- true: bind to localhost (default) |
481 |
+-- false: bind to all interface |
482 |
+-- ------------------------------------------------------------------------ |
483 |
+-- config.localhost = true |
484 |
+ |
485 |
+ |
486 |
+-- Network port to bind to |
487 |
+-- ------------------------------------------------------------------------ |
488 |
+-- config.port = 8080 |
489 |
+ |
490 |
+ |
491 |
+-- Serving content via IPV6 |
492 |
+-- ------------------------------------------------------------------------ |
493 |
+-- Available options: |
494 |
+-- nil or false: do not serve via IPv6 (default) |
495 |
+-- true: serve via IPv6 |
496 |
+-- ------------------------------------------------------------------------ |
497 |
+-- config.ipv6 = false |
498 |
+ |
499 |
+ |
500 |
+-- Application server fork configuration |
501 |
+-- ------------------------------------------------------------------------ |
502 |
+-- config.fork = { |
503 |
+-- pre = 2, -- desired number of spare (idle) processes |
504 |
+-- min = 4, -- minimum number of processes |
505 |
+-- max = 128, -- maximum number of processes (hard limit) |
506 |
+-- delay = 0.125, -- delay (seconds) between creation of spare processes |
507 |
+-- error_delay = 2, -- delay (seconds) before retry of failed process creation |
508 |
+-- exit_delay = 2, -- delay (seconds) between destruction of excessive spare processes |
509 |
+-- idle_timeout = 900, -- idle time (seconds) after a fork gets terminated (0 for no timeout) |
510 |
+-- memory_limit = 0, -- maximum memory consumption (bytes) before process gets terminated |
511 |
+-- min_requests = 50, -- minimum count of requests handled before fork is terminated |
512 |
+-- max_requests = 100 -- maximum count of requests handled before fork is terminated |
513 |
+-- } |
514 |
+ |
515 |
+ |
516 |
+-- HTTP server options |
517 |
+-- ------------------------------------------------------------------------ |
518 |
+-- http_options = { |
519 |
+-- static_headers = {} -- string or table of static headers to be returned with every request |
520 |
+-- request_header_size_limit = 1024*1024, -- maximum size of request body sent by client |
521 |
+-- request_body_size_limit = 64*1024*1024, -- maximum size of request body sent by client |
522 |
+-- idle_timeout = 65, -- maximum time until receiving the first byte of the request headera |
523 |
+-- stall_timeout = 60, -- maximum time a client connection may be stalled |
524 |
+-- request_header_timeout = 120, -- maximum time until receiving the remaining bytes of the request header |
525 |
+-- response_timeout = 3600, -- time in which request body and response must be sent |
526 |
+-- maximum_input_chunk_size = 16384 -- tweaks behavior of request-body parser |
527 |
+-- minimum_output_chunk_size = 1024 -- chunk size for chunked-transfer-encoding |
528 |
+-- } |
529 |
+ |
530 |
+ |
531 |
+-- WebMCP accelerator |
532 |
+-- ------------------------------------------------------------------------ |
533 |
+-- uncomment the following line to use C implementations of chosen |
534 |
+-- functions: |
535 |
+-- ------------------------------------------------------------------------ |
536 |
+-- require 'webmcp_accelerator' |
537 |
+ |
538 |
+ |
539 |
+-- Trace debug |
540 |
+-- ------------------------------------------------------------------------ |
541 |
+-- uncomment the following line to enable debug trace |
542 |
+-- ------------------------------------------------------------------------ |
543 |
+-- config.enable_debug_trace = true |
544 |
+ |
545 |
|
546 |
diff --git a/www-apps/liquid_feedback_frontend/liquid_feedback_frontend-3.2.1.ebuild b/www-apps/liquid_feedback_frontend/liquid_feedback_frontend-3.2.1.ebuild |
547 |
new file mode 100644 |
548 |
index 00000000000..758cd8b2f74 |
549 |
--- /dev/null |
550 |
+++ b/www-apps/liquid_feedback_frontend/liquid_feedback_frontend-3.2.1.ebuild |
551 |
@@ -0,0 +1,46 @@ |
552 |
+# Copyright 1999-2021 Gentoo Authors |
553 |
+# Distributed under the terms of the GNU General Public License v2 |
554 |
+ |
555 |
+EAPI=7 |
556 |
+ |
557 |
+inherit eutils toolchain-funcs |
558 |
+ |
559 |
+PN_F=${PN} |
560 |
+PV_F=v${PV} |
561 |
+MY_P=${PN}-v${PV} |
562 |
+ |
563 |
+DESCRIPTION="Internet platforms for proposition development and decision making" |
564 |
+HOMEPAGE="https://www.public-software-group.org/liquid_feedback" |
565 |
+SRC_URI="https://www.public-software-group.org/pub/projects/liquid_feedback/frontend/v${PV}/${MY_P}.tar.gz" |
566 |
+ |
567 |
+LICENSE="HPND CC-BY-2.5" |
568 |
+SLOT="0" |
569 |
+KEYWORDS="~amd64" |
570 |
+IUSE="" |
571 |
+ |
572 |
+RDEPEND="~www-apps/liquid_feedback_core-3.2.2 |
573 |
+ ~www-servers/moonbridge-1.0.1 |
574 |
+ >=www-apps/webmcp-2.1.0 |
575 |
+ acct-user/apache" |
576 |
+DEPEND="${RDEPEND}" |
577 |
+ |
578 |
+S="${WORKDIR}"/${MY_P} |
579 |
+ |
580 |
+DOCS=( "${FILESDIR}"/postinstall-en.txt INSTALL.html INSTALL.mkd ) |
581 |
+ |
582 |
+src_install() { |
583 |
+ default |
584 |
+ |
585 |
+ insinto /var/lib/${PN} |
586 |
+ doins -r app db env fastpath lib locale model static tmp |
587 |
+ fowners apache:apache /var/lib/${PN}/tmp |
588 |
+ dodir /var/log/liquid_feedback |
589 |
+ keepdir /var/log/liquid_feedback |
590 |
+ fowners apache:apache /var/log/liquid_feedback |
591 |
+ |
592 |
+ insinto /etc/${PN} |
593 |
+ doins "${FILESDIR}"/myconfig-3.lua config/* |
594 |
+ dosym ../../../etc/${PN} /var/lib/${PN}/config |
595 |
+ |
596 |
+ newinitd "${FILESDIR}"/liquid_feedback.initd liquid_feedback |
597 |
+} |