let common = import ./common.nix; in rec { getServerName = serviceData: let continuwuity = if serviceData ? continuwuity then common.ensureAttrset "config/services.nix continuwuity" serviceData.continuwuity else throw "config/services.nix must define continuwuity attrset."; serverName = if continuwuity ? server_name then common.ensureString "config/services.nix continuwuity.server_name" continuwuity.server_name else throw "config/services.nix continuwuity.server_name must exist."; in if serverName != "" then serverName else throw "config/services.nix continuwuity.server_name must be a non-empty string."; getTrustedServers = serviceData: let continuwuity = if serviceData ? continuwuity then common.ensureAttrset "config/services.nix continuwuity" serviceData.continuwuity else throw "config/services.nix must define continuwuity attrset."; trustedServers = if continuwuity ? trusted_servers then common.ensureList "config/services.nix continuwuity.trusted_servers" continuwuity.trusted_servers else throw "config/services.nix continuwuity.trusted_servers must exist."; in trustedServers; getMemoryMax = serviceData: let continuwuity = if serviceData ? continuwuity then common.ensureAttrset "config/services.nix continuwuity" serviceData.continuwuity else throw "config/services.nix must define continuwuity attrset."; in if !(continuwuity ? memory_max) then null else let value = common.ensureString "config/services.nix continuwuity.memory_max" continuwuity.memory_max; in if value != "" then value else throw "config/services.nix continuwuity.memory_max must be a non-empty string when provided."; }