_: let retiredHost = "retired.dgnum.eu"; mkSubs = attrs: builtins.concatLists ( builtins.attrValues (builtins.mapAttrs (domain: builtins.map (s: "${s}.${domain}")) attrs) ); in { dgn-redirections = { inherit retiredHost; permanent = { "calendrier.eleves.ens.fr" = "calendrier.dgnum.eu"; "docs.beta.rz.ens.wtf" = "pads.dgnum.eu"; "git.rz.ens.wtf" = "git.dgnum.eu"; "notion.rz.ens.wtf" = "docs.dgnum.eu"; "nuage.beta.rz.ens.wtf" = "cloud.dgnum.eu"; "rdv.dgnum.eu" = "meet.dgnum.eu"; "www.bda.ens.fr" = "bda.ens.fr"; "bda.wp.dgnum.eu" = "bda.ens.fr"; "www.cineclub.ens.fr" = "cineclub.ens.fr"; "cineclub.wp.dgnum.eu" = "cineclub.ens.fr"; "www.bds.ens.fr" = "bds.ens.fr"; "bds.wp.dgnum.eu" = "bds.ens.fr"; "www.tuteurs.ens.fr" = "tuteurs.ens.fr"; "www.interq.ens.fr" = "interq.ens.fr"; }; temporary = { "pub.dgnum.eu".to = "https://www.instagram.com/dgnum_eu/"; }; retired = mkSubs { "ens.fr" = [ "alevins" "www.climatenavigator" ]; "ens.wtf" = [ "photos" ]; "rz.ens.wtf" = [ "s3" "cdn" ]; "beta.rz.ens.wtf" = [ "todo" "minecraft" "factorio" "home" "pads" "api.pads" "files.pads" "sandbox.pads" "jurisprudens" "rstudio" ]; }; }; services.nginx.virtualHosts.${retiredHost}.default = true; }