{ 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"; }; }; }; }