2021-12-06 16:07:01 +00:00
|
|
|
{ config, lib, name, ... }:
|
|
|
|
|
|
|
|
with lib;
|
|
|
|
{
|
|
|
|
options = {
|
|
|
|
dataPath = mkOption {
|
|
|
|
type = types.path;
|
|
|
|
default = "/var/lib/pantalaimon-${name}";
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
|
|
|
The directory where `pantalaimon` should store its state such as the database file.
|
2021-12-06 16:07:01 +00:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
logLevel = mkOption {
|
|
|
|
type = types.enum [ "info" "warning" "error" "debug" ];
|
|
|
|
default = "warning";
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
2021-12-06 16:07:01 +00:00
|
|
|
Set the log level of the daemon.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
homeserver = mkOption {
|
|
|
|
type = types.str;
|
|
|
|
example = "https://matrix.org";
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
|
|
|
The URI of the homeserver that the `pantalaimon` proxy should
|
2021-12-06 16:07:01 +00:00
|
|
|
forward requests to, without the matrix API path but including
|
|
|
|
the http(s) schema.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
ssl = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = true;
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
2021-12-06 16:07:01 +00:00
|
|
|
Whether or not SSL verification should be enabled for outgoing
|
|
|
|
connections to the homeserver.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
listenAddress = mkOption {
|
|
|
|
type = types.str;
|
|
|
|
default = "localhost";
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
2021-12-06 16:07:01 +00:00
|
|
|
The address where the daemon will listen to client connections
|
|
|
|
for this homeserver.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
listenPort = mkOption {
|
|
|
|
type = types.port;
|
|
|
|
default = 8009;
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
2021-12-06 16:07:01 +00:00
|
|
|
The port where the daemon will listen to client connections for
|
|
|
|
this homeserver. Note that the listen address/port combination
|
|
|
|
needs to be unique between different homeservers.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
extraSettings = mkOption {
|
|
|
|
type = types.attrs;
|
|
|
|
default = { };
|
2022-08-21 13:32:41 +00:00
|
|
|
description = lib.mdDoc ''
|
2021-12-06 16:07:01 +00:00
|
|
|
Extra configuration options. See
|
2022-08-21 13:32:41 +00:00
|
|
|
[pantalaimon(5)](https://github.com/matrix-org/pantalaimon/blob/master/docs/man/pantalaimon.5.md)
|
2021-12-06 16:07:01 +00:00
|
|
|
for available options.
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|