{lib, ...}: let serv = import ../config/services.nix; conf = lib.attrsets.mapAttrsToList (name: cfg: { job_name = name; scrape_interval = cfg.scrape_interval; static_configs = cfg.static_configs; }) serv.prometheus.scrapeConfigs; in { services.prometheus = { enable = true; scrapeConfigs = conf; port = serv.prometheus.port; }; networking.firewall.allowedTCPPorts = [ serv.prometheus.port ]; }