Skip to content

All Extensions

This section describes all official Denix extensions.

Args

Nameargs
DescriptionMore convenient way to configure _module.args via myconfig
Maintainersyunfachi (GitHub, Telegram)

Settings

NameDefault ValueDescription
path"args"Path in myconfig where options will be created

Base

Namebase
DescriptionCreates feature-rich and fine-tunable modules for hosts and rices with minimal effort
Maintainersyunfachi (GitHub, Telegram)

Settings

NameDefault ValueDescription
enableAlltrueDefault value for hosts.enable and rices.enable

args

NameDefault ValueDescription
enablefalseDefault value for hosts.args.enable and rices.args.enable
path"args"Default value for hosts.args.path and rices.args.path

assertions

NameDefault ValueDescription
enabletrueDefault value for hosts.assertions.enable and rices.assertions.enable
moduleSystem"home-manager"Default value for hosts.assertions.moduleSystem and rices.assertions.moduleSystem

hosts

NameDefault ValueDescription
enableenableAllWhether to create the hosts module

hosts.args

NameDefault ValueDescription
enableargs.enableWhether to create host and hosts arguments with the args extension
pathargs.pathPath to options of the args extension

hosts.assertions

NameDefault ValueDescription
enableassertions.enableWhether to add delib.hostNamesAssertions to the assertions option of the specified module system
moduleSystemassertions.moduleSystemModule system to which assertions will be added. Any value is allowed, even "myconfig" if you have a dedicated module for that. Values "home-manager" and "nix-darwin" will be automatically converted to "home" and "darwin" respectively

hosts.type

NameDefault ValueDescription
enabletrueWhether to create an enum option type in the host submodule
generateIsTypetrueWhether to generate a boolean option for each value in hosts.type.types, formatted as "is{Type}"
types["desktop" "server"]All allowed values for the type option in the host submodule. Note: to append to the list rather than overwrite it, use: types = prev.types ++ ["newType"];

hosts.features

NameDefault ValueDescription
enabletrueWhether to create the features option with an enum-list type in the host submodule
generateIsFeaturedtrueWhether to generate a boolean option for each value in hosts.features.features, formatted as "{feature}Featured"
features[]All allowed values for the features option in the host submodule
default[]Default value for the features option in the host submodule
defaultByHostType{}Attrset where keys are one of the hosts.type.types values and values are lists similar to hosts.features.default. Merged with hosts.features.default and the list whose key matches the value of the type option in the host submodule

hosts.displays

NameDefault ValueDescription
enabletrueWhether to create the displays option in the host submodule. Its type is a list of submodules with the following options:
enable (bool; default true),
name (str; no default),
primary (bool; default true, but only if the displays options in the host submodule contains one item),
touchscreen (bool; default false),
refreshRate (int; default 60),
width (int; default 1920),
height (int; default 1080),
x (int; default 0),
y (int; default 0)

rices

NameDefault ValueDescription
enableenableAllWhether to create the rices module

rices.args

NameDefault ValueDescription
enableargs.enableWhether to create rice and rices arguments using the args extension
pathargs.pathPath to options of the args extension

rices.assertions

NameDefault ValueDescription
enableassertions.enableWhether to add delib.riceNamesAssertions to the assertions option of the specified module system
moduleSystemassertions.moduleSystemModule system to which assertions will be added. Any value is allowed, even "myconfig" if you have a dedicated module for that. "home-manager" and "nix-darwin" will be automatically converted to "home" and "darwin" respectively

User

WIP