# # System notifications # { config, lib, pkgs, ... }: { services.postgresql = { enable = true; package = pkgs.postgresql_15; settings = { max_connections = 200; listen_addresses = "localhost"; password_encryption = "scram-sha-256"; shared_buffers = "4GB"; work_mem = "2GB"; maintenance_work_mem = "500MB"; autovacuum_work_mem = -1; log_timezone = "Europe/Berlin"; timezone = "Europe/Berlin"; }; authentication = pkgs.lib.mkOverride 14 '' local all postgres peer host giteadb gitea localhost scram-sha-256 host nextclouddb nextcloud localhost scram-sha-256 host synapsedb synapse localhost scram-sha-256 host whatsappdb mautrixwa localhost scram-sha-256 host telegramdb mautrixtele localhost scram-sha-256 host signaldb mautrixsignal localhost scram-sha-256 host onlyoffice onlyoffice localhost scram-sha-256 local onlyoffice onlyoffice peer ''; initialScript = config.age.secrets."services/postgresql/initScript.sql".path; }; services.postgresqlBackup.enable = true; age.secrets."services/postgresql/initScript.sql" = { file = ../../../secrets/services/postgresql/initScript.age; owner = "postgres"; }; }