{ config, lib, ... }: with lib; let cfg = config.modules.services.paperless; in { options.modules.services.paperless = { enable = mkEnableOption "paperless"; realHost = mkOption { type = types.str; }; secrets = { paperless-superuser-password = mkOption { type = types.path; }; }; }; config = mkIf cfg.enable { services.paperless = rec { enable = true; port = 4007; dataDir = "/smol/core/paperless"; mediaDir = "${dataDir}/media"; passwordFile = cfg.secrets.paperless-superuser-password; }; }; }