{config, ...}: let
  cfg = config.services.grafana;
in {
  services.grafana = {
    enable = true;
    settings = {
      server = {
        domain = "status.aciceri.dev";
        http_addr = "127.0.0.1";
        http_port = 2342;
        root_url = "https://${config.services.grafana.settings.server.domain}:443/";
      };
      security = {
        admin_user = "andrea";
        admin_password = "$__file{${config.age.secrets.grafana-password.path}}";
      };
    };
  };
  environment.persistence."/persist".directories = [
    cfg.dataDir
  ];

  services.nginx.virtualHosts = {
    "status.aciceri.dev" = {
      enableACME = true;
      forceSSL = true;
      locations."/".proxyPass = "http://127.0.0.1:${builtins.toString cfg.settings.server.http_port}";
    };
  };
}