Skip to content

davis ​

Self-hosted server for managing calendars and contacts

Example ​

nix
{config, ...}: {
  nps.stacks.davis = {
    enable = true;

    adminPasswordFile = config.sops.secrets."davis/admin_password".path;
    db = {
      userPasswordFile = config.sops.secrets."davis/db_user_password".path;
      rootPasswordFile = config.sops.secrets."davis/db_root_password".path;
    };

    # LLDAP-managed users will be able to log in
    enableLdapAuth = true;
  };
}

Stack Options ​

nps.stacks.davis.adminPasswordFile ​

Path to the file containing the admin password.

Type
plaintext
absolute path
Declaration

nps.stacks.davis.adminUsername ​

Admin username to access the dashboard.

Type
plaintext
string
Default
nix
"admin"
Declaration

nps.stacks.davis.db.rootPasswordFile ​

Path to the file containing the password for the MySQL root user.

Type
plaintext
absolute path
Declaration

nps.stacks.davis.db.type ​

Type of the database to use. Can be set to "sqlite" or "mysql". If set to "mysql", the userPasswordFile and rootPasswordFile options must be set.

Type
plaintext
one of "sqlite", "mysql"
Default
nix
"mysql"
Declaration

nps.stacks.davis.db.userPasswordFile ​

Path to the file containing the password for the davis database user.

Type
plaintext
absolute path
Declaration

nps.stacks.davis.db.username ​

Username for the davis database user.

Type
plaintext
string
Default
nix
"davis"
Declaration

nps.stacks.davis.enable ​

Whether to enable davis.

Type
plaintext
boolean
Default
nix
false
Example
nix
true
Declaration

nps.stacks.davis.enableLdapAuth ​

Whether to enable login via LLDAP as an auth provider

Type
plaintext
boolean
Default
nix
config.nps.stacks.lldap.enable
Declaration

nps.stacks.davis.extraEnv ​

Extra environment variables to set for the container. Variables can be either set directly or sourced from a file (e.g. for secrets).

See https://github.com/tchapi/davis/blob/main/docker/.env

Type
plaintext
attribute set of (null or boolean or signed integer or string or absolute path or (submodule))
Default
nix
{ }
Example
nix
{
  MAIL_HOST = "smtp.myprovider.com";
  MAIL_PASSWORD = {
    fromFile = "/run/secrets/secret_name";
  };
}
Declaration

Container Aliases ​

nps.stacks.davis.containers.davis ​

Alias of {option}services.podman.containers.davis.

Type
plaintext
submodule
Declaration

nps.stacks.davis.containers.davis-db ​

Alias of {option}services.podman.containers.davis-db.

Type
plaintext
submodule
Declaration