Skip to content

glance

Highly customizable dashboard

Example

nix
{config, ...}: {
  nps.stacks.glance = {
    enable = true;
    settings.pages.home = {
      columns.start = {
        rank = 500;
        size = "small";
        widgets = [
          {
            type = "server-stats";
            servers = [
              {
                type = "local";
                name = "Server";
              }
            ];
          }
          {
            type = "reddit";
            subreddit = "selfhosted";
            collapse-after = 3;
          }
        ];
      };
    };
  };
}

Stack Options

nps.stacks.glance.enable

Whether to enable glance.

Type
plaintext
boolean
Default
nix
false
Example
nix
true
Declaration

nps.stacks.glance.settings

Settings that will be provided as the glance.yml configuration file.

See https://github.com/glanceapp/glance/blob/main/docs/configuration.md#configuring-glance

Type
plaintext
open submodule of (YAML 1.1 value)
Default
nix
{ }
Declaration

nps.stacks.glance.settings.pages

This option has no description.

Type
plaintext
attribute set of (open submodule of (YAML 1.1 value))
Declaration

nps.stacks.glance.settings.pages.<name>.columns

The columns to display on the page

Type
plaintext
attribute set of (open submodule of (YAML 1.1 value))
Declaration

nps.stacks.glance.settings.pages.<name>.columns.<name>.rank

The order of the column on the page.

Type
plaintext
signed integer
Default
nix
1000
Declaration

nps.stacks.glance.settings.pages.<name>.columns.<name>.size

The size of the column.

Type
plaintext
one of "small", "full"
Declaration

nps.stacks.glance.settings.pages.<name>.name

The name of the page. Default to the attribute name.

Type
plaintext
string
Default
nix
lib.toSentenceCase <pageName>
Declaration

nps.stacks.glance.useSocketProxy

Whether to access the Podman socket through the read-only proxy for the glance stack. Will be enabled by default if the 'docker-socket-proxy' stack is enabled.

Type
plaintext
boolean
Default
nix
config.nps.stacks.docker-socket-proxy.enable
Declaration

nps.stacks.glance.userCss

Type
plaintext
strings concatenated with "\n"
Default
nix
""
Declaration

Container Extension

Glance adds the glance container options to the existing services.podman.containers.<name> options. Setting the category automatically adds the container to a docker-containers widget on the dashboard.

The name defaults to the container name, the url defaults to the URL registered in Traefik. Additional settings (icon, description, href, ...) can be provided via freeform attributes, see https://github.com/glanceapp/glance/blob/main/docs/configuration.md#docker-containers.

Example:

nix
{config, ...}: {
  nps.stacks.glance.enable = true;

  nps.stacks.streaming.containers.jellyfin.glance = {
    category = "Media";
    name = "Jellyfin";
    description = "Media Server";
    icon = "si:jellyfin";
  };
}

services.podman.containers.<name>.glance

Type
plaintext
open submodule of (YAML 1.1 value)
Default
nix
{ }
Declaration

services.podman.containers.<name>.glance.category

The category under which the service will be listed on the dashboard.

Type
plaintext
null or string
Default
nix
null
Declaration

services.podman.containers.<name>.glance.name

The name of the service as it will displayed on the dashboard.

Type
plaintext
string
Default
nix
lib.toSentenceCase <containerName>
Declaration

services.podman.containers.<name>.glance.url

The URL of the service.

Type
plaintext
string
Default
nix
""
Declaration

Container Aliases

nps.stacks.glance.containers.glance

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

Type
plaintext
submodule
Declaration