aboutsummaryrefslogtreecommitdiff
path: root/modules/private/websites/default.nix
diff options
context:
space:
mode:
authorIsmaël Bouya <ismael.bouya@normalesup.org>2020-07-02 13:05:22 +0200
committerIsmaël Bouya <ismael.bouya@normalesup.org>2020-07-02 13:05:22 +0200
commit36861e9520e7d8beac401dfa222e1fd5f5bd55c5 (patch)
treefa58dcc85f0568019a5696e2973b05fb09790d3e /modules/private/websites/default.nix
parent38ac9a5749743a95d27a5231d05eb93c2340e6bc (diff)
downloadNix-36861e9520e7d8beac401dfa222e1fd5f5bd55c5.tar.gz
Nix-36861e9520e7d8beac401dfa222e1fd5f5bd55c5.tar.zst
Nix-36861e9520e7d8beac401dfa222e1fd5f5bd55c5.zip
Add Moomin in integration headers
Diffstat (limited to 'modules/private/websites/default.nix')
-rw-r--r--modules/private/websites/default.nix10
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/private/websites/default.nix b/modules/private/websites/default.nix
index f84567e..c366fd2 100644
--- a/modules/private/websites/default.nix
+++ b/modules/private/websites/default.nix
@@ -89,6 +89,14 @@ let
89 }; 89 };
90 makeModules = lib.lists.flatten (lib.attrsets.mapAttrsToList (n: v: v.modules or []) apacheConfig); 90 makeModules = lib.lists.flatten (lib.attrsets.mapAttrsToList (n: v: v.modules or []) apacheConfig);
91 makeExtraConfig = (builtins.filter (x: x != null) (lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) apacheConfig)); 91 makeExtraConfig = (builtins.filter (x: x != null) (lib.attrsets.mapAttrsToList (n: v: v.extraConfig or null) apacheConfig));
92 moomin = let
93 lines = lib.splitString "\n" (lib.fileContents ./moomin.txt);
94 pad = width: str: let
95 padWidth = width - lib.stringLength str;
96 padding = lib.concatStrings (lib.genList (lib.const "0") padWidth);
97 in lib.optionalString (padWidth > 0) padding + str;
98 in
99 lib.imap0 (i: e: ''Header always set "X-Moomin-${pad 2 (builtins.toString i)}" "${e}"'') lines;
92in 100in
93{ 101{
94 options.myServices.websites.enable = lib.mkEnableOption "enable websites"; 102 options.myServices.websites.enable = lib.mkEnableOption "enable websites";
@@ -169,7 +177,7 @@ in
169 let ips = config.myEnv.servers.eldiron.ips.integration; 177 let ips = config.myEnv.servers.eldiron.ips.integration;
170 in [ips.ip4] ++ (ips.ip6 or []); 178 in [ips.ip4] ++ (ips.ip6 or []);
171 modules = makeModules; 179 modules = makeModules;
172 extraConfig = makeExtraConfig; 180 extraConfig = makeExtraConfig ++ moomin;
173 fallbackVhost = { 181 fallbackVhost = {
174 certName = "eldiron"; 182 certName = "eldiron";
175 hosts = ["eldiron.immae.eu" ]; 183 hosts = ["eldiron.immae.eu" ];