Skip to content

hortusfox

Example

nix
{config, ...}: {
  hortusfox = {
    enable = true;
    db = {
      userPasswordFile = config.sops.secrets."hortusfox/db_user_password".path;
      rootPasswordFile = config.sops.secrets."hortusfox/db_root_password".path;
    };

    adminEmail = "admin@example.com";

    # Optional, enable Authelia Forward-Auth middleware and use Proxy-Auth for authentication
    containers.hortusfox.forwardAuth.enable = true;
    extraEnv = {
      PROXY_ENABLE = true;
      PROXY_HEADER_EMAIL = "Remote-Email";
      PROXY_HEADER_USERNAME = "Remote-User";
      PROXY_AUTO_SIGNUP = true;
      PROXY_WHITELIST = config.nps.stacks.traefik.ip4;
      PROXY_HIDE_LOGOUT = true;
    };
  };
}

Stack Options

nps.stacks.hortusfox.adminEmail

E-Mail of the admin user

Type
plaintext
string
Default
nix
"admin@example.com"
Declaration

nps.stacks.hortusfox.adminPasswordFile

Path to the file containing the admin password.

When using proxy auth, this can also be unset

Type
plaintext
null or absolute path
Default
nix
null
Declaration

nps.stacks.hortusfox.containers.hortusfox

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

Type
plaintext
submodule
Declaration

nps.stacks.hortusfox.containers.hortusfox-db

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

Type
plaintext
submodule
Declaration

nps.stacks.hortusfox.db.rootPasswordFile

Path to the file containing the password for the MariaDB root user

Type
plaintext
absolute path
Declaration

nps.stacks.hortusfox.db.userPasswordFile

Path to the file containing the password for the romm database user

Type
plaintext
absolute path
Declaration

nps.stacks.hortusfox.enable

Whether to enable hortusfox.

Type
plaintext
boolean
Default
nix
false
Example
nix
true
Declaration

nps.stacks.hortusfox.extraEnv

Extra environment variables to set for the container.

See https://github.com/danielbrendel/hortusfox-web?tab=readme-ov-file#installation

Type
plaintext
attribute set of (null or boolean or signed integer or string or absolute path or (submodule))
Default
nix
{ }
Example
nix
{
  PROXY_ENABLE = true;
  PROXY_HEADER_EMAIL = "Remote-Email";
  PROXY_HEADER_USERNAME = "Remote-User";
  PROXY_AUTO_SIGNUP = true;
  PROXY_WHITELIST = config.nps.stacks.traefik.ip4;
  PROXY_HIDE_LOGOUT = true;
}
Declaration