diff options
Diffstat (limited to 'nixops/modules/websites/tools')
-rw-r--r-- | nixops/modules/websites/tools/cloud.nix | 8 | ||||
-rw-r--r-- | nixops/modules/websites/tools/dav/default.nix | 2 | ||||
-rw-r--r-- | nixops/modules/websites/tools/git/default.nix | 2 | ||||
-rw-r--r-- | nixops/modules/websites/tools/tools/default.nix | 140 | ||||
-rw-r--r-- | nixops/modules/websites/tools/tools/roundcubemail.nix | 1 |
5 files changed, 90 insertions, 63 deletions
diff --git a/nixops/modules/websites/tools/cloud.nix b/nixops/modules/websites/tools/cloud.nix index 5e010f4..5d2ca40 100644 --- a/nixops/modules/websites/tools/cloud.nix +++ b/nixops/modules/websites/tools/cloud.nix | |||
@@ -17,7 +17,6 @@ let | |||
17 | zend_extension=${pkgs.php}/lib/php/extensions/opcache.so | 17 | zend_extension=${pkgs.php}/lib/php/extensions/opcache.so |
18 | ''; | 18 | ''; |
19 | pool = '' | 19 | pool = '' |
20 | listen = ${socket} | ||
21 | user = wwwrun | 20 | user = wwwrun |
22 | group = wwwrun | 21 | group = wwwrun |
23 | listen.owner = wwwrun | 22 | listen.owner = wwwrun |
@@ -170,9 +169,10 @@ in { | |||
170 | ln -s ${nextcloud} $out/webapps/${webappName} | 169 | ln -s ${nextcloud} $out/webapps/${webappName} |
171 | ''; | 170 | ''; |
172 | 171 | ||
173 | services.myPhpfpm = { | 172 | services.phpfpm.pools.nextcloud = { |
174 | poolPhpConfigs.nextcloud = phpFpm.phpConfig; | 173 | listen = phpFpm.socket; |
175 | poolConfigs.nextcloud = phpFpm.pool; | 174 | extraConfig = phpFpm.pool; |
175 | phpOptions = config.services.phpfpm.phpOptions + phpFpm.phpConfig; | ||
176 | }; | 176 | }; |
177 | 177 | ||
178 | services.cron = { | 178 | services.cron = { |
diff --git a/nixops/modules/websites/tools/dav/default.nix b/nixops/modules/websites/tools/dav/default.nix index 075cf48..78e0ba3 100644 --- a/nixops/modules/websites/tools/dav/default.nix +++ b/nixops/modules/websites/tools/dav/default.nix | |||
@@ -41,7 +41,7 @@ in { | |||
41 | ]; | 41 | ]; |
42 | }; | 42 | }; |
43 | 43 | ||
44 | services.myPhpfpm.poolConfigs = { | 44 | services.phpfpm.poolConfigs = { |
45 | davical = davical.phpFpm.pool; | 45 | davical = davical.phpFpm.pool; |
46 | }; | 46 | }; |
47 | 47 | ||
diff --git a/nixops/modules/websites/tools/git/default.nix b/nixops/modules/websites/tools/git/default.nix index 064d3dd..495c5ea 100644 --- a/nixops/modules/websites/tools/git/default.nix +++ b/nixops/modules/websites/tools/git/default.nix | |||
@@ -38,7 +38,7 @@ in { | |||
38 | '' | 38 | '' |
39 | ]; | 39 | ]; |
40 | }; | 40 | }; |
41 | services.myPhpfpm.poolConfigs = { | 41 | services.phpfpm.poolConfigs = { |
42 | mantisbt = mantisbt.phpFpm.pool; | 42 | mantisbt = mantisbt.phpFpm.pool; |
43 | }; | 43 | }; |
44 | }; | 44 | }; |
diff --git a/nixops/modules/websites/tools/tools/default.nix b/nixops/modules/websites/tools/tools/default.nix index 061c004..642755f 100644 --- a/nixops/modules/websites/tools/tools/default.nix +++ b/nixops/modules/websites/tools/tools/default.nix | |||
@@ -72,15 +72,6 @@ in { | |||
72 | ++ ldap.apache.modules | 72 | ++ ldap.apache.modules |
73 | ++ kanboard.apache.modules; | 73 | ++ kanboard.apache.modules; |
74 | 74 | ||
75 | systemd.services.ympd = { | ||
76 | description = "Standalone MPD Web GUI written in C"; | ||
77 | wantedBy = [ "multi-user.target" ]; | ||
78 | script = '' | ||
79 | export MPD_PASSWORD=$(cat /var/secrets/mpd) | ||
80 | ${pkgs.ympd}/bin/ympd --host ${ympd.config.host} --port ${toString ympd.config.port} --webport ${ympd.config.webPort} --user nobody | ||
81 | ''; | ||
82 | }; | ||
83 | |||
84 | services.websites.integration.vhostConfs.devtools = { | 75 | services.websites.integration.vhostConfs.devtools = { |
85 | certName = "eldiron"; | 76 | certName = "eldiron"; |
86 | addToCerts = true; | 77 | addToCerts = true; |
@@ -157,33 +148,99 @@ in { | |||
157 | ]; | 148 | ]; |
158 | }; | 149 | }; |
159 | 150 | ||
160 | services.myPhpfpm.serviceDependencies = { | 151 | systemd.services = { |
161 | dokuwiki = dokuwiki.phpFpm.serviceDeps; | 152 | phpfpm-dokuwiki = { |
162 | kanboard = kanboard.phpFpm.serviceDeps; | 153 | after = lib.mkAfter dokuwiki.phpFpm.serviceDeps; |
163 | ldap = ldap.phpFpm.serviceDeps; | 154 | wants = dokuwiki.phpFpm.serviceDeps; |
164 | rainloop = rainloop.phpFpm.serviceDeps; | 155 | }; |
165 | roundcubemail = roundcubemail.phpFpm.serviceDeps; | 156 | phpfpm-kanboard = { |
166 | shaarli = shaarli.phpFpm.serviceDeps; | 157 | after = lib.mkAfter kanboard.phpFpm.serviceDeps; |
167 | ttrss = ttrss.phpFpm.serviceDeps; | 158 | wants = kanboard.phpFpm.serviceDeps; |
168 | wallabag = wallabag.phpFpm.serviceDeps; | 159 | }; |
169 | yourls = yourls.phpFpm.serviceDeps; | 160 | phpfpm-ldap = { |
161 | after = lib.mkAfter ldap.phpFpm.serviceDeps; | ||
162 | wants = ldap.phpFpm.serviceDeps; | ||
163 | }; | ||
164 | phpfpm-rainloop = { | ||
165 | after = lib.mkAfter rainloop.phpFpm.serviceDeps; | ||
166 | wants = rainloop.phpFpm.serviceDeps; | ||
167 | }; | ||
168 | phpfpm-roundcubemail = { | ||
169 | after = lib.mkAfter roundcubemail.phpFpm.serviceDeps; | ||
170 | wants = roundcubemail.phpFpm.serviceDeps; | ||
171 | }; | ||
172 | phpfpm-shaarli = { | ||
173 | after = lib.mkAfter shaarli.phpFpm.serviceDeps; | ||
174 | wants = shaarli.phpFpm.serviceDeps; | ||
175 | }; | ||
176 | phpfpm-ttrss = { | ||
177 | after = lib.mkAfter ttrss.phpFpm.serviceDeps; | ||
178 | wants = ttrss.phpFpm.serviceDeps; | ||
179 | }; | ||
180 | phpfpm-wallabag = { | ||
181 | after = lib.mkAfter wallabag.phpFpm.serviceDeps; | ||
182 | wants = wallabag.phpFpm.serviceDeps; | ||
183 | preStart = lib.mkAfter wallabag.phpFpm.preStart; | ||
184 | }; | ||
185 | phpfpm-yourls = { | ||
186 | after = lib.mkAfter yourls.phpFpm.serviceDeps; | ||
187 | wants = yourls.phpFpm.serviceDeps; | ||
188 | }; | ||
189 | ympd = { | ||
190 | description = "Standalone MPD Web GUI written in C"; | ||
191 | wantedBy = [ "multi-user.target" ]; | ||
192 | script = '' | ||
193 | export MPD_PASSWORD=$(cat /var/secrets/mpd) | ||
194 | ${pkgs.ympd}/bin/ympd --host ${ympd.config.host} --port ${toString ympd.config.port} --webport ${ympd.config.webPort} --user nobody | ||
195 | ''; | ||
196 | }; | ||
197 | tt-rss = { | ||
198 | description = "Tiny Tiny RSS feeds update daemon"; | ||
199 | serviceConfig = { | ||
200 | User = "wwwrun"; | ||
201 | ExecStart = "${pkgs.php}/bin/php ${ttrss.webRoot}/update.php --daemon"; | ||
202 | StandardOutput = "syslog"; | ||
203 | StandardError = "syslog"; | ||
204 | PermissionsStartOnly = true; | ||
205 | }; | ||
206 | |||
207 | wantedBy = [ "multi-user.target" ]; | ||
208 | requires = ["postgresql.service"]; | ||
209 | after = ["network.target" "postgresql.service"]; | ||
210 | }; | ||
211 | }; | ||
212 | |||
213 | services.phpfpm.pools.roundcubemail = { | ||
214 | listen = roundcubemail.phpFpm.socket; | ||
215 | extraConfig = roundcubemail.phpFpm.pool; | ||
216 | phpOptions = config.services.phpfpm.phpOptions + roundcubemail.phpFpm.phpConfig; | ||
170 | }; | 217 | }; |
171 | 218 | ||
172 | services.myPhpfpm.poolPhpConfigs = { | 219 | services.phpfpm.pools.devtools = { |
173 | devtools = '' | 220 | listen = "/var/run/phpfpm/devtools.sock"; |
221 | extraConfig = '' | ||
222 | user = wwwrun | ||
223 | group = wwwrun | ||
224 | listen.owner = wwwrun | ||
225 | listen.group = wwwrun | ||
226 | pm = dynamic | ||
227 | pm.max_children = 60 | ||
228 | pm.start_servers = 2 | ||
229 | pm.min_spare_servers = 1 | ||
230 | pm.max_spare_servers = 10 | ||
231 | |||
232 | php_admin_value[open_basedir] = "/run/wrappers/bin/sendmail:/var/lib/ftp/devtools.immae.eu:/tmp" | ||
233 | ''; | ||
234 | phpOptions = config.services.phpfpm.phpOptions + '' | ||
174 | extension=${pkgs.phpPackages.redis}/lib/php/extensions/redis.so | 235 | extension=${pkgs.phpPackages.redis}/lib/php/extensions/redis.so |
175 | extension=${pkgs.phpPackages.apcu}/lib/php/extensions/apcu.so | 236 | extension=${pkgs.phpPackages.apcu}/lib/php/extensions/apcu.so |
176 | zend_extension=${pkgs.php}/lib/php/extensions/opcache.so | 237 | zend_extension=${pkgs.php}/lib/php/extensions/opcache.so |
177 | ''; | 238 | ''; |
178 | roundcubemail = roundcubemail.phpFpm.phpConfig; | ||
179 | }; | ||
180 | services.myPhpfpm.preStart = { | ||
181 | wallabag = wallabag.phpFpm.preStart; | ||
182 | }; | 239 | }; |
183 | services.myPhpfpm.poolConfigs = { | 240 | |
241 | services.phpfpm.poolConfigs = { | ||
184 | adminer = adminer.phpFpm.pool; | 242 | adminer = adminer.phpFpm.pool; |
185 | ttrss = ttrss.phpFpm.pool; | 243 | ttrss = ttrss.phpFpm.pool; |
186 | roundcubemail = roundcubemail.phpFpm.pool; | ||
187 | wallabag = wallabag.phpFpm.pool; | 244 | wallabag = wallabag.phpFpm.pool; |
188 | yourls = yourls.phpFpm.pool; | 245 | yourls = yourls.phpFpm.pool; |
189 | rompr = rompr.phpFpm.pool; | 246 | rompr = rompr.phpFpm.pool; |
@@ -192,20 +249,6 @@ in { | |||
192 | ldap = ldap.phpFpm.pool; | 249 | ldap = ldap.phpFpm.pool; |
193 | rainloop = rainloop.phpFpm.pool; | 250 | rainloop = rainloop.phpFpm.pool; |
194 | kanboard = kanboard.phpFpm.pool; | 251 | kanboard = kanboard.phpFpm.pool; |
195 | devtools = '' | ||
196 | listen = /var/run/phpfpm/devtools.sock | ||
197 | user = wwwrun | ||
198 | group = wwwrun | ||
199 | listen.owner = wwwrun | ||
200 | listen.group = wwwrun | ||
201 | pm = dynamic | ||
202 | pm.max_children = 60 | ||
203 | pm.start_servers = 2 | ||
204 | pm.min_spare_servers = 1 | ||
205 | pm.max_spare_servers = 10 | ||
206 | |||
207 | php_admin_value[open_basedir] = "/run/wrappers/bin/sendmail:/var/lib/ftp/devtools.immae.eu:/tmp" | ||
208 | ''; | ||
209 | tools = '' | 252 | tools = '' |
210 | listen = /var/run/phpfpm/tools.sock | 253 | listen = /var/run/phpfpm/tools.sock |
211 | user = wwwrun | 254 | user = wwwrun |
@@ -250,21 +293,6 @@ in { | |||
250 | ln -s ${kanboard.webRoot} $out/webapps/${kanboard.apache.webappName} | 293 | ln -s ${kanboard.webRoot} $out/webapps/${kanboard.apache.webappName} |
251 | ''; | 294 | ''; |
252 | 295 | ||
253 | systemd.services.tt-rss = { | ||
254 | description = "Tiny Tiny RSS feeds update daemon"; | ||
255 | serviceConfig = { | ||
256 | User = "wwwrun"; | ||
257 | ExecStart = "${pkgs.php}/bin/php ${ttrss.webRoot}/update.php --daemon"; | ||
258 | StandardOutput = "syslog"; | ||
259 | StandardError = "syslog"; | ||
260 | PermissionsStartOnly = true; | ||
261 | }; | ||
262 | |||
263 | wantedBy = [ "multi-user.target" ]; | ||
264 | requires = ["postgresql.service"]; | ||
265 | after = ["network.target" "postgresql.service"]; | ||
266 | }; | ||
267 | |||
268 | }; | 296 | }; |
269 | } | 297 | } |
270 | 298 | ||
diff --git a/nixops/modules/websites/tools/tools/roundcubemail.nix b/nixops/modules/websites/tools/tools/roundcubemail.nix index 6177ff3..8974d1b 100644 --- a/nixops/modules/websites/tools/tools/roundcubemail.nix +++ b/nixops/modules/websites/tools/tools/roundcubemail.nix | |||
@@ -102,7 +102,6 @@ rec { | |||
102 | ''; | 102 | ''; |
103 | socket = "/var/run/phpfpm/roundcubemail.sock"; | 103 | socket = "/var/run/phpfpm/roundcubemail.sock"; |
104 | pool = '' | 104 | pool = '' |
105 | listen = ${socket} | ||
106 | user = ${apache.user} | 105 | user = ${apache.user} |
107 | group = ${apache.group} | 106 | group = ${apache.group} |
108 | listen.owner = ${apache.user} | 107 | listen.owner = ${apache.user} |