public-inbox: move to mails.sourcephile.fr
authorJulien Moutinho <julm@sourcephile.fr>
Tue, 2 Jun 2020 22:11:33 +0000 (00:11 +0200)
committerJulien Moutinho <julm@sourcephile.fr>
Tue, 2 Jun 2020 22:11:33 +0000 (00:11 +0200)
servers/mermet/knot/sourcephile.fr.nix
servers/mermet/nginx/sourcephile.fr/git.nix
servers/mermet/nginx/sourcephile.fr/public-inbox.nix
servers/mermet/nginx/sourcephile.fr/www.nix
servers/mermet/postfix/sourcephile.fr.nix
servers/mermet/public-inbox.nix

index bc97600f66932575ab4e9c7f93ab12f088cf827d..1d261123f16499f14dd8d8f2c81792045495f628 100644 (file)
@@ -98,6 +98,7 @@ services.knot.zones."${domain}" = {
     git          A ${mermetIPv4}
     imap         A ${mermetIPv4}
     mail         A ${mermetIPv4}
+    mails        A ${mermetIPv4}
     news         A ${mermetIPv4}
     public-inbox A ${mermetIPv4}
     ns           A ${mermetIPv4}
index 648c868e9ee1e153662ce9cb7322bd2ec516f7f7..689f04666cb36372b460697ac289d341a83bdc3f 100644 (file)
@@ -17,6 +17,7 @@ services.nginx = {
   '';
   virtualHosts."${srv}" = {
     serverName = "${srv}.${domain}";
+    serverAliases = [ "code.${domain}" ];
     forceSSL = true;
     useACMEHost = domain;
     extraConfig = ''
index 8049ee4d7dd9b30558df6b87ef1792d4fb9428c4..9cb2f3175d6bf3a6def194543135ac1819389b29 100644 (file)
@@ -8,6 +8,7 @@ in
 services.nginx = {
   virtualHosts."${srv}" = {
     serverName = "${srv}.${domain}";
+    serverAliases = [ "mails.${domain}" ];
     forceSSL = true;
     useACMEHost = domain;
     #root = "/home/julm/work/sourcephile/txt";
@@ -15,9 +16,9 @@ services.nginx = {
       access_log ${nginx.logDir}/${domain}/${srv}/access.log json buffer=32k;
       error_log  ${nginx.logDir}/${domain}/${srv}/error.log warn;
     '';
-    locations."/".return = "302 /archives";
-    locations."= /archives".return = "302 /archives/";
-    locations."/archives".proxyPass = "http://unix:${builtins.head public-inbox.http.listenStreams}:/archives";
+    locations."/".return = "302 /inbox";
+    locations."= /inbox".return = "302 /inbox/";
+    locations."/inbox".proxyPass = "http://unix:${builtins.head public-inbox.http.listenStreams}:/inbox";
     locations."= /style/light.css".alias = pkgs.writeText "light.css" ''
       * { background:#fff; color:#000 }
       
index 0a687fd7b5c74a851a01e394192e6286c46f9255..3a54f9fce67e559e05e2bc9c3bcbb0c83bf0102e 100644 (file)
@@ -22,11 +22,11 @@ services.nginx = {
       fancyindex_name_length 255;
       fancyindex_exact_size off;
     '';
-    locations."/git".return = "302 https://git.${domain}";
-    locations."/versions".return = "302 https://git.${domain}";
-    locations."/codes_sources".return = "302 http://git.${domain}";
-    locations."= /mails/archives".return = "302 /mails/archives/";
-    locations."/mails/archives".proxyPass = "http://unix:${builtins.head public-inbox.http.listenStreams}:/mails/archives" ;
+    locations."/git".return = "302 https://git.${domain}/$request_uri";
+    locations."/versions".return = "302 https://git.${domain}/$request_uri";
+    locations."/codes_sources".return = "302 http://git.${domain}/$request_uri";
+    locations."/mails".return = "302 https://mails.${domain}/$request_uri";
+    locations."/listes".return = "302 https://mails.${domain}/$request_uri";
   };
 };
 systemd.services.nginx.preStart = lib.mkBefore ''
index 9ba0e659be98e9e75fdb74509883c19baa1d0798..fef76f3cb66386c0eca46530f5363d611430b87e 100644 (file)
@@ -16,6 +16,7 @@ services.postfix = {
     infra@${domain}         public-inbox@localhost
     labo@${domain}          public-inbox@localhost
     membres@${domain}       public-inbox@localhost
+    test@${domain}          public-inbox@localhost
   '';
   tls_server_sni_maps =
     let chain = [
index 8bcb9f1ed4aa7f224198c302a99d630364c0951d..fb59d090ad607099529db6c98d2dd427dd913b00 100644 (file)
@@ -14,12 +14,12 @@ services.public-inbox = {
   #  [ "href=https://${domain}/lists/public-inbox.css" ];
 
   http.mounts = [
-    "https://public-inbox.${domain}/archives"
-    "https://${domain}/mails/archives"
+    "https://mails.${domain}/inbox"
+    "https://public-inbox.${domain}/inbox"
   ];
   wwwListing = "match=domain";
   config.publicinbox = {
-    css = [ "href=https://public-inbox.${domain}/style/light.css" ];
+    css = [ "href=https://mails.${domain}/style/light.css" ];
   };
 
   nntpServer = [ "nntps://news.${domain}" ];
@@ -34,10 +34,11 @@ services.public-inbox = {
         "public-inbox+bistrot@${domain}"
       ];
       description = ''
-        Discussions publiques sans sujet particulier,
+        bistrot@${domain} :
+        discussions publiques sans sujet particulier,
         simplement pour la camaraderie à bord de Sourcephile.
       '';
-      url = "https://${domain}/mails/archives/bistrot";
+      url = "https://mails.${domain}/inbox/bistrot";
       newsgroup = "inbox.comp.sourcephile.bistrot";
     };
     entraide = {
@@ -46,9 +47,10 @@ services.public-inbox = {
         "public-inbox+entraide@${domain}"
       ];
       description = ''
-        Discussions publiques pour l'entraide à bord de Sourcephile.
+        entraide@${domain} :
+        discussions publiques pour l'entraide à bord de Sourcephile.
       '';
-      url = "https://public-inbox.${domain}/archives/entraide";
+      url = "https://mails.${domain}/inbox/entraide";
       newsgroup = "inbox.comp.sourcephile.entraide";
     };
     environnement = {
@@ -57,10 +59,11 @@ services.public-inbox = {
         "public-inbox+environnement@${domain}"
       ];
       description = ''
-        Discussions publiques pour se soucier de l'environnement
+        environnement@${domain} :
+        discussions publiques pour se soucier de l'environnement
         des activités de Sourcephile.
       '';
-      url = "https://public-inbox.${domain}/archives/environnement";
+      url = "https://mails.${domain}/inbox/environnement";
       newsgroup = "inbox.comp.sourcephile.environnement";
     };
     infra = {
@@ -69,10 +72,11 @@ services.public-inbox = {
         "public-inbox+infra@${domain}"
       ];
       description = ''
-        Discussions publiques à propos de l'infrastructure,
+        infra@${domain} :
+        discussions publiques à propos de l'infrastructure,
         notamment informatique, de Sourcephile.
       '';
-      url = "https://public-inbox.${domain}/archives/infra";
+      url = "https://mails.${domain}/inbox/infra";
       newsgroup = "inbox.comp.sourcephile.infra";
     };
     labo = {
@@ -81,10 +85,11 @@ services.public-inbox = {
         "public-inbox+labo@${domain}"
       ];
       description = ''
-        Discussions publiques concernant les recherches scientifiques
+        labo@${domain} :
+        discussions publiques concernant les recherches scientifiques
         et développements informatiques de Sourcephile.
       '';
-      url = "https://public-inbox.${domain}/archives/labo";
+      url = "https://mails.${domain}/inbox/labo";
       newsgroup = "inbox.comp.sourcephile.labo";
     };
     membres = {
@@ -93,13 +98,26 @@ services.public-inbox = {
         "public-inbox+membres@${domain}"
       ];
       description = ''
-        Discussions ou annonces publiques à l'attention
+        membres@${domain} :
+        discussions ou annonces publiques à l'attention
         de l'ensemble des personnes à bord de Sourcephile.
       '';
-      url = "https://public-inbox.${domain}/archives/membres";
+      url = "https://mails.${domain}/inbox/membres";
       newsgroup = "inbox.comp.sourcephile.membres";
       #config.coderepo = [ "sourcephile" ];
     };
+    test = {
+      address = [
+        "test@${domain}"
+        "public-inbox+test@${domain}"
+      ];
+      description = ''
+        tests@${domain} :
+        une adresse pour effectuer des tests de mails.
+      '';
+      url = "https://mails.${domain}/inbox/test";
+      newsgroup = "inbox.comp.sourcephile.test";
+    };
   };
 
   /*