X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fwebsites%2Ftools%2Ftools%2Fdefault.nix;h=0cb7a1062ebc7520320d2b37b8a569b2dfd9f8bf;hb=a8ef1adb4a90c2524ac09a85463598e5d41d2a4a;hp=2fe477592e580d38585d8a4c1bcb7cb78ff9e8dd;hpb=d10ecf142347c037a9359f88f5830796e9f9218c;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/websites/tools/tools/default.nix b/modules/private/websites/tools/tools/default.nix index 2fe4775..0cb7a10 100644 --- a/modules/private/websites/tools/tools/default.nix +++ b/modules/private/websites/tools/tools/default.nix @@ -38,6 +38,17 @@ let grocy = pkgs.callPackage ./grocy.nix { inherit (pkgs.webapps) grocy; }; + phpbb = pkgs.callPackage ./phpbb.nix { + phpbb = (pkgs.webapps.phpbb.withLangs (l: [ l.fr ])).withExts (e: [ + e.alfredoramos.markdown e.davidiq.mailinglist e.dmzx.mchat + e.empteintesduweb.monitoranswers e.lr94.autosubscribe + e.phpbbmodders.adduser ]); + }; + webhooks = pkgs.callPackage ./webhooks.nix { + env = config.myEnv.tools.webhooks; + }; + + landing = pkgs.callPackage ./landing.nix {}; cfg = config.myServices.websites.tools.tools; pcfg = config.services.phpfpm.pools; @@ -53,7 +64,8 @@ in { ++ shaarli.keys ++ ttrss.keys ++ wallabag.keys - ++ yourls.keys; + ++ yourls.keys + ++ webhooks.keys; services.duplyBackup.profiles = { dokuwiki = dokuwiki.backups; @@ -63,6 +75,7 @@ in { shaarli = shaarli.backups; ttrss = ttrss.backups; wallabag = wallabag.backups; + phpbb = phpbb.backups; }; services.websites.env.tools.modules = @@ -75,6 +88,7 @@ in { ++ rompr.apache.modules ++ shaarli.apache.modules ++ dokuwiki.apache.modules + ++ phpbb.apache.modules ++ ldap.apache.modules ++ kanboard.apache.modules; @@ -104,21 +118,18 @@ in { certName = "eldiron"; addToCerts = true; hosts = ["tools.immae.eu" ]; - root = "/var/lib/ftp/tools.immae.eu"; + root = landing; extraConfig = [ '' RedirectMatch 301 ^/vpn(.*)$ https://vpn.immae.eu$1 RedirectMatch 301 ^/roundcube(.*)$ https://mail.immae.eu/roundcube$1 RedirectMatch 301 ^/jappix(.*)$ https://im.immae.fr/converse - RewriteEngine On - RewriteCond %{DOCUMENT_ROOT}/homer%{REQUEST_URI} -f - RewriteRule ^(.*)$ /homer$1 [QSA,L] - - - DirectoryIndex index.php index.htm index.html - AllowOverride all + + DirectoryIndex index.html + AllowOverride None Require all granted + SetHandler "proxy:unix:${pcfg.tools.socket}|fcgi://localhost" @@ -135,6 +146,7 @@ in { (ldap.apache.vhostConf pcfg.ldap.socket) (kanboard.apache.vhostConf pcfg.kanboard.socket) (grocy.apache.vhostConf pcfg.grocy.socket) + (phpbb.apache.vhostConf pcfg.phpbb.socket) '' Alias /paste /var/lib/fiche @@ -143,6 +155,23 @@ in { Require all granted Options -Indexes + + Alias /BIP39 /var/lib/buildbot/outputs/bip39 + + DirectoryIndex index.html + AllowOverride None + Require all granted + + + Alias /webhooks ${config.secrets.location}/webapps/webhooks + + Options -Indexes + Require all granted + AllowOverride None + + SetHandler "proxy:unix:${pcfg.tools.socket}|fcgi://localhost" + + '' ]; }; @@ -184,6 +213,10 @@ in { after = lib.mkAfter dokuwiki.phpFpm.serviceDeps; wants = dokuwiki.phpFpm.serviceDeps; }; + phpfpm-phpbb = { + after = lib.mkAfter phpbb.phpFpm.serviceDeps; + wants = phpbb.phpFpm.serviceDeps; + }; phpfpm-kanboard = { after = lib.mkAfter kanboard.phpFpm.serviceDeps; wants = kanboard.phpFpm.serviceDeps; @@ -253,7 +286,13 @@ in { # Needed to avoid clashes in browser cookies (same domain) "php_value[session.name]" = "ToolsPHPSESSID"; - "php_admin_value[open_basedir]" = "/run/wrappers/bin/sendmail:/var/lib/ftp/tools.immae.eu:/tmp"; + "php_admin_value[open_basedir]" = builtins.concatStringsSep ":" [ + "/run/wrappers/bin/sendmail" landing "/tmp" + "${config.secrets.location}/webapps/webhooks" + ]; + }; + phpEnv = { + CONTACT_EMAIL = config.myEnv.tools.contact; }; }; devtools = { @@ -308,6 +347,11 @@ in { group = "wwwrun"; settings = dokuwiki.phpFpm.pool; }; + phpbb = { + user = "wwwrun"; + group = "wwwrun"; + settings = phpbb.phpFpm.pool; + }; ldap = { user = "wwwrun"; group = "wwwrun"; @@ -335,6 +379,7 @@ in { rompr = rompr.activationScript; shaarli = shaarli.activationScript; dokuwiki = dokuwiki.activationScript; + phpbb = phpbb.activationScript; kanboard = kanboard.activationScript; ldap = ldap.activationScript; }; @@ -342,6 +387,7 @@ in { services.websites.webappDirs = { _adminer = adminer.webRoot; "${dokuwiki.apache.webappName}" = dokuwiki.webRoot; + "${phpbb.apache.webappName}" = phpbb.webRoot; "${ldap.apache.webappName}" = "${ldap.webRoot}/htdocs"; "${rompr.apache.webappName}" = rompr.webRoot; "${shaarli.apache.webappName}" = shaarli.webRoot;