nicekoishi's options documentation - c66248f

_module.args

Additional arguments passed to each module in addition to ones like lib, config, and pkgs, modulesPath.

This option is also available to all submodules. Submodules do not inherit args from their parent module, nor do they provide args to their parent module or sibling submodules. The sole exception to this is the argument name which is provided by parent modules to a submodule and contains the attribute name the submodule is bound to, or a unique generated name if it is not bound to an attribute.

Some arguments are already passed by default, of which the following cannot be changed with this option:

For NixOS, the default value for this option includes at least this argument:

Type: lazy attribute set of raw value

Declared by:

nice.extra.gpu-pass.enable

Whether to enable gpu-pass, for gpu passthrough.

Type: boolean

Default: false

Example: true

Declared by:

nice.extra.gpu-pass.devices

PCI Bus ID of the desired GPUs. You can find them by using lspci -k and/or virsh nodedev-list --cap pci.

Type: list of string

Default: [ ]

Example:

[
  "pci_0000_06_00_0"
  "pci_0000_06_00_1"
  "pci_0000_06_00_2"
  "pci_0000_06_00_3"
]

Declared by:

nice.extra.gpu-pass.guest

Name of your guest. Be sure to match exactly for the hook to work.

Type: string

Default: "win10"

Example: "Windows"

Declared by:

nice.extra.gpu-pass.optimize.enable

Whether to enable Dynamically isolate CPUs with systemd.

Type: boolean

Default: false

Example: true

Declared by:

nice.extra.gpu-pass.optimize.host

Isolate the host to the specified core(s), improving performance on the guest. This option passes straight to AllowedCPUs, so you can use any value you desire.

Type: string

Default: "0"

Example: "0-8"

Declared by:

nice.extra.gpu-pass.optimize.topography

When guest shutdowns, return these cores to the host. You can find them by using lscpu -e. For example, you can use 0-11 for a host with 12 CPUs. This option passes straight to AllowedCPUs, so you can use any value you desire.

Type: string

Example: "0-11"

Declared by:

nice.host.cpu

The manufacturer of the host’s CPU.

Type: null or one of “amd”, “intel”

Default: null

Declared by:

nice.host.gpu

The manufacturer of the host’s GPU. Will be used to load the necessary drivers for optimal functionality.

Type: null or (list of (one of “amd”, “nvidia”))

Default: null

Declared by:

nice.host.opts.isWayland

Whether to enable Wayland exclusive modules.

This option depends on config.nice.host.opts.waylandReady and is set automatically if a Wayland compositor is enabled on config.nice.user.desktop.

Enabling a Wayland compositor without enabling waylandReady will result in an error!

Type: boolean (read only)

Default: false

Declared by:

nice.host.opts.profiles

A list of all profiles enabled for this host.

The main purpose of this option is to not polute system.nixos.tags, as we may be dealing with way more profiles in the future.

Type: list of (one of “gaming”, “server”)

Default: [ ]

Declared by:

nice.host.opts.roles

A list of all roles enabled for this host.

The main purpose of this option is to not polute system.nixos.tags, as we may be dealing with way more roles in the future.

Type: list of (one of “desktop”, “laptop”, “iso”)

Default: [ ]

Declared by:

nice.host.opts.waylandReady

Whether the system has all the necessary requirements to run a Wayland compositor.

This option should be set on your own discretion, as there isn’t any kind of check to this.

Trust me bro.

Type: boolean

Default: false

Declared by:

nice.host.services.ddns.cloudflare

Cloudflare domains to be updated by ddclient.

Type: list of string

Default: [ ]

Declared by:

nice.host.services.kanidm.enable

Whether to enable Kanidm, simple and secure identity management platform.

Type: boolean

Default: false

Example: true

Declared by:

nice.host.services.navidrome.enable

Whether to enable Navidrome, self-hosted music server.

Type: boolean

Default: false

Example: true

Declared by:

nice.host.services.nginx.enable

Whether to enable nginx, all-in-one load balancer, content cache, and web server.

Type: boolean

Default: false

Example: true

Declared by:

nice.host.system.gpg.enable

Whether to enable gnupg at system level.

Type: boolean

Default: false

Example: true

Declared by:

nice.host.system.kernel

The kernel to be used by the host

Type: raw value

Default: pkgs.linuxPackages

Example: pkgs.linuxPackages_latest

Declared by:

nice.user.desktop.gnome.enable

Whether to enable the GNOME desktop environment.

Will be set to true if config.nice.user.desktop.setup contains “GNOME”.

Type: boolean

Default: false

Declared by:

nice.user.desktop.hyprland.enable

Whether to enable the Hyprland wayland compositor

Will be set to true if config.nice.user.desktop.setup contains “Hyprland”.

Type: boolean

Default: false

Declared by:

nice.user.desktop.setup

A list containing all desktop environments to be enabled.

Type: list of (one of “Hyprland”, “GNOME”, “none”)

Default:

[
  "none"
]

