Skip to content

wallos

Personal subscription tracker

Example

nix
{config, ...}: {
  nps.stacks.wallos = {
    enable = true;
    oidc = {
      registerClient = true;
      clientSecretHash = "$pbkdf2-sha512$...";
    };
  };
}

Stack Options

nps.stacks.wallos.containers.wallos

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

Type
plaintext
submodule
Declaration

nps.stacks.wallos.enable

Whether to enable wallos.

Type
plaintext
boolean
Default
nix
false
Example
nix
true
Declaration

nps.stacks.wallos.oidc.clientSecretHash

The client secret hash. For examples on how to generate a client secret, see

https://www.authelia.com/integration/openid-connect/frequently-asked-questions/#client-secret

The value can be passed in multiple ways:

  1. As a literal string
  2. As an absolute path to a file containing the hash (toFile)
  3. As an absolute oath to a file containing the client_secret, in which case the hash will be automatically computed (toHash)
Type
plaintext
string or (submodule)
Example
nix
# Literal String:
"$pbkdf2-sha512$310000$cbOAIWbfz3vCVXIPIp6d2A$J0klwULa6TvPRCU1HAfuKua/dMKTl8gbTYJz2N73ejGUu0LUGz/y3kwmJLuKuAYGg3WQOT0q9ZzVHHUvpKpgvQ"

# Client secret hash stored in a file
{ fromFile = config.sops.secrets."immich/client_secret_hash".path; }

# Client secret stored in a file: Hash will be computed dynamically
{ toHash = config.sops.secrets."immich/client_secret".path; }
Declaration

nps.stacks.wallos.oidc.registerClient

Whether to register a OIDC client in Authelia. If enabled you need to provide a hashed secret in the client_secret option.

To enable OIDC Login, you will have to set it up in Web-UI. For details, see:

Type
plaintext
boolean
Default
nix
false
Declaration

nps.stacks.wallos.oidc.userGroup

Users of this group will be able to log in

Type
plaintext
string
Default
nix
"wallos_user"
Declaration