mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-06 21:17:14 -06:00
test: added roundcube
This commit is contained in:
parent
ef84461b04
commit
3773d01b25
12 changed files with 101 additions and 2 deletions
43
modules/config/instances/config/roundcube.nix
Executable file
43
modules/config/instances/config/roundcube.nix
Executable file
|
|
@ -0,0 +1,43 @@
|
|||
{ 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";
|
||||
};
|
||||
}
|
||||
0
modules/home/cli/utilities/rsync/default.nix
Normal file → Executable file
0
modules/home/cli/utilities/rsync/default.nix
Normal file → Executable file
0
modules/home/gui/apps/browsers/floorp/config/extensions/settings/socialfocus.txt
Normal file → Executable file
0
modules/home/gui/apps/browsers/floorp/config/extensions/settings/socialfocus.txt
Normal file → Executable file
0
modules/home/gui/apps/browsers/floorp/config/extensions/settings/untrapforyoutube.txt
Normal file → Executable file
0
modules/home/gui/apps/browsers/floorp/config/extensions/settings/untrapforyoutube.txt
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/default.nix
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/default.nix
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/themes/macchiato-mauve.xpi
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/themes/macchiato-mauve.xpi
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/themes/mocha-mauve.xpi
Normal file → Executable file
0
modules/home/gui/apps/messaging/thunderbird/themes/mocha-mauve.xpi
Normal file → Executable file
0
modules/home/gui/apps/tools/ivpn/default.nix
Normal file → Executable file
0
modules/home/gui/apps/tools/ivpn/default.nix
Normal file → Executable file
0
modules/nixos/services/ivpn/default.nix
Normal file → Executable file
0
modules/nixos/services/ivpn/default.nix
Normal file → Executable file
55
modules/nixos/services/roundcube/default.nix
Executable file
55
modules/nixos/services/roundcube/default.nix
Executable file
|
|
@ -0,0 +1,55 @@
|
|||
{
|
||||
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"
|
||||
]
|
||||
);
|
||||
};
|
||||
|
||||
}
|
||||
0
modules/nixos/services/zookeeper/default.nix
Normal file → Executable file
0
modules/nixos/services/zookeeper/default.nix
Normal file → Executable file
Loading…
Add table
Add a link
Reference in a new issue