summaryrefslogtreecommitdiff
path: root/nix/modules/public_inbox.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nix/modules/public_inbox.nix')
-rw-r--r--nix/modules/public_inbox.nix41
1 files changed, 13 insertions, 28 deletions
diff --git a/nix/modules/public_inbox.nix b/nix/modules/public_inbox.nix
index cba1e39..3cd084b 100644
--- a/nix/modules/public_inbox.nix
+++ b/nix/modules/public_inbox.nix
@@ -15,7 +15,7 @@
# Allow the service to see the file it just created
BindPaths = [
"/var/lib/public-inbox"
- "/srv/git/"
+ "${config.users.users.git.home}"
];
ReadOnlyPaths = [ "/var/lib/public-inbox/style.css" ];
# Ensure it can actually write to the directory during preStart
@@ -55,10 +55,10 @@
services.public-inbox = {
enable = lib.mkDefault config.monorepo.profiles.server.enable;
settings = {
- coderepo."nullerbot".dir = "/srv/git/nullerbot.git";
- coderepo."nullerbot".cgitUrl = "https://git.nullring.xyz/nullerbot.git";
- coderepo."monorepo".dir = "/srv/git/monorepo.git";
- coderepo."monorepo".cgitUrl = "https://git.nullring.xyz/monorepo.git";
+ coderepo = lib.genAttrs config.monorepo.vars.projects (name: {
+ dir = "${config.users.users.git.home}/${name}.git";
+ cgitUrl = "https://git.${config.monorepo.vars.orgHost}/${name}.git";
+ });
publicinbox.css = ["/var/lib/public-inbox/style.css"];
publicinbox.wwwlisting = "all";
};
@@ -66,18 +66,14 @@
enable = true;
port = 9090;
};
- inboxes = {
- "monorepo" = {
- description = "discussion of ret2pop's monorepo project and related work.";
- address = [ "monorepo@${config.monorepo.vars.orgHost}" ];
- inboxdir = "/var/lib/public-inbox/monorepo";
- url = "https://list.${config.monorepo.vars.orgHost}/monorepo";
- watch = [ "imaps://monorepo%40${config.monorepo.vars.orgHost}@mail.${config.monorepo.vars.orgHost}/INBOX" ];
- coderepo = [
- "monorepo"
- ];
- };
-
+ inboxes = lib.genAttrs config.monorepo.vars.projects (name: {
+ description = "discussion of the ${name} project.";
+ address = [ "${name}@${config.monorepo.vars.orgHost}" ];
+ inboxdir = "/var/lib/public-inbox/${name}";
+ url = "https://list.${config.monorepo.vars.orgHost}/${name}";
+ watch = [ "imaps://${name}${config.monorepo.vars.orgHost}@mail.${config.monorepo.vars.orgHost}/INBOX" ];
+ coderepo = [ "${name}" ];
+ }) // {
"discussion" = {
description = "Main Nullring Discussion Mailing List";
address = [ "discussion@${config.monorepo.vars.orgHost}" ];
@@ -85,17 +81,6 @@
url = "https://list.${config.monorepo.vars.orgHost}/discussion";
watch = [ "imaps://discussion%40${config.monorepo.vars.orgHost}@mail.${config.monorepo.vars.orgHost}/INBOX" ];
};
-
- "nullerbot" = {
- description = "Discussion of Nullerbot Matrix Bot";
- address = [ "nullerbot@${config.monorepo.vars.orgHost}" ];
- inboxdir = "/var/lib/public-inbox/nullerbot";
- url = "https://list.${config.monorepo.vars.orgHost}/nullerbot";
- watch = [ "imaps://nullerbot%40${config.monorepo.vars.orgHost}@mail.${config.monorepo.vars.orgHost}/INBOX" ];
- coderepo = [
- "nullerbot"
- ];
- };
};
};
}