Declared by:

nice.user.display.main

The main display in the configuration. Will be used as a reference to properly align other monitors.

Type: null or string

Default: null

Declared by:

nice.user.display.monitors

Attribute set containing all monitors used in this configuration.

This will break all kinds of monitor setup if these services are enabled and this option don’t have any monitor set up.

Type: attribute set of (submodule)

Default: { }

Declared by:

nice.user.display.monitors.<name>.height

The height of this monitor.

Type: signed integer

Example: 1080

Declared by:

nice.user.display.monitors.<name>.pos

Used in a multi-monitor setup to properly position them.

Type: null or one of “top”, “right”, “bottom”, “left”

Default: null

Declared by:

nice.user.display.monitors.<name>.refreshRate

The refresh rate of this monitor.

Type: signed integer

Default: 60

Declared by:

nice.user.display.monitors.<name>.scale

The scale of this monitor, usually 1 is enough.

Type: signed integer

Default: 1

Declared by:

nice.user.display.monitors.<name>.wallpaper

Desired wallpaper for this monitor. Will be used by services such as hyprpaper/swww.

Type: string or package

Default: null

Declared by:

nice.user.display.monitors.<name>.width

The width of this monitor.

Type: signed integer

Example: 1920

Declared by:

nice.user.home-manager.enable

Whether to enable home-manager, to manage a user environment using Nix…

Type: boolean

Default: false

Example: true

Declared by:

nice.user.main

The username of the main user of the system.

Type: string

Default: "supeen"

Declared by:

nice.user.style.cursor.package

The package providing the cursors

Type: package

Default: <derivation bibata-cursors-2.0.6>

Declared by:

nice.user.style.cursor.name

Name of the cursor inside the package

Type: string

Default: "Bibata-Modern-Classic"

Declared by:

nice.user.style.cursor.size

The size of the cursor

Type: signed integer

Default: 24

Declared by:

nice.user.style.gtk.enable

Whether to enable GTK Style Module.

Type: boolean

Default: false

Example: true

Declared by:

nice.user.style.gtk.font.name

Name of the font that will be used by GTK applications

It should already be installed by config.fonts.packages!

Type: string

Default: "Iosevka"

Declared by:

nice.user.style.gtk.font.size

Size of the font used by GTK applications

Type: signed integer

Default: 12

Declared by:

nice.user.style.gtk.iconTheme.package

The package providing the icons

Type: package

Default: <derivation papirus-icon-theme-20240501>

Declared by:

nice.user.style.gtk.iconTheme.name

Name of the icon inside the package

Type: string

Default: "Papirus-Dark"

Declared by:

nice.user.style.gtk.theme.package

The package providing the theme

Type: package

Default: <derivation magnetic-catppuccin-gtk-0-unstable-2024-06-27>

Declared by:

nice.user.style.gtk.theme.name

Name of the theme inside the package

Type: string

Default: "Catppuccin-GTK-Dark-Compact"

Declared by:

nice.user.style.qt.enable

Whether to enable QT Style Module.

Type: boolean

Default: false

Example: true

Declared by:

nice.user.style.qt.kvantum.package

Path to the Kvantum theme package

Type: package

Default: <derivation catppuccin-kvantum-0-unstable-2024-10-10>

Declared by:

nice.user.style.qt.kvantum.kvconfig

Path to the Kvantum theme configuration file

Type: string

Default: "/nix/store/kjjfy6rc1kwhdwqjsxpkrxmwg98806n0-catppuccin-kvantum-0-unstable-2024-10-10/share/Kvantum/Catppuccin-Mocha-Blue/Catppuccin-Mocha-Blue.kvconfig"

Declared by:

nice.user.style.qt.kvantum.svg

Path to the Kvantum theme SVG file

Type: string

Default: "/nix/store/kjjfy6rc1kwhdwqjsxpkrxmwg98806n0-catppuccin-kvantum-0-unstable-2024-10-10/share/Kvantum/Catppuccin-Mocha-Blue/Catppuccin-Mocha-Blue.svg"

Declared by:

nice.user.style.qt.theme.package

The package providing the themes

Type: package

Default: <derivation kde-0.2.6>

Declared by:

nice.user.style.qt.theme.kdeglobals

The source file for the kdeglobals file. Usually provided by the QT theme package.

Type: string

Default: "/nix/store/v9hf3y97azz3lxdm2rcsa7l25p33mhc8-kde-0.2.6/share/color-schemes/CatppuccinMochaBlue.colors"

Declared by:

nice.user.style.qt.theme.name

Name of the theme inside the package. This will probably not be used by anything, but let’s keep it here

Type: string

Default: "Catppuccin-Mocha-Blue"

Declared by:

nice.user.style.qt.useGtk

Whether to force QT applications to use the GTK theme.

Type: boolean

Default: false

Declared by:

nice.user.style.qt.useKvantum

Whether to use Kvantum for theming QT applications

Type: boolean

Default: false

Declared by: