mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-07 05:27:13 -06:00
chore: fuck roundcube
This commit is contained in:
parent
3773d01b25
commit
1b98c4eff8
3 changed files with 16 additions and 114 deletions
|
|
@ -1,43 +0,0 @@
|
||||||
{ moduleFunctions }:
|
|
||||||
let
|
|
||||||
inherit (moduleFunctions.instancesFunctions)
|
|
||||||
domain0
|
|
||||||
servicePath
|
|
||||||
sslPath
|
|
||||||
sopsPath
|
|
||||||
;
|
|
||||||
|
|
||||||
label = "Roundcube";
|
|
||||||
name = "roundcube";
|
|
||||||
subdomain = "mail";
|
|
||||||
domain = "${subdomain}.${domain0}";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
label = label;
|
|
||||||
name = name;
|
|
||||||
short = "Round";
|
|
||||||
email = {
|
|
||||||
address0 = "noreply@${domain0}";
|
|
||||||
};
|
|
||||||
sops = {
|
|
||||||
path0 = "${sopsPath}/${name}";
|
|
||||||
};
|
|
||||||
domains = {
|
|
||||||
url0 = domain;
|
|
||||||
};
|
|
||||||
subdomain = subdomain;
|
|
||||||
tags = [
|
|
||||||
name
|
|
||||||
"email"
|
|
||||||
];
|
|
||||||
paths = {
|
|
||||||
path0 = "${servicePath}/${label}";
|
|
||||||
};
|
|
||||||
ports = {
|
|
||||||
port0 = 9999;
|
|
||||||
};
|
|
||||||
ssl = {
|
|
||||||
cert = "${sslPath}/${domain}/fullchain.pem";
|
|
||||||
key = "${sslPath}/${domain}/key.pem";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -36,19 +36,19 @@ in
|
||||||
value = dnsConfig dns0Path dns0;
|
value = dnsConfig dns0Path dns0;
|
||||||
})
|
})
|
||||||
[
|
[
|
||||||
"audiobookshelf"
|
instances.audiobookshelf.name
|
||||||
"glance"
|
instances.glance.name
|
||||||
"jellyfin"
|
instances.jellyfin.name
|
||||||
"minecraft"
|
instances.minecraft.name
|
||||||
"nextcloud"
|
instances.nextcloud.name
|
||||||
"ollama"
|
instances.ollama.name
|
||||||
"searx"
|
instances.searx.name
|
||||||
"syncthing"
|
instances.syncthing.name
|
||||||
"vaultwarden"
|
instances.vaultwarden.name
|
||||||
"opencloud"
|
instances.opencloud.name
|
||||||
"prompter"
|
instances.prompter.name
|
||||||
"comfyui"
|
instances.comfyui.name
|
||||||
"firefly-iii"
|
instances.firefly-iii.name
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
++ (map
|
++ (map
|
||||||
|
|
@ -57,9 +57,9 @@ in
|
||||||
value = dnsConfig dns0Path dns0;
|
value = dnsConfig dns0Path dns0;
|
||||||
})
|
})
|
||||||
[
|
[
|
||||||
"forgejo"
|
instances.forgejo.name
|
||||||
"mastodon"
|
instances.mastodon.name
|
||||||
"peertube"
|
instances.peertube.name
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
++ (map
|
++ (map
|
||||||
|
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
flake,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
inherit (flake.config.services.instances) roundcube web;
|
|
||||||
|
|
||||||
service = roundcube;
|
|
||||||
host = service.domains.address0;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
services = {
|
|
||||||
roundcube = {
|
|
||||||
enable = true;
|
|
||||||
configureNginx = false;
|
|
||||||
dicts = builtins.attrValues {
|
|
||||||
inherit (pkgs.aspellDicts)
|
|
||||||
en
|
|
||||||
;
|
|
||||||
};
|
|
||||||
plugins = [
|
|
||||||
];
|
|
||||||
# hostName = host;
|
|
||||||
database = {
|
|
||||||
host = web.localhost.address1;
|
|
||||||
dbname = service.name;
|
|
||||||
username = "";
|
|
||||||
passwordFile = config.sops.secrets."${service.name}-pass".path;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
sops =
|
|
||||||
let
|
|
||||||
sopsPath = secret: {
|
|
||||||
path = "${service.sops.path0}/${service.name}-${secret}";
|
|
||||||
owner = "root";
|
|
||||||
mode = "600";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
secrets = builtins.listToAttrs (
|
|
||||||
map
|
|
||||||
(secret: {
|
|
||||||
name = "${service.name}-${secret}";
|
|
||||||
value = sopsPath secret;
|
|
||||||
})
|
|
||||||
[
|
|
||||||
"pass"
|
|
||||||
]
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue