]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/websites/tools/tools/phpbb.nix
Remove duply-backup
[perso/Immae/Config/Nix.git] / modules / private / websites / tools / tools / phpbb.nix
CommitLineData
a8ef1adb
IB
1{ lib, phpbb, gnused }:
2rec {
a8ef1adb
IB
3 varDir = "/var/lib/phpbb";
4 activationScript = {
5 deps = [ "wrappers" ];
6 text = ''
7 if [ ! -d ${varDir} ]; then
8 install -m 0755 -o ${apache.user} -g ${apache.user} -d ${varDir}
9 cp -a ${phpbb}/vars/* ${varDir}
10 chown -R ${apache.user}:${apache.user} ${varDir}
11 fi
12 install -m 0750 -o ${apache.user} -g ${apache.group} -d ${varDir}/phpSessions
13 '';
14 };
15 webRoot = phpbb;
16 apache = rec {
17 user = "wwwrun";
18 group = "wwwrun";
19 modules = [ "proxy_fcgi" ];
750fe5a4 20 root = webRoot;
a8ef1adb
IB
21 vhostConf = socket: ''
22 Alias /forum "${root}"
23 <Directory "${root}">
24 DirectoryIndex index.php
25 <FilesMatch "\.php$">
26 SetHandler "proxy:unix:${socket}|fcgi://localhost"
27 </FilesMatch>
28
29 AllowOverride All
30 Options FollowSymlinks
31 Require all granted
32 </Directory>
33 # add instal to the list after install
34 <LocationMatch "^/(cache|files|install|store)>
35 Require all denied
36 </LocationMatch>
37 '';
38 };
39 phpFpm = rec {
40 serviceDeps = [ "postgresql.service" ];
41 basedir = builtins.concatStringsSep ":" [ "/run/wrappers/bin/sendmail" phpbb varDir ];
42 pool = {
43 "listen.owner" = apache.user;
44 "listen.group" = apache.group;
45 "pm" = "ondemand";
46 "pm.max_children" = "60";
47 "pm.process_idle_timeout" = "60";
48
49 # Needed to avoid clashes in browser cookies (same domain)
50 "php_value[session.name]" = "PhpBBPHPSESSID";
51 "php_admin_value[open_basedir]" = "${basedir}:/tmp";
52 "php_admin_value[session.save_path]" = "${varDir}/phpSessions";
53 };
54 };
55}