26 lines
767 B
Nix
26 lines
767 B
Nix
{ lib, config, ... }:
|
|
let
|
|
cfg = config.my.servers.firefly-iii;
|
|
in
|
|
{
|
|
options.my.servers.firefly-iii = {
|
|
enable = lib.mkEnableOption "Firefly III personal finance manager";
|
|
enableProxy = lib.mkEnableOption "enableProxy";
|
|
};
|
|
config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable && config.my.secureHost) {
|
|
sops.secrets.firefly-iii-keyfile = {
|
|
owner = config.users.users.firefly-iii.name;
|
|
inherit (config.users.users.firefly-iii) group;
|
|
};
|
|
services.firefly-iii = {
|
|
inherit (cfg) enable;
|
|
enableNginx = cfg.enableProxy;
|
|
settings = {
|
|
APP_KEY_FILE = config.sops.secrets.firefly-iii-keyfile.path;
|
|
DB_HOST = config.my.postgresSocket;
|
|
DB_CONNECTION = "pgsql";
|
|
};
|
|
};
|
|
};
|
|
}
|