Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

services.openlinkhub.enable

Whether to enable OpenLinkHub.

Type: boolean

Default:

false

Example:

true

Declared by:

services.openlinkhub.package

The openlinkhub package to use.

Type: package

Default:

pkgs.openlinkhub

Declared by:

services.openlinkhub.allowGamepad

Whether to allow OpenLinkHub’s virtual gamepad to be enabled.

Setting this to true will silence the associated warning, but it will not grant the required udev permissions. It is up to you as the user to supply safe access.

Type: boolean

Default:

false

Example:

true

Declared by:

services.openlinkhub.dashboard.enable

Whether to enable the dashboard.

Type: boolean

Default:

false

Example:

true

Declared by:

services.openlinkhub.dashboard.settings

Dashboard configuration to be merged into dashboard.json.

This provides the default value of config.services.openlinkhub.extraConfigs."dashboard.json".

Type: JSON value

Default:

{ }

Example:

{
  celsius = true;
  languageCode = "en_US";
  pageTitle = "OpenLinkHub WebUI";
}

Declared by:

services.openlinkhub.extraConfigs

Additional files to be written to $XDG_CONFIG_HOME/OpenLinkHub.

Content generated from an attrset will be merged, while other content, such as lists and lines, will be written as is, overwriting any previous data.

Null values and empty attrsets will be recursively filtered out.

Type: open submodule of attribute set of (JSON value or strings concatenated with “\n”)

Default:

{ }

Example:

{
  # merges with existing `i2c0.json`
  "database/profiles/i2c0.json" = {
    Active = true;
    Path = "/run/user/1000/OpenLinkHub/database/profiles/i2c0.json";
    Product = "Memory";
    Serial = "i2c0";
    # ...
  };
  # overwrites existing `display.json`
  "display.json" = ''
    [
      {
        "Index": 1,
        "Name": "card1-DP-1",
        "Width": 2560,
        "Height": 1440,
        "Left": false,
        "Top": false
      }
    ]
  '';
}

Declared by:

services.openlinkhub.extraConfigs.“config.json”

Configuration to be written to config.json.

Setting this value directly will override all values inherited from config.services.openlinkhub.settings, including any values that settings inherited from other options in the module.

Type: attribute set of (JSON value or strings concatenated with “\n”)

Default:

"config.services.openlinkhub.settings"

Declared by:

services.openlinkhub.extraConfigs.“dashboard.json”

Configuration to be written to dashboard.json.

Setting this value directly will override all values inherited from config.services.openlinkhub.dashboard.settings.

Type: null or (attribute set of (JSON value or strings concatenated with “\n”))

Default:

with config.services.openlinkhub.dashboard;
lib.optionalAttrs enable settings;

Declared by:

services.openlinkhub.memory.enable

Whether to enable memory configuration.

Type: boolean

Default:

false

Example:

true

Declared by:

services.openlinkhub.memory.sku

The SKU of the device.

You can find this by running sudo dmidecode -t memory and grepping by ‘Part Number’.

See the OpenLinkHub docs for more information.

Type: null or string

Default:

null

Example:

"CMT64GX5M2B5600Z40"

Declared by:

services.openlinkhub.memory.smb

The SMBus controller for the device.

You can find this by running i2cdetect -l and grepping by ‘SMBus’, with it typically being the first device from the list.

See the OpenLinkHub docs for more information.

Type: null or string matching the pattern i2c-[[:digit:]]+

Default:

null

Example:

"i2c-0"

Declared by:

services.openlinkhub.memory.type

Which generation the device belongs to.

You can find this by running sudo dmidecode -t memory and grepping by ‘Type: DDR[4-5]’.

See the OpenLinkHub docs for a full list of supported devices and their generations.

Type: null or integer between 4 and 5 (both inclusive)

Default:

null

Example:

5

Declared by:

services.openlinkhub.settings

Configuration to be merged into config.json.

This provides the default value of config.services.openlinkhub.extraConfigs."config.json".

Type: open submodule of (JSON value)

Default:

{ }

Example:

{
  debug = false;
  logLevel = "info";
  metrics = false;
}

Declared by:

services.openlinkhub.settings.frontend

Whether to enable the dashboard.

This is set by config.services.openlinkhub.dashboard.enable.

Type: boolean (read only)

Declared by:

services.openlinkhub.settings.listenAddress

Which local address the dashboard should listen from.

Type: string

Default:

"127.0.0.1"

Example:

"127.0.0.2"

Declared by:

services.openlinkhub.settings.listenPort

Which port the dashboard should listen from.

Type: integer between 1 and 65535 (both inclusive)

Default:

27003

Example:

27004

Declared by:

services.openlinkhub.settings.memory

Whether to enable the memory configuration.

This is set by config.services.openlinkhub.memory.enable.

Type: boolean (read only)

Declared by:

services.openlinkhub.settings.memorySku

The SKU of the device.

This is set by config.services.openlinkhub.memory.sku.

Type: null or string (read only)

Default:

null

Declared by:

services.openlinkhub.settings.memorySmBus

The SMBus controller for the device.

This is set by config.services.openlinkhub.memory.smb.

Type: null or string (read only)

Default:

null

Declared by:

services.openlinkhub.settings.memoryType

Which generation the device belongs to.

This is set by config.services.openlinkhub.memory.type.

Type: null or integer between 4 and 5 (both inclusive) (read only)

Default:

null

Declared by: