infrastructure/machines/web01/metis/default.nix

32 lines
823 B
Nix
Raw Normal View History

{ lib, pkgs, sources, ... }:
let
host = "calendrier.dgnum.eu";
package = pkgs.callPackage ./package.nix { src = sources.metis; };
providers = {
klub-reseau = "nuage.beta.rz.ens.wtf";
eleves-ens = "cloud.eleves.ens.fr";
frama-agenda = "framagenda.org";
};
in {
services.nginx.virtualHosts.${host} = {
enableACME = true;
forceSSL = true;
root = package;
locations = lib.mapAttrs' (name: attrs:
lib.nameValuePair "/cal/${name}/" {
extraConfig = ''
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://${
providers.${name}
}/remote.php/dav/public-calendars/;
'';
}) providers;
};
}