+
+ services.httpd = makeService "tools" config.services.myWebsites.tools;
+ services.myWebsites.tools.modules =
+ mypkgs.adminer.apache.modules ++
+ mypkgs.nextcloud.apache.modules ++
+ mypkgs.ympd.apache.modules ++
+ mypkgs.mantisbt.apache.modules ++
+ mypkgs.ttrss.apache.modules ++
+ mypkgs.roundcubemail.apache.modules ++
+ pkgs.lib.lists.flatten (pkgs.lib.attrsets.mapAttrsToList (n: v: v.modules or []) cfg.apacheConfig);
+ services.myWebsites.tools.extraConfig = (builtins.filter (x: x != null) (pkgs.lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) cfg.apacheConfig));
+ # FIXME: move them all to separate modules
+ services.myWebsites.tools.vhostConfs.eldiron = {
+ certName = "eldiron";
+ hosts = ["eldiron.immae.eu" ];
+ root = ../../www;
+ extraConfig = [ "DirectoryIndex index.htm" ];
+ };
+ services.myWebsites.tools.vhostConfs.db-1 = {
+ certName = "eldiron";
+ hosts = ["db-1.immae.eu" ];
+ root = null;
+ extraConfig = [ mypkgs.adminer.apache.vhostConf ];
+ };
+ services.myWebsites.tools.vhostConfs.tools = {
+ certName = "eldiron";
+ hosts = ["tools.immae.eu" ];
+ root = null;
+ extraConfig = [
+ mypkgs.adminer.apache.vhostConf
+ mypkgs.ympd.apache.vhostConf
+ mypkgs.ttrss.apache.vhostConf
+ mypkgs.roundcubemail.apache.vhostConf
+ ];
+ };
+ services.myWebsites.tools.vhostConfs.dav = {
+ certName = "eldiron";
+ hosts = ["dav.immae.eu" ];
+ root = null;
+ extraConfig = [
+ mypkgs.infcloud.apache.vhostConf
+ mypkgs.davical.apache.vhostConf
+ ];
+ };
+ services.myWebsites.tools.vhostConfs.cloud = {
+ certName = "eldiron";
+ hosts = ["cloud.immae.eu" ];
+ root = mypkgs.nextcloud.webRoot;
+ extraConfig = [
+ mypkgs.nextcloud.apache.vhostConf
+ ];
+ };
+ services.myWebsites.tools.vhostConfs.git.extraConfig = [
+ mypkgs.mantisbt.apache.vhostConf
+ ''
+ RewriteEngine on
+ RewriteCond %{REQUEST_URI} ^/releases
+ RewriteRule /releases(.*) https://release.immae.eu$1 [P,L]
+ ''
+ ];