_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
"alacritty.toml"
alacritty.toml configuration file.
Type: submodule
Default:
{
path = <derivation alacritty.toml>;
}
"alacritty.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"alacritty.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration of alacritty.
See alacritty(5) or https://alacritty.org/config-alacritty.html
Type: TOML value
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"btop.conf"
Configuration for btop.
Type: submodule
Default:
{
content = "";
}
"btop.conf".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"btop.conf".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.jsonc"
fastfetch config file
Type: submodule
Default:
{
path = <derivation fastfetch-config>;
}
"config.jsonc".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.jsonc".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
fastfetch settings see https://github.com/fastfetch-cli/fastfetch/wiki/Configuration
Type: JSON value
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
"foot.ini"
foot.init configuration file.
Type: submodule
Default:
{
path = <derivation foot.ini>;
}
"foot.ini".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"foot.ini".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
settings
Configuration of foot terminal.
See foot.ini(5)
Type: attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys or attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys))
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
"fuzzel.ini"
This option has no description.
Type: submodule
Default:
{
path = <derivation fuzzel.ini>;
}
"fuzzel.ini".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"fuzzel.ini".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
settings
Configuration of fuzzel.
See fuzzel.ini(5)
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Configuration of ghostty.
See ghostty(5) or https://ghostty.org/docs/config/reference
Type: submodule
Default:
{
path = <derivation ghostty-config>;
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration of ghostty.
See ghostty(5) or https://ghostty.org/docs/config/reference
Type: attribute set of (atom (null, bool, int, float or string) or a list of them for duplicate keys)
Default:
{ }
Example:
{
background = "272822";
cursor-color = "ffffff";
cursor-text = "000000";
foreground = "ffffff";
palette = [
"0=#272822"
"1=#F92672"
"2=#82B414"
"3=#FD971F"
"4=#268BD2"
"5=#8C54FE"
"6=#56C2D5"
"7=#FFFFFF"
"8=#5C5C5C"
"9=#FF5995"
"10=#A6E22E"
"11=#E6DB74"
"12=#62ADE3"
"13=#AE81FF"
"14=#66D9EF"
"15=#CCCCCC"
];
}
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Generated git configuration file.
Type: submodule
Default:
{
path = "/nix/store/x06q44kyb1mai5sq0xg1g2aikqv78fvp-gitconfig";
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Git configuration settings.
See git-config(1) for available options.
Type: attribute set of attribute set of (INI atom (null, bool, int, float or string) or attribute set of (INI atom (null, bool, int, float or string)))
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.toml"
This option has no description.
Type: submodule
Default:
{
path = <derivation halloy-config>;
}
"config.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
extraFiles
Additional files to be placed in the config directory
Type: list of (submodule)
Default:
[ ]
extraFiles.*.file
File or path to add in the halloy config directory
Type: submodule
extraFiles.*.file.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
extraFiles.*.file.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extraFiles.*.name
File name in the halloy config directory
Type: non-empty string
settings
This option has no description.
Type: TOML value
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.toml"
This option has no description.
Type: submodule
Default:
{
path = <derivation helix-config>;
}
"config.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
extraFiles
Additional files to be placed in the config directory
Type: list of (submodule)
Default:
[ ]
extraFiles.*.file
File or path to add in the helix config directory
Type: submodule
extraFiles.*.file.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
extraFiles.*.file.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extraFiles.*.name
File name in the helix config directory
Type: non-empty string
extraSettings
Extra lines appended to the config file. This can be used to maintain order for settings.
Type: strings concatenated with “\n”
Default:
""
ignoreFile
This option has no description.
Type: submodule
ignoreFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
ignoreFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
ignores
List of paths to be ignored by the file-picker. The format is the same as in .gitignore.
Type: list of non-empty string
Default:
[ ]
languages
Language specific settings See https://docs.helix-editor.com/languages.html
Type: TOML value
Default:
{ }
"languages.toml"
This option has no description.
Type: submodule
Default:
{
path = <derivation helix-languages.toml>;
}
"languages.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"languages.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
settings
General settings See https://docs.helix-editor.com/configuration.html
Type: TOML value
Default:
{ }
themes
Themes to add to config. See https://docs.helix-editor.com/themes.html
Type: attribute set of (TOML value or strings concatenated with “\n”)
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
"hypr.conf"
for basic setup of one hypr.conf file
Type: submodule
Default:
{
content = "";
}
"hypr.conf".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"hypr.conf".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.toml"
inori configuration file.
Type: submodule
Default:
{
path = <derivation config.toml>;
}
"config.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration of inori. See https://github.com/eshrh/inori/blob/master/CONFIGURATION.md
Type: TOML value
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.toml"
This option has no description.
Type: submodule
Default:
{
path = <derivation config.toml>;
}
"config.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration of jjui. See https://github.com/idursun/jjui/wiki/Configuration
Type: TOML value
Default:
{ }
themeFiles
This option has no description.
Type: attribute set of (submodule)
Default:
{ }
themeFiles.<name>.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
themeFiles.<name>.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
themes
Themes to add to config. See https://github.com/idursun/jjui/wiki/Themes
Type: attribute set of (TOML value or strings concatenated with “\n”)
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration for jujutsu. See https://jj-vcs.github.io/jj/latest/config/
Type: TOML value
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Kanshi configuration file.
See kanshi(5) for the configuration format.
Type: submodule
Default:
{
content = "";
}
Example:
''
profile {
output LVDS-1 disable
output "Some Company ASDF 4242" mode 1600x900 position 0,0
}
profile nomad {
output LVDS-1 enable scale 2
}
''
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
extraSettings
Extra lines appended to the config file. This can be used to maintain order for settings.
Type: strings concatenated with “\n”
Default:
""
"kitty.conf"
Raw configuration for kitty.
Type: submodule
Default:
{
path = <derivation kitty.conf>;
}
"kitty.conf".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"kitty.conf".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
settings
Configuration for kitty. The fast, feature-rich, GPU based terminal emulator.
Type: attribute set of (atom (null, bool, int, float or string) or a list of them for duplicate keys)
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
This option has no description.
Type: submodule
Default:
{
path = <derivation mako-settings>;
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Configuration settings for mako. Can include both global settings and sections. All available options can be found here: https://github.com/emersion/mako/blob/master/doc/mako.5.scd.
Type: attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys or attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys))
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
"input.conf"
This option has no description.
Type: submodule
Default:
{
content = "";
}
"input.conf".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"input.conf".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
"mpv.conf"
This option has no description.
Type: submodule
Default:
{
content = "";
}
"mpv.conf".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"mpv.conf".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
scripts
Scripts to add to mpv via override.
Type: list of package
Default:
[ ]
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.kdl"
Configuration file for Niri. See https://github.com/YaLTeR/niri/wiki/Configuration:-Introduction
Type: submodule
Default:
{
path = <derivation niri.kdl>;
}
Example:
''
input {
keyboard {
numlock
}
touchpad {
tap
natural-scroll
}
}
''
"config.kdl".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.kdl".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
This option has no description.
Type: open submodule of (attribute set)
settings.binds
Bindings of niri
Type: attribute set
Default:
{ }
Example:
{
"Mod+0" = {
focus-workspace = 0;
};
"Mod+J" = {
focus-column-or-monitor-left = null;
};
"Mod+N" = {
spawn = [
"alacritty"
"msg"
"create-windown"
];
};
"Mod+T" = {
_attrs = {
repeat = false;
};
spawn-sh = "alacritty";
};
}
settings.extraConfig
Escape hatch string option added to the config file for options that might not be representable otherwise
Type: string
Default:
""
settings.layer-rules
List of layer rules
Type: list of (attribute set)
Default:
[ ]
Example:
[
{
block-out-from = "screen-capture";
matches = [
{
namespace = "^notifications$";
}
];
opacity = 0.8;
}
]
settings.layout
Layout definitions
Type: attribute set
Default:
{ }
Example:
{
border = {
active-color = "#f5c2e7";
inactive-color = "#313244";
width = 3;
};
focus-ring = {
off = null;
};
}
settings.outputs
Output configuration
Type: attribute set
Default:
{ }
Example:
{
DP-3 = {
background-color = "#003300";
hot-corners = {
off = null;
};
position = {
_attrs = {
x = 0;
y = 0;
};
};
};
}
settings.spawn-at-startup
List of commands to run at startup. The first element in a passed list will be run with the following elements as arguments
Type: list of (string or list of string)
Default:
[ ]
Example:
[
"hello"
[
"nix"
"build"
]
]
settings.window-rules
List of window rules
Type: list of (attribute set)
Default:
[ ]
Example:
[
{
excludes = [
{
app-id = "org.keepassxc.KeePassXC";
}
];
matches = [
{
app-id = ".*";
}
];
open-floating = false;
open-focused = false;
}
]
settings.workspaces
Named workspace definitons
Type: attribute set of (null or anything)
Default:
{ }
Example:
{
bar = null;
foo = {
open-on-output = "DP-3";
};
}
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
This option has no description.
Type: submodule
Default:
{
path = "/nix/store/rvl2f91wxz2h2ws42y7v42hgzxs44xq0-notmuch.ini";
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
This option has no description.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{
database = {
mail_root = "Maildir";
path = "Maildir";
};
}
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.nu"
This option has no description.
Type: submodule
Default:
{
content = "";
}
"config.nu".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.nu".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
"env.nu"
This option has no description.
Type: submodule
Default:
{
content = "";
}
"env.nu".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"env.nu".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.rasi"
This option has no description.
Type: submodule
"config.rasi".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.rasi".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
plugins
List of rofi plugins to be installed
Type: list of package
Default:
[ ]
settings
Configuration settings for rofi.
Type: (attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string
Default:
{
location = 0;
xoffset = 0;
yoffset = 0;
}
theme
This option has no description.
Type: null or string or absolute path or attribute set of ((attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string)
Default:
null
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
The starship configuration file.
Type: submodule
Default:
{
path = "/nix/store/nxwdf660gjsjhr1d5kwaf9i286iclwx5-starship.toml";
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Starship configuration as a Nix attribute set. See https://starship.rs/config/
Type: TOML value
Default:
{ }
Example:
{
add_newline = false;
character = {
error_symbol = "[x](bold red)";
success_symbol = "[>](bold green)";
};
directory = {
truncation_length = 3;
};
}
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Sway window manager configuration.
Type: submodule
Default:
{
content = "";
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Generated swaylock configuration file.
Type: submodule
Default:
{
content = "";
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Swaylock configuration options.
See swaylock(1) for available options.
Type: attribute set of (string or signed integer or boolean)
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.toml"
Generated SwayOSD configuration file.
Type: submodule
Default:
{
path = <derivation config.toml>;
}
"config.toml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.toml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
SwayOSD server configuration. See https://github.com/ErikReider/SwayOSD for available options.
Type: TOML value
Default:
{ }
Example:
{
server = {
max_volume = 150;
min_brightness = 5;
top_margin = 0.85;
show_percentage = true;
};
}
style
CSS stylesheet for SwayOSD appearance. See the SwayOSD repository for styling examples.
Type: submodule
Default:
{
content = "";
}
style.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
style.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.yml"
Configuration file for udiskie.
Type: submodule
Default:
{
path = <derivation udiskie-config>;
}
"config.yml".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.yml".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Udiskie settings See https://github.com/coldfix/udiskie/wiki/Usage#configuration
Type: YAML 1.1 value
Default:
{ }
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
way-edges config file see https://github.com/way-edges/way-edges/tree/master/doc/config
Type: submodule
Default:
{
path = <derivation way-edges-config>;
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
way-edges settings see https://github.com/way-edges/way-edges/tree/master/doc/config
Type: JSON value
Default:
{ }
Example:
{
widgets = [
{
active-increase = 0;
default-color = "#1e1e2e";
edge = "left";
focus-color = "#f5c2e7";
hover-color = "#f5c2e7";
layer = "top";
length = 200;
monitor = "*";
namespace = "workspaces";
position = "top";
preset = {
type = "niri";
};
thickness = 8;
type = "workspace";
}
];
}
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
configFile
Waybar configuration settings file. See https://github.com/Alexays/Waybar/wiki/Configuration
Type: submodule
Default:
{
path = <derivation waybar-config>;
}
Example:
{
content = ''
{
"height": 30,
"layer": "top",
"modules-center": [],
"modules-left": [
"sway/workspaces",
"niri/workspaces"
]
}
'';
}
configFile.content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
configFile.path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
settings
Waybar configuration settings. See https://github.com/Alexays/Waybar/wiki/Configuration
Type: JSON value
Default:
{ }
Example:
{
height = 30;
layer = "top";
modules-center = [ ];
modules-left = [
"niri/workspaces"
"sway/workspaces"
];
position = "top";
}
"style.css"
CSS style for Waybar.
Type: submodule
Default:
{
content = "";
}
"style.css".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"style.css".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
"config.kdl"
Settings in KDL format See https://zellij.dev/documentation/configuration.html
Type: submodule
"config.kdl".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
"config.kdl".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
".zshenv"
This option has no description.
Type: submodule
Default:
{
content = "EXAMPLE=TRUE";
}
".zshenv".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
".zshenv".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
".zshrc"
This option has no description.
Type: submodule
Default:
{
content = ''
# KeyMap
bindkey -e
# Aliases
# Completion
#Autosuggestions
# Integrations
# History
HISTSIZE=10000
HISTSAVE=10000
setopt appendhistory
# Extra Content
'';
}
".zshrc".content
Content of the file. This can be a multi-line string that will be written to the Nix store and made available via the path option.
Type: strings concatenated with “\n”
".zshrc".path
The path to the file. By default, this is automatically generated using pkgs.writeText with the attribute name and content. You can override this to provide:
- A custom Nix path (e.g., ./config.txt or pkgs.writeText “name” “content”)
- An absolute path string outside the store (e.g., “/etc/config.txt”)
- A path with environment variables (e.g., “$HOME/.config/app.conf”)
Type: absolute path or string
Default:
"pkgs.writeText name <content>"
_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:
-
lib: The nixpkgs library. -
config: The results of all options after merging the values from all modules together. -
options: The options declared in all modules. -
specialArgs: ThespecialArgsargument passed toevalModules. -
All attributes of
specialArgsWhereas option values can generally depend on other option values thanks to laziness, this does not apply to
imports, which must be computed statically before anything else.For this reason, callers of the module system can provide
specialArgswhich are available during import resolution.For NixOS,
specialArgsincludesmodulesPath, which allows you to import extra modules from the nixpkgs package tree without having to somehow make the module aware of the location of thenixpkgsor NixOS directories.{ modulesPath, ... }: { imports = [ (modulesPath + "/profiles/minimal.nix") ]; }
For NixOS, the default value for this option includes at least this argument:
pkgs: The nixpkgs package set according to thenixpkgs.pkgsoption.
Type: lazy attribute set of raw value
Declared by:
apply
Function to extend the current configuration with additional modules. Re-evaluates the configuration with the original settings plus the new module.
Type: function that evaluates to a(n) raw value (read only)
Default:
<function>
extend
Function to extend the current configuration with additional settings. Re-evaluates the configuration with the original modules plus the new settings.
Type: function that evaluates to a(n) raw value
Default:
<function>
extraRC
extra stuff to put in .zshrc, gets appended after all of the options
Type: strings concatenated with “\n”
Default:
""
settings.autoSuggestions.enable
Whether to enable autoSuggestions.
Type: boolean
Default:
false
Example:
true
settings.autoSuggestions.highlight
Custom styles for autosuggestion highlighting
Type: null or string
Default:
null
Example:
"fg=#ff00ff,bg=cyan,bold,underline"
settings.autoSuggestions.strategy
This option has no description.
Type: list of (one of “history”, “completion”, “match_prev_cmd”)
Default:
[
"history"
"completion"
]
settings.autocd
cd into a directory just by typing it in
Type: boolean
Default:
false
settings.completion.enable
Whether to enable completions.
Type: boolean
Default:
false
Example:
true
settings.completion.caseInsensitive
Whether to enable completions.
Type: boolean
Default:
false
Example:
true
settings.completion.colors
make the completions colorful (as if you were using ls --color)
Type: boolean
Default:
false
settings.completion.extraCompletions
enable to add zsh-completions package, it has extra completions for other tools
Type: boolean
Default:
false
settings.completion.fuzzySearch
Whether to enable fuzzy-completion.
Type: boolean
Default:
false
Example:
true
settings.completion.init
Initialization commands to run when completion is enabled.
Type: strings concatenated with “\n”
Default:
"autoload -U compinit && compinit"
settings.env
environment variables to put in .zshenv as an attribute set of strings just like environment.systemVariables
Type: attribute set of string
Default:
{
EXAMPLE = "TRUE";
}
settings.history.append
append history for every new session instead of replacing it
Type: boolean
Default:
true
settings.history.expanded
save timestamps with history
Type: boolean
Default:
false
settings.history.expireDupsFirst
remove duplicates in the history first to make room for new commands
Type: boolean
Default:
false
settings.history.findNoDups
don’t display duplicates when doing a history search
Type: boolean
Default:
false
settings.history.ignoreAllDups
if you run the same command twice, the newer replaces the old one in history, even if its a different output
Type: boolean
Default:
false
settings.history.ignoreDups
if you run the same command twice, the newer replaces the old one in history, only if it’s the same output
Type: boolean
Default:
false
settings.history.ignoreSpace
a command is not added to history if a space preceeds it
Type: boolean
Default:
false
settings.history.save
the number of history lines to save
Type: signed integer
Default:
10000
settings.history.saveNoDups
don’t write duplicates into the history file.
Type: boolean
Default:
false
settings.history.share
share history between sessions
Type: boolean
Default:
false
settings.history.size
the number of lines to keep
Type: signed integer
Default:
10000
settings.integrations.atuin.enable
Whether to enable atuin.
Type: boolean
Default:
false
Example:
true
settings.integrations.atuin.package
This option has no description.
Type: package
Default:
<derivation atuin-18.10.0>
settings.integrations.fzf.enable
Whether to enable fzf.
Type: boolean
Default:
false
Example:
true
settings.integrations.fzf.package
This option has no description.
Type: package
Default:
<derivation fzf-0.67.0>
settings.integrations.oh-my-posh.enable
Whether to enable oh-my-posh.
Type: boolean
Default:
false
Example:
true
settings.integrations.oh-my-posh.package
This option has no description.
Type: package
Default:
<derivation oh-my-posh-26.23.6>
settings.integrations.pay-respects.enable
Whether to enable pay-respects.
Type: boolean
Default:
false
Example:
true
settings.integrations.pay-respects.package
This option has no description.
Type: package
Default:
<derivation pay-respects-0.7.9>
settings.integrations.pay-respects.flags
This option has no description.
Type: list of string
Default:
[ ]
settings.integrations.starship.enable
Whether to enable starship.
Type: boolean
Default:
false
Example:
true
settings.integrations.starship.package
This option has no description.
Type: package
Default:
<derivation starship-1.24.1>
settings.integrations.zoxide.enable
Whether to enable zoxide.
Type: boolean
Default:
false
Example:
true
settings.integrations.zoxide.package
This option has no description.
Type: package
Default:
<derivation zoxide-0.9.8>
settings.integrations.zoxide.flags
This option has no description.
Type: list of string
Default:
[ ]
settings.keyMap
zsh key map, defaults to emacs mode (bindkey -e).
Type: one of “emacs”, “viins”, “vicmd”
Default:
"emacs"
settings.shellAliases
shell aliases (alias – key=value)
Type: attribute set of string
Default:
{ }