X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fmodules%2Fwebsites%2Ftools%2Ftools%2Fdefault.nix;h=f51510ff614668c522f44acbd39bf264ac146fa4;hb=0962f4e8bdfc1ede00c4d8de7e9a1a383283f47a;hp=7781928cfa86cf094779e77ca4c8d3df44e92079;hpb=a95ab089420d6edf24f22500dabf7876d329dc91;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/modules/websites/tools/tools/default.nix b/nixops/modules/websites/tools/tools/default.nix index 7781928..f51510f 100644 --- a/nixops/modules/websites/tools/tools/default.nix +++ b/nixops/modules/websites/tools/tools/default.nix @@ -8,7 +8,15 @@ let inherit (mylibs) fetchedGithub fetchedGit; env = myconfig.env.tools.ttrss; }; - roundcubemail = pkgs.callPackage ./roundcubemail.nix { env = myconfig.env.tools.roundcubemail; }; + roundcubemail = pkgs.callPackage ./roundcubemail.nix { + inherit (mylibs) fetchedGithub; + env = myconfig.env.tools.roundcubemail; + }; + rainloop = pkgs.callPackage ./rainloop.nix {}; + kanboard = pkgs.callPackage ./kanboard.nix { + inherit (mylibs) fetchedGithub; + env = myconfig.env.tools.kanboard; + }; wallabag = pkgs.callPackage ./wallabag.nix { env = myconfig.env.tools.wallabag; }; yourls = pkgs.callPackage ./yourls.nix { inherit (mylibs) fetchedGithub; @@ -36,6 +44,19 @@ in { config = lib.mkIf cfg.enable { security.acme.certs."eldiron".extraDomains."tools.immae.eu" = null; + security.acme.certs."eldiron".extraDomains."devtools.immae.eu" = null; + + deployment.keys = + kanboard.keys + // ldap.keys + // roundcubemail.keys + // shaarli.keys + // ttrss.keys + // wallabag.keys + // yourls.keys; + + services.myWebsites.integration.modules = + rainloop.apache.modules; services.myWebsites.tools.modules = [ "proxy_fcgi" ] @@ -48,10 +69,20 @@ in { ++ rompr.apache.modules ++ shaarli.apache.modules ++ dokuwiki.apache.modules - ++ ldap.apache.modules; + ++ ldap.apache.modules + ++ kanboard.apache.modules; services.ympd = ympd.config // { enable = true; }; + services.myWebsites.integration.vhostConfs.devtools = { + certName = "eldiron"; + hosts = ["devtools.immae.eu" ]; + root = null; + extraConfig = [ + rainloop.apache.vhostConf + ]; + }; + services.myWebsites.tools.vhostConfs.tools = { certName = "eldiron"; hosts = ["tools.immae.eu" ]; @@ -77,9 +108,49 @@ in { shaarli.apache.vhostConf dokuwiki.apache.vhostConf ldap.apache.vhostConf + kanboard.apache.vhostConf ]; }; + security.acme.certs."eldiron".extraDomains."outils.immae.eu" = null; + services.myWebsites.tools.vhostConfs.outils = { + certName = "eldiron"; + hosts = [ "outils.immae.eu" ]; + root = null; + extraConfig = [ + '' + RedirectMatch 301 ^/mediagoblin(.*)$ https://mgoblin.immae.eu$1 + + RedirectMatch 301 ^/ether(.*)$ https://ether.immae.eu$1 + + RedirectMatch 301 ^/nextcloud(.*)$ https://cloud.immae.eu$1 + RedirectMatch 301 ^/owncloud(.*)$ https://cloud.immae.eu$1 + + RedirectMatch 301 ^/carddavmate(.*)$ https://dav.immae.eu/infcloud$1 + RedirectMatch 301 ^/caldavzap(.*)$ https://dav.immae.eu/infcloud$1 + RedirectMatch 301 ^/caldav.php(.*)$ https://dav.immae.eu/caldav.php$1 + RedirectMatch 301 ^/davical(.*)$ https://dav.immae.eu/davical$1 + + RedirectMatch 301 ^/taskweb(.*)$ https://task.immae.eu/taskweb$1 + + RedirectMatch 301 ^/(.*)$ https://tools.immae.eu/$1 + '' + ]; + }; + + services.myPhpfpm.serviceDependencies = { + dokuwiki = dokuwiki.phpFpm.serviceDeps; + kanboard = kanboard.phpFpm.serviceDeps; + ldap = ldap.phpFpm.serviceDeps; + rainloop = rainloop.phpFpm.serviceDeps; + roundcubemail = roundcubemail.phpFpm.serviceDeps; + shaarli = shaarli.phpFpm.serviceDeps; + ttrss = ttrss.phpFpm.serviceDeps; + wallabag = wallabag.phpFpm.serviceDeps; + yourls = yourls.phpFpm.serviceDeps; + }; + + services.myPhpfpm.poolPhpConfigs.roundcubemail = roundcubemail.phpFpm.phpConfig; services.myPhpfpm.poolConfigs = { adminer = adminer.phpFpm.pool; ttrss = ttrss.phpFpm.pool; @@ -90,6 +161,8 @@ 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 user = wwwrun @@ -116,6 +189,8 @@ in { rompr = rompr.activationScript; shaarli = shaarli.activationScript; dokuwiki = dokuwiki.activationScript; + rainloop = rainloop.activationScript; + kanboard = kanboard.activationScript; }; system.extraSystemBuilderCmds = '' @@ -128,11 +203,13 @@ in { ln -s ${ttrss.webRoot} $out/webapps/${ttrss.apache.webappName} ln -s ${wallabag.webRoot} $out/webapps/${wallabag.apache.webappName} ln -s ${yourls.webRoot} $out/webapps/${yourls.apache.webappName} + ln -s ${rainloop.webRoot} $out/webapps/${rainloop.apache.webappName} + ln -s ${kanboard.webRoot} $out/webapps/${kanboard.apache.webappName} ''; - nixpkgs.config.packageOverrides = oldpkgs: rec { - ympd = oldpkgs.ympd.overrideAttrs(old: mylibs.fetchedGithub ./ympd.json); - }; + nixpkgs.overlays = [ (self: super: rec { + ympd = super.ympd.overrideAttrs(old: mylibs.fetchedGithub ./ympd.json); + }) ]; systemd.services.tt-rss = { description = "Tiny Tiny RSS feeds update daemon";