merge new secrets
This commit is contained in:
52
modules/nixos/zulip.nix
Normal file
52
modules/nixos/zulip.nix
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [];
|
||||||
|
options.x = {
|
||||||
|
zulip = {
|
||||||
|
enable = true;
|
||||||
|
admin_email = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = "admin+zulip@${config.networking.domain}";
|
||||||
|
};
|
||||||
|
integration = {
|
||||||
|
persistance.enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
description = "whether persistance is enabled";
|
||||||
|
default = lib.mkDefault false;
|
||||||
|
};
|
||||||
|
mailserver.enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
description = "creates simple-nixos-mailserver login automatically for admin user";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
config = let
|
||||||
|
cfg = config.x.zulip;
|
||||||
|
in
|
||||||
|
lib.mkIf cfg.enable {
|
||||||
|
services.zulip = {
|
||||||
|
enable = true;
|
||||||
|
host = "zulip.${config.networking.domain}";
|
||||||
|
camoKeyFile = builtins.toString config.age.secrets.zulip-camoKey.path;
|
||||||
|
rabbitmqPasswordFile = builtins.toString config.age.secrets.zulip-rabbitmqPassword.path;
|
||||||
|
secretKeyFile = builtins.toString config.age.secrets.zulip-secretKey.path;
|
||||||
|
sharedSecretKeyFile = builtins.toString config.age.secrets.zulip-sharedSecretKey.path;
|
||||||
|
avatarSaltKeyFile = builtins.toString config.age.secrets.zulip-avatarSaltKey.path;
|
||||||
|
zulipSettings = {
|
||||||
|
ZULIP_ADMINISTRATOR = cfg.admin_email;
|
||||||
|
EXTERNAL_HOST = "chat.${config.networking.domain}";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
services.mailserver.loginAccounts = lib.mkIf cfg.integration.mailserver.enable {
|
||||||
|
"admin+zulip@${config.networking.domain}" = {
|
||||||
|
hashedPasswordFile = builtins.toString config.age.secrets.secret3.path;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
11
modules/template.nix
Normal file
11
modules/template.nix
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [];
|
||||||
|
options = {};
|
||||||
|
config = {};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user