Skip to content

hortusfox ​

Collaborative plant management and tracking system

Example ​

nix
{config, ...}: {
  nps.stacks.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.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

Container Aliases ​

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