{ lib, config, ... }: let setup = import ../factories/mkserver.nix { inherit lib config; }; cfg = config.my.servers.plausible; in { options.my.servers.plausible = setup.mkOptions "plausible" "analytics" 8439; config = lib.mkIf (cfg.enable && config.my.secureHost) { sops.secrets.plausible.sopsFile = ../../secrets/keys.yaml; services.plausible = { inherit (cfg) enable; database.postgres.socket = config.my.postgresSocket; mail.email = config.my.smtpemail; server = { inherit (cfg) port; baseUrl = cfg.url; listenAddress = cfg.ip; secretKeybaseFile = config.sops.secrets.plausible.path; disableRegistration = true; }; }; }; }