Skip to content

grimmory ​

Self-hosted, multi-user digital library

Example ​

nix
{config, ...}: {
  nps.stacks.grimmory = {
    enable = true;
    oidc.registerClient = true;
    db = {
      userPasswordFile = config.sops.secrets."grimmory/db_user_password".path;
      rootPasswordFile = config.sops.secrets."grimmory/db_root_password".path;
    };
  };
}

Stack Options ​

nps.stacks.grimmory.db.rootPasswordFile ​

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

Type
plaintext
absolute path
Declaration

nps.stacks.grimmory.db.userPasswordFile ​

Path to the file containing the password for the database user

Type
plaintext
absolute path
Declaration

nps.stacks.grimmory.enable ​

Whether to enable grimmory.

Type
plaintext
boolean
Default
nix
false
Example
nix
true
Declaration

nps.stacks.grimmory.libraryPath ​

Host directory where books are stored.

Type
plaintext
string
Default
nix
"${config.nps.storageBaseDir}/grimmory/books"
Declaration

nps.stacks.grimmory.oidc.registerClient ​

Whether to register a Grimmory OIDC client in Authelia. To enable OIDC Login for Grimmory, you will have to enable it in the Web UI.

For details, see:

Type
plaintext
boolean
Default
nix
false
Declaration

nps.stacks.grimmory.oidc.userGroup ​

Users of this group will be able to log in

Type
plaintext
string
Default
nix
"grimmory_user"
Declaration

Container Aliases ​

nps.stacks.grimmory.containers.grimmory ​

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

Type
plaintext
submodule
Declaration

nps.stacks.grimmory.containers.grimmory-db ​

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

Type
plaintext
submodule
Declaration