1 { pkgs, lib, config, ... }:
2 let inherit (config.users) groups;
3 domain = "sourcephile.fr";
6 services.public-inbox = {
8 path = with pkgs; [ /*spamassassin*/ ];
9 #mda.args = [ "--no-precheck" ];
11 watch.spamCheck = null;
13 #config.publicinbox.css =
14 # [ "href=https://${domain}/lists/public-inbox.css" ];
17 "https://mails.${domain}/inbox"
18 "https://public-inbox.${domain}/inbox"
20 wwwListing = "match=domain";
21 config.publicinbox = {
22 css = [ "href=https://mails.${domain}/style/light.css" ];
25 nntpServer = [ "nntps://news.${domain}" ];
26 nntp.cert = "/var/lib/acme/${domain}/fullchain.pem";
27 nntp.key = "/var/lib/acme/${domain}/key.pem";
28 nntp.extraGroups = [ groups.acme.name ];
34 "public-inbox+bistrot@${domain}"
38 discussions publiques sans sujet particulier,
39 simplement pour la camaraderie à bord de Sourcephile.
41 url = "https://mails.${domain}/inbox/bistrot";
42 newsgroup = "inbox.comp.sourcephile.bistrot";
47 "public-inbox+entraide@${domain}"
51 discussions publiques pour l'entraide à bord de Sourcephile.
53 url = "https://mails.${domain}/inbox/entraide";
54 newsgroup = "inbox.comp.sourcephile.entraide";
58 "environnement@${domain}"
59 "public-inbox+environnement@${domain}"
62 environnement@${domain} :
63 discussions publiques pour se soucier de l'environnement
64 des activités de Sourcephile.
66 url = "https://mails.${domain}/inbox/environnement";
67 newsgroup = "inbox.comp.sourcephile.environnement";
72 "public-inbox+infra@${domain}"
76 discussions publiques à propos de l'infrastructure,
77 notamment informatique, de Sourcephile.
79 url = "https://mails.${domain}/inbox/infra";
80 newsgroup = "inbox.comp.sourcephile.infra";
85 "public-inbox+labo@${domain}"
89 discussions publiques concernant les recherches scientifiques
90 et développements informatiques de Sourcephile.
92 url = "https://mails.${domain}/inbox/labo";
93 newsgroup = "inbox.comp.sourcephile.labo";
98 "public-inbox+membres@${domain}"
102 discussions ou annonces publiques à l'attention
103 de l'ensemble des personnes à bord de Sourcephile.
105 url = "https://mails.${domain}/inbox/membres";
106 newsgroup = "inbox.comp.sourcephile.membres";
107 #config.coderepo = [ "sourcephile" ];
112 "public-inbox+test@${domain}"
116 une adresse pour effectuer des tests de mails.
118 url = "https://mails.${domain}/inbox/test";
119 newsgroup = "inbox.comp.sourcephile.test";
124 config.coderepo.sourcephile-nix = {
125 dir = "/var/lib/git/repositories/sourcephile.git";
126 cgitUrl = "https://${domain}/git/sourcephile";
130 security.acme.certs."${domain}" = {
131 postRun = "systemctl reload public-inbox-nntp";
133 systemd.services.public-inbox = {
134 wants = [ "acme-selfsigned-${domain}.service" "acme-${domain}.service"];
135 after = [ "acme-selfsigned-${domain}.service" ];