{ lib, config, ... }: { services.pacemaker.enable = true; services.corosync = { clusterName = "zentralwerk"; nodelist = lib.imap1 (i: hostName: { nodeid = i; name = hostName; ring_addrs = map (net: config.site.net.${net}.hosts6.dn42.${hostName} ) [ "cluster" "mgmt" ]; }) ( builtins.attrNames ( lib.filterAttrs (_: { role, ... }: role == "server") config.site.hosts ) ); }; }