55 lines
No EOL
1.9 KiB
Nix
55 lines
No EOL
1.9 KiB
Nix
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.";
|
|
} |