X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fwebsites%2Ftools%2Ftools%2Fdefault.nix;h=02ff224f9a563147485f145c21b277b72fabde85;hb=3f453c7d8f79dcf2fba94287ec286d55eceb99d1;hp=94a2be164d7fe15d2aef7aaf7d431e5cd5ddafdc;hpb=4288c2f2431fb782b0d512b1b3749187f2374b6a;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 94a2be1..02ff224 100644 --- a/modules/private/websites/tools/tools/default.nix +++ b/modules/private/websites/tools/tools/default.nix @@ -1,44 +1,39 @@ -{ lib, pkgs, config, myconfig, ... }: +{ lib, pkgs, config, ... }: let adminer = pkgs.callPackage ./adminer.nix { inherit (pkgs.webapps) adminer; }; ympd = pkgs.callPackage ./ympd.nix { - env = myconfig.env.tools.ympd; + env = config.myEnv.tools.ympd; }; ttrss = pkgs.callPackage ./ttrss.nix { inherit (pkgs.webapps) ttrss ttrss-plugins; - env = myconfig.env.tools.ttrss; + env = config.myEnv.tools.ttrss; }; - roundcubemail = pkgs.callPackage ./roundcubemail.nix { - inherit (pkgs.webapps) roundcubemail roundcubemail-plugins roundcubemail-skins; - env = myconfig.env.tools.roundcubemail; - }; - rainloop = pkgs.callPackage ./rainloop.nix {}; kanboard = pkgs.callPackage ./kanboard.nix { - env = myconfig.env.tools.kanboard; + env = config.myEnv.tools.kanboard; }; wallabag = pkgs.callPackage ./wallabag.nix { inherit (pkgs.webapps) wallabag; - env = myconfig.env.tools.wallabag; + env = config.myEnv.tools.wallabag; }; yourls = pkgs.callPackage ./yourls.nix { inherit (pkgs.webapps) yourls yourls-plugins; - env = myconfig.env.tools.yourls; + env = config.myEnv.tools.yourls; }; rompr = pkgs.callPackage ./rompr.nix { inherit (pkgs.webapps) rompr; - env = myconfig.env.tools.rompr; + env = config.myEnv.tools.rompr; }; shaarli = pkgs.callPackage ./shaarli.nix { - env = myconfig.env.tools.shaarli; + env = config.myEnv.tools.shaarli; }; dokuwiki = pkgs.callPackage ./dokuwiki.nix { inherit (pkgs.webapps) dokuwiki dokuwiki-plugins; }; ldap = pkgs.callPackage ./ldap.nix { inherit (pkgs.webapps) phpldapadmin; - env = myconfig.env.tools.phpldapadmin; + env = config.myEnv.tools.phpldapadmin; }; cfg = config.myServices.websites.tools.tools; @@ -51,21 +46,25 @@ in { secrets.keys = kanboard.keys ++ ldap.keys - ++ roundcubemail.keys ++ shaarli.keys ++ ttrss.keys ++ wallabag.keys ++ yourls.keys; - services.websites.integration.modules = - rainloop.apache.modules; + services.duplyBackup.profiles = { + dokuwiki = dokuwiki.backups; + kanboard = kanboard.backups; + rompr = rompr.backups; + shaarli = shaarli.backups; + ttrss = ttrss.backups; + wallabag = wallabag.backups; + }; - services.websites.tools.modules = + services.websites.env.tools.modules = [ "proxy_fcgi" ] ++ adminer.apache.modules ++ ympd.apache.modules ++ ttrss.apache.modules - ++ roundcubemail.apache.modules ++ wallabag.apache.modules ++ yourls.apache.modules ++ rompr.apache.modules @@ -74,7 +73,7 @@ in { ++ ldap.apache.modules ++ kanboard.apache.modules; - services.websites.integration.vhostConfs.devtools = { + services.websites.env.integration.vhostConfs.devtools = { certName = "eldiron"; addToCerts = true; hosts = ["devtools.immae.eu" ]; @@ -90,17 +89,19 @@ in { '' - rainloop.apache.vhostConf ]; }; - services.websites.tools.vhostConfs.tools = { + services.websites.env.tools.vhostConfs.tools = { certName = "eldiron"; addToCerts = true; hosts = ["tools.immae.eu" ]; root = "/var/lib/ftp/tools.immae.eu"; extraConfig = [ '' + RedirectMatch 301 ^/roundcube(.*)$ https://mail.immae.eu/roundcube$1 + RedirectMatch 301 ^/jappix(.*)$ https://im.immae.fr/converse + DirectoryIndex index.php index.htm index.html AllowOverride all @@ -113,7 +114,6 @@ in { adminer.apache.vhostConf ympd.apache.vhostConf ttrss.apache.vhostConf - roundcubemail.apache.vhostConf wallabag.apache.vhostConf yourls.apache.vhostConf rompr.apache.vhostConf @@ -124,10 +124,10 @@ in { ]; }; - services.websites.tools.vhostConfs.outils = { + services.websites.env.tools.vhostConfs.outils = { certName = "eldiron"; addToCerts = true; - hosts = [ "outils.immae.eu" ]; + hosts = [ "outils.immae.eu" "outils.immae.fr" ]; root = null; extraConfig = [ '' @@ -145,6 +145,10 @@ in { RedirectMatch 301 ^/taskweb(.*)$ https://task.immae.eu/taskweb$1 + RedirectMatch 301 ^/roundcube(.*)$ https://mail.immae.eu/roundcube$1 + + RedirectMatch 301 ^/jappix(.*)$ https://im.immae.fr/converse + RedirectMatch 301 ^/(.*)$ https://tools.immae.eu/$1 '' ]; @@ -163,14 +167,6 @@ in { after = lib.mkAfter ldap.phpFpm.serviceDeps; wants = ldap.phpFpm.serviceDeps; }; - phpfpm-rainloop = { - after = lib.mkAfter rainloop.phpFpm.serviceDeps; - wants = rainloop.phpFpm.serviceDeps; - }; - phpfpm-roundcubemail = { - after = lib.mkAfter roundcubemail.phpFpm.serviceDeps; - wants = roundcubemail.phpFpm.serviceDeps; - }; phpfpm-shaarli = { after = lib.mkAfter shaarli.phpFpm.serviceDeps; wants = shaarli.phpFpm.serviceDeps; @@ -212,10 +208,9 @@ in { }; }; - services.phpfpm.pools.roundcubemail = { - listen = roundcubemail.phpFpm.socket; - extraConfig = roundcubemail.phpFpm.pool; - phpOptions = config.services.phpfpm.phpOptions + roundcubemail.phpFpm.phpConfig; + services.filesWatcher.ympd = { + restart = true; + paths = [ "/var/secrets/mpd" ]; }; services.phpfpm.pools.devtools = { @@ -234,6 +229,7 @@ in { php_admin_value[open_basedir] = "/run/wrappers/bin/sendmail:/var/lib/ftp/devtools.immae.eu:/tmp" ''; phpOptions = config.services.phpfpm.phpOptions + '' + extension=${pkgs.php}/lib/php/extensions/mysqli.so extension=${pkgs.phpPackages.redis}/lib/php/extensions/redis.so extension=${pkgs.phpPackages.apcu}/lib/php/extensions/apcu.so zend_extension=${pkgs.php}/lib/php/extensions/opcache.so @@ -249,7 +245,6 @@ in { shaarli = shaarli.phpFpm.pool; dokuwiki = dokuwiki.phpFpm.pool; ldap = ldap.phpFpm.pool; - rainloop = rainloop.phpFpm.pool; kanboard = kanboard.phpFpm.pool; tools = '' listen = /var/run/phpfpm/tools.sock @@ -272,13 +267,11 @@ in { system.activationScripts = { adminer = adminer.activationScript; ttrss = ttrss.activationScript; - roundcubemail = roundcubemail.activationScript; wallabag = wallabag.activationScript; yourls = yourls.activationScript; rompr = rompr.activationScript; shaarli = shaarli.activationScript; dokuwiki = dokuwiki.activationScript; - rainloop = rainloop.activationScript; kanboard = kanboard.activationScript; ldap = ldap.activationScript; }; @@ -288,15 +281,20 @@ in { "${dokuwiki.apache.webappName}" = dokuwiki.webRoot; "${ldap.apache.webappName}" = "${ldap.webRoot}/htdocs"; "${rompr.apache.webappName}" = rompr.webRoot; - "${roundcubemail.apache.webappName}" = roundcubemail.webRoot; "${shaarli.apache.webappName}" = shaarli.webRoot; "${ttrss.apache.webappName}" = ttrss.webRoot; "${wallabag.apache.webappName}" = wallabag.webRoot; "${yourls.apache.webappName}" = yourls.webRoot; - "${rainloop.apache.webappName}" = rainloop.webRoot; "${kanboard.apache.webappName}" = kanboard.webRoot; }; + services.websites.env.tools.watchPaths = [ + "/var/secrets/webapps/tools-shaarli" + ]; + services.filesWatcher.phpfpm-wallabag = { + restart = true; + paths = [ "/var/secrets/webapps/tools-wallabag" ]; + }; }; }