memos
Note-taking service
Example
{
nps.stacks.memos = {
enable = true;
oidc = {
registerClient = true;
clientSecretHash = "$pbkdf2-sha512$...";
};
};
}Stack Options
nps.stacks.memos.containers.memos
Alias of {option}services.podman.containers.memos.
nps.stacks.memos.containers.memos-db
Alias of {option}services.podman.containers.memos-db.
nps.stacks.memos.db.passwordFile
The file containing the PostgreSQL password for the database. Only used if db.type is set to "postgres".
nps.stacks.memos.db.type
Type of the database to use.
Can be set to "sqlite" or "postgres".
If set to "postgres", the passwordFile option must be set.
nps.stacks.memos.db.username
The PostgreSQL user to use for the database. Only used if db.type is set to "postgres".
nps.stacks.memos.enable
Whether to enable memos.
nps.stacks.memos.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:
- As a literal string
- As an absolute path to a file containing the hash (
toFile) - As an absolute oath to a file containing the client_secret, in which case the hash will be automatically computed (
toHash)
string or (submodule)
# 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; }
nps.stacks.memos.oidc.registerClient
Whether to register an OIDC client in Authelia.
If enabled you need to provide a hashed secret in the client_secret option.
To enable OIDC Login for Memos, you will have to configure it in the Web UI.
For details, see:
nps.stacks.memos.oidc.userGroup
Users of this group will be able to log in