_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
: The specialArgs
argument passed to evalModules
.
All attributes of specialArgs
Whereas 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 specialArgs
which are available during import resolution.
For NixOS, specialArgs
includes
modulesPath
, which allows you to import
extra modules from the nixpkgs package tree without having to
somehow make the module aware of the location of the
nixpkgs
or 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
the nixpkgs.pkgs
option.
Type: lazy attribute set of raw value
Declared by:
<nixpkgs/lib/modules.nix>
|
accounts.calendar.accounts
List of calendars.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/qcal.nix>
|
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.enable
Whether to enable khal access.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.addresses
Email addresses to be associated with this account. Used to check the participation status (“PARTSTAT”), refer to khal documentation.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.color
Color in which events in this calendar are displayed. For instance ‘light green’ or an RGB color ‘#ff0000’
Type: null or string
Default:
null
Example:
"light green"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.glob
The glob expansion to be searched for events or birthdays when type is set to discover.
Type: string
Default:
"*"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.priority
Priority of a calendar used for coloring (calendar with highest priority is preferred).
Type: signed integer
Default:
10
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.readOnly
Keep khal from making any changes to this account.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.khal.type
Either a single calendar (calendar which is the default) or a directory with multiple calendars (discover).
Type: one of “calendar”, “discover”
Default:
"calendar"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.local
Local configuration for the calendar.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.local.encoding
File encoding for items, both content and file name. Defaults to UTF-8.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.local.fileExt
The file extension to use.
Type: null or string
Default:
".ics"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.local.path
The path of the storage.
Type: string
Default:
"‹accounts.calendar.basePath›/‹name›"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.local.type
The type of the storage.
Type: one of “filesystem”, “singlefile”
Default:
"filesystem"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.name
Unique identifier of the calendar. This is set to the attribute name of the calendar configuration.
Type: string (read only)
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.primary
Whether this is the primary account. Only one account may be set as primary.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.primaryCollection
The primary collection of the account. Required when an account has multiple collections.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.qcal.enable
Whether to enable qcal access.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/qcal.nix>
|
accounts.calendar.accounts.<name>.remote
Remote configuration for the calendar.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.remote.passwordCommand
A command that prints the password to standard output.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"caldav"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.remote.type
The type of the storage.
Type: one of “caldav”, “http”, “google_calendar”
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.remote.url
The URL of the storage.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.remote.userName
User name for authentication.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.enable
Whether to enable synchronization using vdirsyncer.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.auth
Authentication settings. The default is basic
.
Type: null or one of “basic”, “digest”, “guess”
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.authCert
Either a path to a certificate with a client certificate and the key or a list of paths to the files with them.
Type: null or string or list of string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.clientIdCommand
A command that prints the OAuth credentials to standard output.
See https://vdirsyncer.pimutils.org/en/stable/config.html#google for more information.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"client_id"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.clientSecretCommand
A command that prints the OAuth credentials to standard output.
See https://vdirsyncer.pimutils.org/en/stable/config.html#google for more information.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"client_secret"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.collections
The collections to synchronize between the storages.
Type: null or (list of (string or list of string))
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.conflictResolution
What to do in case of a conflict between the storages. Either
remote wins
or
local wins
or
a list that contains a command to run. By default, an error
message is printed.
Type: null or one of “remote wins”, “local wins” or list of string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.itemTypes
Kinds of items to show. The default is to show everything. This depends on particular features of the server, the results are not validated.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.metadata
Metadata keys that should be synchronized when vdirsyncer metasync is executed.
Type: list of string
Default:
[ ]
Example:
[
"color"
"displayname"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.partialSync
What should happen if synchronization in one direction
is impossible due to one storage being read-only.
Defaults to revert
.
See https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section for more information.
Type: null or one of “revert”, “error”, “ignore”
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.postHook
Command to call for each item creation and modification. The command will be called with the path of the new/updated file.
Type: null or strings concatenated with “\n”
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.timeRange
A time range to synchronize. start and end can be any Python
expression that returns a datetime.datetime
object.
Type: null or (submodule)
Default:
null
Example:
{
end = "datetime.now() + timedelta(days=365)";
start = "datetime.now() - timedelta(days=365)";
}
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.timeRange.end
End of time range to show.
Type: string
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.timeRange.start
Start of time range to show.
Type: string
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.tokenFile
A file path where access tokens are stored.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.urlCommand
A command that prints the URL of the storage.
Type: null or (list of string)
Default:
null
Example:
[
"~/get-url.sh"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.userAgent
The user agent to report to the server. Defaults to
vdirsyncer
.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.userNameCommand
A command that prints the user name to standard output.
Type: null or (list of string)
Default:
null
Example:
[
"~/get-username.sh"
]
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.verify
Null or path to certificate to verify SSL against
Type: null or path
Default:
null
Example:
"/path/to/cert.pem"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.accounts.<name>.vdirsyncer.verifyFingerprint
Optional. SHA1 or MD5 fingerprint of the expected server certificate.
See https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial for more information.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.calendar.basePath
The base directory in which to save calendars. May be a relative path, in which case it is relative the home directory.
Type: string
Example:
".calendar"
Declared by:
<home-manager/modules/accounts/calendar.nix>
|
accounts.contact.accounts
List of contacts.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/khard.nix>
|
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.enable
Whether to enable khal access.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.addresses
Email addresses to be associated with this account. Used to check the participation status (“PARTSTAT”), refer to khal documentation.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.collections
VCARD collections to be searched for contact birthdays.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.color
Color in which events in this calendar are displayed. For instance ‘light green’ or an RGB color ‘#ff0000’
Type: null or string
Default:
null
Example:
"light green"
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.priority
Priority of a calendar used for coloring (calendar with highest priority is preferred).
Type: signed integer
Default:
10
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khal.readOnly
Keep khal from making any changes to this account.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.khard.enable
Whether to enable khard access.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/khard.nix>
|
accounts.contact.accounts.<name>.khard.defaultCollection
VCARD collection to be searched by khard.
Type: string
Default:
""
Declared by:
<home-manager/modules/programs/khard.nix>
|
accounts.contact.accounts.<name>.local
Local configuration for the contacts.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.local.encoding
File encoding for items, both content and file name. Defaults to UTF-8.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.local.fileExt
The file extension to use.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.local.path
The path of the storage.
Type: string
Default:
"‹accounts.contact.basePath›/‹name›"
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.local.type
The type of the storage.
Type: one of “filesystem”, “singlefile”
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.name
Unique identifier of the contact account. This is set to the attribute name of the contact configuration.
Type: string (read only)
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.remote
Remote configuration for the contacts.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.remote.passwordCommand
A command that prints the password to standard output.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"caldav"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.remote.type
The type of the storage.
Type: one of “carddav”, “http”, “google_contacts”
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.remote.url
The URL of the storage.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.remote.userName
User name for authentication.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.enable
Whether to enable synchronization using vdirsyncer.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.auth
Authentication settings. The default is basic
.
Type: null or one of “basic”, “digest”, “guess”
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.authCert
Either a path to a certificate with a client certificate and the key or a list of paths to the files with them.
Type: null or string or list of string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.clientIdCommand
A command that prints the OAuth credentials to standard output.
See https://vdirsyncer.pimutils.org/en/stable/config.html#google for more information.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"client_id"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.clientSecretCommand
A command that prints the OAuth credentials to standard output.
See https://vdirsyncer.pimutils.org/en/stable/config.html#google for more information.
Type: null or (list of string)
Default:
null
Example:
[
"pass"
"client_secret"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.collections
The collections to synchronize between the storages.
Type: null or (list of (string or list of string))
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.conflictResolution
What to do in case of a conflict between the storages. Either
remote wins
or
local wins
or
a list that contains a command to run. By default, an error
message is printed.
Type: null or one of “remote wins”, “local wins” or list of string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.itemTypes
Kinds of items to show. The default is to show everything. This depends on particular features of the server, the results are not validated.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.metadata
Metadata keys that should be synchronized when vdirsyncer metasync is executed.
Type: list of string
Default:
[ ]
Example:
[
"color"
"displayname"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.partialSync
What should happen if synchronization in one direction
is impossible due to one storage being read-only.
Defaults to revert
.
See https://vdirsyncer.pimutils.org/en/stable/config.html#pair-section for more information.
Type: null or one of “revert”, “error”, “ignore”
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.postHook
Command to call for each item creation and modification. The command will be called with the path of the new/updated file.
Type: null or strings concatenated with “\n”
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.timeRange
A time range to synchronize. start and end can be any Python
expression that returns a datetime.datetime
object.
Type: null or (submodule)
Default:
null
Example:
{
end = "datetime.now() + timedelta(days=365)";
start = "datetime.now() - timedelta(days=365)";
}
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.timeRange.end
End of time range to show.
Type: string
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.timeRange.start
Start of time range to show.
Type: string
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.tokenFile
A file path where access tokens are stored.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.urlCommand
A command that prints the URL of the storage.
Type: null or (list of string)
Default:
null
Example:
[
"~/get-url.sh"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.userAgent
The user agent to report to the server. Defaults to
vdirsyncer
.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.userNameCommand
A command that prints the user name to standard output.
Type: null or (list of string)
Default:
null
Example:
[
"~/get-username.sh"
]
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.verify
Null or path to certificate to verify SSL against
Type: null or path
Default:
null
Example:
"/path/to/cert.pem"
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.accounts.<name>.vdirsyncer.verifyFingerprint
Optional. SHA1 or MD5 fingerprint of the expected server certificate.
See https://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorial for more information.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.contact.basePath
The base directory in which to save contacts. May be a relative path, in which case it is relative the home directory.
Type: string
Declared by:
<home-manager/modules/accounts/contacts.nix>
|
accounts.email.accounts
List of email accounts.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
accounts.email.accounts.<name>.address
The email address of this account.
Type: string matching the pattern .*@.*
Example:
"jane.doe@example.org"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.aerc.enable
Whether to enable aerc.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.extraAccounts
Extra config added to the configuration section for this account in
$HOME/.config/aerc/accounts.conf
.
See aerc-accounts(5).
Type: attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ source = "maildir://~/Maildir/example"; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.extraBinds
Extra bindings specific to this account, added to
$HOME/.config/aerc/binds.conf
.
See aerc-binds(5).
Type: attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ messages = { d = ":move ${folder.trash}<Enter>"; }; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.extraConfig
Config specific to this account, added to $HOME/.config/aerc/aerc.conf
.
Aerc only supports per-account UI configuration.
For other sections of $HOME/.config/aerc/aerc.conf
,
use programs.aerc.extraConfig
.
See aerc-config(5).
Type: attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ ui = { sidebar-width = 25; }; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapAuth
Sets the authentication mechanism if imap is used as the incoming method. See aerc-imap(5).
Type: null or one of “oauthbearer”, “xoauth2”
Default:
null
Example:
"auth"
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapOauth2Params
Sets the oauth2 params if authentication mechanism oauthbearer or xoauth2 is used. See aerc-imap(5).
Type: null or (submodule)
Default:
null
Example:
{
token_endpoint = "<token_endpoint>";
}
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapOauth2Params.client_id
The OAuth2 client identifier.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapOauth2Params.client_secret
The OAuth2 client secret.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapOauth2Params.scope
The OAuth2 requested scope.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.imapOauth2Params.token_endpoint
The OAuth2 token endpoint.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpAuth
Sets the authentication mechanism if smtp is used as the outgoing method. See aerc-smtp(5).
Type: null or one of “none”, “plain”, “login”, “oauthbearer”, “xoauth2”
Default:
"plain"
Example:
"auth"
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpOauth2Params
Sets the oauth2 params if authentication mechanism oauthbearer or xoauth2 is used. See aerc-imap(5).
Type: null or (submodule)
Default:
null
Example:
{
token_endpoint = "<token_endpoint>";
}
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_id
The OAuth2 client identifier.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpOauth2Params.client_secret
The OAuth2 client secret.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpOauth2Params.scope
The OAuth2 requested scope.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aerc.smtpOauth2Params.token_endpoint
The OAuth2 token endpoint.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/aerc.nix>
|
accounts.email.accounts.<name>.aliases
Alternative email addresses of this account.
Type: list of string matching the pattern .*@.*
Default:
[ ]
Example:
[
"webmaster@example.org"
"admin@example.org"
]
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.alot.contactCompletion
Contact completion configuration as expected per alot. See alot’s wiki for explanation about possible values.
Type: attribute set of string
Default:
{
command = "'\${pkgs.notmuch}/bin/notmuch address --format=json --output=recipients date:6M..'";
regexp = "'\\[?{\"name\": \"(?P<name>.*)\", \"address\": \"(?P<email>.+)\", \"name-addr\": \".*\"}[,\\]]?'";
shellcommand_external_filtering = "False";
type = "shellcommand";
}
Example:
{
type = "shellcommand";
command = "abook --mutt-query";
regexp = "'^(?P<email>[^@]+@[^\t]+)\t+(?P<name>[^\t]+)'";
ignorecase = "True";
}
Declared by:
<home-manager/modules/programs/alot.nix>
|
accounts.email.accounts.<name>.alot.extraConfig
Extra settings to add to this Alot account configuration.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/alot.nix>
|
accounts.email.accounts.<name>.alot.sendMailCommand
Command to send a mail. If msmtp is enabled for the account, then this is set to msmtpq --read-envelope-from --read-recipients.
Type: null or string
Declared by:
<home-manager/modules/programs/alot.nix>
|
accounts.email.accounts.<name>.astroid.enable
Whether to enable Astroid.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/astroid.nix>
|
accounts.email.accounts.<name>.astroid.extraConfig
Extra settings to add to this astroid account configuration.
Type: attribute set of anything
Default:
{ }
Example:
{
select_query = "";
}
Declared by:
<home-manager/modules/programs/astroid.nix>
|
accounts.email.accounts.<name>.astroid.sendMailCommand
Command to send a mail. If msmtp is enabled for the account, then this is set to msmtpq --read-envelope-from --read-recipients.
Type: string
Declared by:
<home-manager/modules/programs/astroid.nix>
|
accounts.email.accounts.<name>.flavor
Some email providers have peculiar behavior that require special treatment. This option is therefore intended to indicate the nature of the provider.
When this indicates a specific provider then, for example, the IMAP, SMTP, and JMAP server configuration may be set automatically.
Type: one of “plain”, “gmail.com”, “runbox.com”, “fastmail.com”, “yandex.com”, “outlook.office365.com”
Default:
"plain"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.folders
Standard email folders.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.folders.drafts
Relative path of the drafts mail folder.
Type: null or string
Default:
"Drafts"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.folders.inbox
Relative path of the inbox mail.
Type: string
Default:
"Inbox"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.folders.sent
Relative path of the sent mail folder.
Type: null or string
Default:
"Sent"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.folders.trash
Relative path of the deleted mail folder.
Type: string
Default:
"Trash"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.getmail.enable
Whether to enable the getmail mail retriever for this account.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/getmail.nix>
|
accounts.email.accounts.<name>.getmail.delete
Enable if you want to delete read messages from the server. Most
users should either enable delete
or disable
readAll
.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/getmail.nix>
|
accounts.email.accounts.<name>.getmail.destinationCommand
Specify a command delivering the incoming mail to your maildir.
Type: null or string
Default:
null
Example:
"\${pkgs.maildrop}/bin/maildrop"
Declared by:
<home-manager/modules/programs/getmail.nix>
|
accounts.email.accounts.<name>.getmail.mailboxes
A non-empty list of mailboxes. To download all mail you can
use the ALL
mailbox.
Type: non-empty (list of string)
Default:
[ ]
Example:
[
"INBOX"
"INBOX.spam"
]
Declared by:
<home-manager/modules/programs/getmail.nix>
|
accounts.email.accounts.<name>.getmail.readAll
Enable if you want to fetch all, even the read messages from the
server. Most users should either enable delete
or
disable readAll
.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/getmail.nix>
|
accounts.email.accounts.<name>.gpg
GPG configuration.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.gpg.encryptByDefault
Encrypt outgoing messages by default.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.gpg.key
The key to use as listed in gpg --list-keys.
Type: string
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.gpg.signByDefault
Sign messages by default.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.himalaya.enable
Whether to enable the email client Himalaya CLI for this email account.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/himalaya.nix>
|
accounts.email.accounts.<name>.himalaya.settings
Himalaya CLI configuration for this email account. See https://pimalaya.org/himalaya/cli/latest/configuration/index.html#account-configuration for supported values.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/himalaya.nix>
|
accounts.email.accounts.<name>.imap
The IMAP configuration to use for this account.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.host
Hostname of IMAP server.
Type: string
Example:
"imap.example.org"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.port
The port on which the IMAP server listens. If
null
then the default port is used.
Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default:
null
Example:
993
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.tls
Configuration for secure connections.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.tls.enable
Whether to enable TLS/SSL.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.tls.certificatesFile
Path to file containing certificate authorities that should
be used to validate the connection authenticity. If
null
then the system default is used.
Note, if set then the system default may still be accepted.
Type: null or path
Default:
"config.accounts.email.certificatesFile"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imap.tls.useStartTls
Whether to use STARTTLS.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.imapnotify.enable
Whether to enable imapnotify.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/services/imapnotify.nix>
|
accounts.email.accounts.<name>.imapnotify.boxes
IMAP folders to watch.
Type: list of string
Default:
[ ]
Example:
[
"Inbox"
"[Gmail]/MyLabel"
]
Declared by:
<home-manager/modules/services/imapnotify.nix>
|
accounts.email.accounts.<name>.imapnotify.extraConfig
Additional configuration to add for this account.
Type: JSON value
Default:
{ }
Example:
{
wait = 10;
}
Declared by:
<home-manager/modules/services/imapnotify.nix>
|
accounts.email.accounts.<name>.imapnotify.onNotify
Shell commands to run on any event.
Type: string or attribute set of string
Default:
""
Example:
"\${pkgs.isync}/bin/mbsync test-%s"
Declared by:
<home-manager/modules/services/imapnotify.nix>
|
accounts.email.accounts.<name>.imapnotify.onNotifyPost
Shell commands to run after onNotify event.
Type: string or attribute set of string
Default:
""
Example:
{
mail = "\${pkgs.notmuch}/bin/notmuch new && \${pkgs.libnotify}/bin/notify-send 'New mail arrived'";
}
Declared by:
<home-manager/modules/services/imapnotify.nix>
|
accounts.email.accounts.<name>.jmap
The JMAP configuration to use for this account.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.jmap.host
Hostname of JMAP server.
If both this option and accounts.email.accounts.<name>.jmap.sessionUrl
are specified,
host
is preferred by applications when establishing a
session.
Type: null or string
Default:
null
Example:
"jmap.example.org"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.jmap.sessionUrl
URL for the JMAP Session resource.
If both this option and accounts.email.accounts.<name>.jmap.host
are specified,
host
is preferred by applications when establishing a
session.
Type: null or string
Default:
null
Example:
"https://jmap.example.org:443/.well-known/jmap"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.lieer.enable
Whether to enable lieer Gmail synchronization for notmuch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.notmuchSetupWarning
Warn if Notmuch is not also enabled for this account.
This can safely be disabled if notmuch init has been used to configure this account outside of Home Manager.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings
Settings which are applied to .gmailieer.json
for the account.
See the lieer manual for documentation of settings not explicitly covered by this module.
Type: JSON value
Default:
{ }
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.drop_non_existing_label
Allow missing labels on the Gmail side to be dropped.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.file_extension
Extension to include in local file names, which can be useful for indexing with third-party programs.
Type: string
Default:
""
Example:
"mbox"
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.ignore_empty_history
Work around a Gmail API quirk where an empty change history is sometimes returned.
See this GitHub issue for more details.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.ignore_remote_labels
Set Gmail labels to ignore when syncing from remote labels to local tags (before translations).
Type: list of string
Default:
[
"CATEGORY_FORUMS"
"CATEGORY_PROMOTIONS"
"CATEGORY_UPDATES"
"CATEGORY_SOCIAL"
"CATEGORY_PERSONAL"
]
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.ignore_tags
Set labels to ignore when syncing from local tags to remote labels (after translations).
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.local_trash_tag
Local tag to which the remote Gmail ‘TRASH’ label is translated.
Type: string
Default:
"trash"
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.remove_local_messages
Remove local messages that have been deleted on the remote.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.replace_slash_with_dot
Replace ‘/’ with ‘.’ in Gmail labels.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.settings.timeout
HTTP timeout in seconds. 0 means forever or system timeout.
Type: unsigned integer, meaning >=0
Default:
600
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.sync.enable
Whether to enable lieer synchronization service.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.lieer.sync.frequency
How often to synchronize the account.
This value is passed to the systemd timer configuration as the onCalendar option. See systemd.time(7) for more information about the format.
Type: string
Default:
"*:0/5"
Declared by:
<home-manager/modules/programs/lieer.nix>
|
accounts.email.accounts.<name>.maildir
Maildir configuration for this account.
Type: null or (submodule)
Default:
{
path = "\${name}";
}
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.maildir.path
Path to maildir directory where mail for this account is stored. This is relative to the base maildir path.
Type: string
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.mbsync.enable
Whether to enable synchronization using mbsync.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.create
Automatically create missing mailboxes within the given mail store.
Type: one of “none”, “maildir”, “imap”, “both”
Default:
"none"
Example:
"maildir"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.expunge
Permanently remove messages marked for deletion from the given mail store.
Type: one of “none”, “maildir”, “imap”, “both”
Default:
"none"
Example:
"both"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.extraConfig.account
Account section extra configuration.
Type: attribute set of (string or signed integer or boolean or list of string)
Default:
{ }
Example:
{
PipelineDepth = 10;
Timeout = 60;
};
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.extraConfig.channel
Per channel extra configuration.
Type: attribute set of (string or signed integer or boolean or list of string)
Default:
{ }
Example:
{
MaxMessages = 10000;
MaxSize = "1m";
};
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.extraConfig.local
Local store extra configuration.
Type: attribute set of (string or signed integer or boolean or list of string)
Default:
{ }
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.extraConfig.remote
Remote store extra configuration.
Type: attribute set of (string or signed integer or boolean or list of string)
Default:
{ }
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.flatten
If set, flattens the hierarchy within the maildir by
substituting the canonical hierarchy delimiter
/
with this value.
Type: null or string
Default:
null
Example:
"."
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups
Some email providers (Gmail) have a different directory hierarchy for
synchronized email messages. Namely, when using mbsync without specifying
a set of channels into a group, all synchronized directories end up beneath
the [Gmail]/
directory.
This option allows you to specify a group, and subsequently channels that will allow you to sync your mail into an arbitrary hierarchy.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels
List of channels that should be grouped together into this group. When performing a synchronization, the groups are synchronized, rather than the individual channels.
Using these channels and then grouping them together allows for you to define the maildir hierarchy as you see fit.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.extraConfig
Extra configuration lines to add to THIS channel’s configuration.
Type: attribute set of (string or signed integer or boolean or list of string)
Default:
{ }
Example:
{
Create = "both";
CopyArrivalDate = "yes";
MaxMessages = 10000;
MaxSize = "1m";
}
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.farPattern
IMAP4 patterns for which mailboxes on the remote mail server to sync.
If Patterns
are specified, farPattern
is interpreted as a prefix which is not matched against the patterns,
and is not affected by mailbox list overrides.
If this is left as the default, then mbsync will default to the pattern
INBOX
.
Type: string
Default:
""
Example:
"[Gmail]/Sent Mail"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.name
The unique name for THIS channel in THIS group. The group will refer to this channel by this name.
In addition, you can manually sync just this channel by specifying this name to mbsync on the command line.
Type: string (read only)
Default:
"‹name›"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.nearPattern
Name for where mail coming from the remote (far) mail server will end up locally. The mailbox specified by the far pattern will be placed in this directory.
If this is left as the default, then mbsync will default to the pattern
INBOX
.
Type: string
Default:
""
Example:
"Sent"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.patterns
Instead of synchronizing just the mailboxes that
match the farPattern
, use it as a prefix which is
not matched against the patterns, and is not affected by mailbox list
overrides.
Type: list of string
Default:
[ ]
Example:
[
"INBOX"
]
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.groups.<name>.name
The name of this group for this account. These names are different than some others, because they will hide channel names that are the same.
Type: string (read only)
Default:
"‹name›"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.patterns
Pattern of mailboxes to synchronize.
Type: list of string
Default:
[
"*"
]
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.remove
Propagate mailbox deletions to the given mail store.
Type: one of “none”, “maildir”, “imap”, “both”
Default:
"none"
Example:
"imap"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.mbsync.subFolders
The on-disk folder naming style. This option has no
effect when flatten
is used.
Type: one of “Verbatim”, “Maildir++”, “Legacy”
Default:
"Verbatim"
Example:
"Maildir++"
Declared by:
<home-manager/modules/programs/mbsync.nix>
|
accounts.email.accounts.<name>.msmtp.enable
Whether to enable msmtp.
If enabled then it is possible to use the
--account
command line
option to send a message for a given account using the
msmtp or msmtpq tool.
For example, msmtp --account=private would
send using the account defined in
accounts.email.accounts.private
. If the
--account
option is not
given then the primary account will be used.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/msmtp.nix>
|
accounts.email.accounts.<name>.msmtp.extraConfig
Extra configuration options to add to ~/.msmtprc
.
See https://marlam.de/msmtp/msmtprc.txt for
examples.
Type: attribute set of string
Default:
{ }
Example:
{
auth = "login";
}
Declared by:
<home-manager/modules/programs/msmtp.nix>
|
accounts.email.accounts.<name>.msmtp.tls.fingerprint
Fingerprint of a trusted TLS certificate. The fingerprint can be obtained by executing msmtp --serverinfo --tls --tls-certcheck=off.
Type: null or string matching the pattern ([[:alnum:]]{2}:)+[[:alnum:]]{2}
Default:
null
Example:
"my:SH:a2:56:ha:sh"
Declared by:
<home-manager/modules/programs/msmtp.nix>
|
accounts.email.accounts.<name>.mu.enable
Whether to enable mu indexing.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/mu.nix>
|
accounts.email.accounts.<name>.mujmap.enable
Whether to enable mujmap JMAP synchronization for notmuch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.notmuchSetupWarning
Warn if Notmuch is not also enabled for this account.
This can safely be disabled if mujmap.toml
is managed
outside of Home Manager.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings
Settings which are applied to mujmap.toml
for the account.
See the mujmap project for documentation of settings not explicitly covered by this module.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.auto_create_new_mailboxes
Whether to create new mailboxes automatically on the server from notmuch tags.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.cache_dir
The cache directory in which to store mail files while they are being downloaded. The default is operating-system specific.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.fqdn
Fully qualified domain name of the JMAP service.
mujmap looks up the JMAP SRV record for this host to determine the JMAP session
URL. Mutually exclusive with
accounts.email.accounts.<name>.mujmap.settings.session_url
.
If null
, defaults to
accounts.email.accounts.<name>.jmap.host
.
Type: null or string
Default:
null
Example:
"example.com"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.password_command
Shell command which will print a password to stdout for basic HTTP authentication.
If null
, defaults to
accounts.email.accounts.<name>.passwordCommand
.
Type: null or string or list of string
Default:
null
Example:
"pass alice@example.com"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.session_url
Session URL to connect to.
Mutually exclusive with
accounts.email.accounts.<name>.mujmap.settings.fqdn
.
If null
, defaults to
accounts.email.accounts.<name>.jmap.sessionUrl
.
Type: null or string
Default:
null
Example:
"https://jmap.example.com/.well-known/jmap"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags
Tag configuration.
Beware that there are quirks that require manual consideration if changing the values of these files; please see https://github.com/elizagamedev/mujmap/blob/main/mujmap.toml.example for more details.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.deleted
Tag for notmuch to use for messages stored in the mailbox labeled with the
Trash
name attribute.
If set to an empty string, this mailbox and its child mailboxes are not synchronized with a tag.
Type: string
Default:
"deleted"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.directory_separator
Directory separator for mapping notmuch tags to maildirs.
Type: string
Default:
"/"
Example:
"."
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.important
Tag for notmuch to use for messages stored in the mailbox labeled with the
Important
name attribute and/or with the $Important
keyword.
If set to an empty string, this mailbox, its child mailboxes, and these keywords are not synchronized with a tag.
Type: string
Default:
"important"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.inbox
Tag for notmuch to use for messages stored in the mailbox labeled with the
Inbox
name attribute.
If set to an empty string, this mailbox and its child mailboxes are not synchronized with a tag.
Type: string
Default:
"inbox"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.lowercase
If true, translate all mailboxes to lowercase names when mapping to notmuch tags.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.phishing
Tag for notmuch to use for the IANA $Phishing
keyword.
If set to an empty string, this keyword is not synchronized with a tag.
Type: string
Default:
"phishing"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.sent
Tag for notmuch to use for messages stored in the mailbox labeled with the
Sent
name attribute.
If set to an empty string, this mailbox and its child mailboxes are not synchronized with a tag.
Type: string
Default:
"sent"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.tags.spam
Tag for notmuch to use for messages stored in the mailbox labeled with the
Junk
name attribute and/or with the $Junk
keyword,
except for messages with the $NotJunk
keyword.
If set to an empty string, this mailbox, its child mailboxes, and these keywords are not synchronized with a tag.
Type: string
Default:
"spam"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.mujmap.settings.username
Username for basic HTTP authentication.
If null
, defaults to
accounts.email.accounts.<name>.userName
.
Type: null or string
Default:
null
Example:
"alice@example.com"
Declared by:
<home-manager/modules/programs/mujmap.nix>
|
accounts.email.accounts.<name>.name
Unique identifier of the account. This is set to the attribute name of the account configuration.
Type: string (read only)
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.neomutt.enable
Whether to enable NeoMutt.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.extraConfig
Extra lines to add to the folder hook for this account.
Type: strings concatenated with “\n”
Default:
""
Example:
"color status cyan default"
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.extraMailboxes
List of extra mailboxes
Type: list of (string or (submodule))
Default:
[ ]
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.mailboxName
Use a different name as mailbox name
Type: null or string
Default:
null
Example:
"==== <mailbox-name> ==="
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.mailboxType
Whether this account uses maildir folders or IMAP mailboxes
Type: one of “maildir”, “imap”
Default:
"maildir"
Example:
"imap"
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.sendMailCommand
Command to send a mail. If not set, neomutt will be in charge of sending mails.
Type: null or string
Default:
if config.msmtp.enable then
"msmtpq --read-envelope-from --read-recipients"
else
null
Example:
"msmtpq --read-envelope-from --read-recipients"
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.neomutt.showDefaultMailbox
Show the default mailbox (INBOX)
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.notmuch.enable
Whether to enable notmuch indexing.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/notmuch.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.enable
Whether to enable Notmuch support in NeoMutt.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes
List of virtual mailboxes using Notmuch queries
Type: list of (submodule)
Default:
[
{
name = "My INBOX";
query = "tag:inbox";
}
]
Example:
[
{
name = "My INBOX";
query = "tag:inbox";
}
]
Declared by:
<home-manager/modules/programs/neomutt.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.limit
Restricts number of messages/threads in the result.
Type: null or signed integer
Default:
null
Example:
10
Declared by:
<home-manager/modules/programs/notmuch-virtual-mailbox.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.name
Name to display
Type: string
Default:
"My INBOX"
Example:
"My INBOX"
Declared by:
<home-manager/modules/programs/notmuch-virtual-mailbox.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.query
Notmuch query
Type: string
Default:
"tag:inbox"
Example:
"tag:inbox"
Declared by:
<home-manager/modules/programs/notmuch-virtual-mailbox.nix>
|
accounts.email.accounts.<name>.notmuch.neomutt.virtualMailboxes.*.type
Reads all matching messages or whole-threads. The default is ‘messages’ or nm_query_type.
Type: null or one of “threads”, “messages”
Default:
null
Example:
"threads"
Declared by:
<home-manager/modules/programs/notmuch-virtual-mailbox.nix>
|
accounts.email.accounts.<name>.offlineimap.enable
Whether to enable OfflineIMAP.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/offlineimap.nix>
|
accounts.email.accounts.<name>.offlineimap.extraConfig.account
Extra configuration options to add to the account section.
Type: attribute set of (string or signed integer or boolean)
Default:
{ }
Example:
{
autorefresh = 20;
}
Declared by:
<home-manager/modules/programs/offlineimap.nix>
|
accounts.email.accounts.<name>.offlineimap.extraConfig.local
Extra configuration options to add to the local account section.
Type: attribute set of (string or signed integer or boolean)
Default:
{ }
Example:
{
sync_deletes = true;
}
Declared by:
<home-manager/modules/programs/offlineimap.nix>
|
accounts.email.accounts.<name>.offlineimap.extraConfig.remote
Extra configuration options to add to the remote account section.
Type: attribute set of (string or signed integer or boolean)
Default:
{ }
Example:
{
expunge = false;
maxconnections = 2;
}
Declared by:
<home-manager/modules/programs/offlineimap.nix>
|
accounts.email.accounts.<name>.offlineimap.postSyncHookCommand
Command to run after fetching new mails.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/offlineimap.nix>
|
accounts.email.accounts.<name>.passwordCommand
A command, which when run writes the account password on standard output.
Type: null or string or list of string
Default:
null
Example:
"secret-tool lookup email me@example.org"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.primary
Whether this is the primary account. Only one account may be set as primary.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.realName
Name displayed when sending mails.
Type: string
Example:
"Jane Doe"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.signature
Signature configuration.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.signature.command
A command that generates a signature.
Type: null or path
Default:
null
Example:
pkgs.writeScript "signature" "echo This is my signature"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.signature.delimiter
The delimiter used between the document and the signature.
Type: string
Default:
''
--
''
Example:
~*~*~*~*~*~*~*~*~*~*~*~
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.signature.showSignature
Method to communicate the signature.
Type: one of “append”, “attach”, “none”
Default:
"none"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.signature.text
Signature content.
Type: string
Default:
""
Example:
''
--
Luke Skywalker
May the force be with you.
''
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp
The SMTP configuration to use for this account.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.host
Hostname of SMTP server.
Type: string
Example:
"smtp.example.org"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.port
The port on which the SMTP server listens. If
null
then the default port is used.
Type: null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default:
null
Example:
465
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.tls
Configuration for secure connections.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.tls.enable
Whether to enable TLS/SSL.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.tls.certificatesFile
Path to file containing certificate authorities that should
be used to validate the connection authenticity. If
null
then the system default is used.
Note, if set then the system default may still be accepted.
Type: null or path
Default:
"config.accounts.email.certificatesFile"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.smtp.tls.useStartTls
Whether to use STARTTLS.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.accounts.<name>.thunderbird.enable
Whether to enable the Thunderbird mail client for this account.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/thunderbird.nix>
|
accounts.email.accounts.<name>.thunderbird.perIdentitySettings
Extra settings to add to each identity of this Thunderbird
account configuration. The id
given as
argument is an automatically generated identifier.
Type: function that evaluates to a(n) attribute set of (boolean or signed integer or string)
Default:
_: { }
Example:
id: {
"mail.identity.id_${id}.protectSubject" = false;
"mail.identity.id_${id}.autoEncryptDrafts" = false;
};
Declared by:
<home-manager/modules/programs/thunderbird.nix>
|
accounts.email.accounts.<name>.thunderbird.profiles
List of Thunderbird profiles for which this account should be enabled. If this list is empty (the default), this account will be enabled for all declared profiles.
Type: list of string
Default:
[ ]
Example:
[ "profile1" "profile2" ]
Declared by:
<home-manager/modules/programs/thunderbird.nix>
|
accounts.email.accounts.<name>.thunderbird.settings
Extra settings to add to this Thunderbird account configuration.
The id
given as argument is an automatically
generated account identifier.
Type: function that evaluates to a(n) attribute set of (boolean or signed integer or string)
Default:
_: { }
Example:
id: {
"mail.server.server_${id}.check_new_mail" = false;
};
Declared by:
<home-manager/modules/programs/thunderbird.nix>
|
accounts.email.accounts.<name>.userName
The server username of this account. This will be used as the SMTP, IMAP, and JMAP user name.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.certificatesFile
Path to default file containing certificate authorities that should be used to validate the connection authenticity. This path may be overridden on a per-account basis.
Type: null or path
Default:
"/etc/ssl/certs/ca-certificates.crt"
Declared by:
<home-manager/modules/accounts/email.nix>
|
accounts.email.maildirBasePath
The base directory for account maildir directories. May be a relative path (e.g. the user setting this value as “MyMaildir”), in which case it is relative the home directory (e.g. resulting in “~/MyMaildir”).
Type: string
Default:
"Maildir"
Declared by:
<home-manager/modules/accounts/email.nix>
|
dconf.settings
Settings to write to the dconf configuration system.
Note that the database is strongly-typed so you need to use the same types
as described in the GSettings schema. For example, if an option is of type
uint32
(u
), you need to wrap the number
using the lib.hm.gvariant.mkUint32
constructor.
Otherwise, since Nix integers are implicitly coerced to int32
(i
), it would get stored in the database as such, and GSettings
might be confused when loading the setting.
You might want to use dconf2nix to convert dconf database dumps into compatible Nix expression.
Type: attribute set of attribute set of (GVariant value)
Default:
{ }
Example:
{
"org/gnome/calculator" = {
button-mode = "programming";
show-thousands = true;
base = 10;
word-size = 64;
window-position = lib.hm.gvariant.mkTuple [100 100];
};
}
Declared by:
<home-manager/modules/misc/dconf.nix>
|
editorconfig.enable
Whether to enable EditorConfig home configuration file.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/misc/editorconfig.nix>
|
editorconfig.settings
Configuration written to $HOME/.editorconfig
.
root = true
is automatically added to the file,
it must not be added here.
See https://editorconfig.org for documentation.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
"*" = {
charset = "utf-8";
end_of_line = "lf";
trim_trailing_whitespace = true;
insert_final_newline = true;
max_line_width = 78;
indent_style = "space";
indent_size = 4;
};
};
Declared by:
<home-manager/modules/misc/editorconfig.nix>
|
fonts.fontconfig.enable
Whether to enable fontconfig configuration. This will, for
example, allow fontconfig to discover fonts and
configurations installed through
home.packages
and
nix-env.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/misc/fontconfig.nix>
|
fonts.fontconfig.defaultFonts.emoji
Per-user default emoji font(s). Multiple fonts may be listed in case a font does not support all emoji.
Note that fontconfig matches color emoji fonts preferentially, so if you want to use a black and white font while having a color font installed (eg. Noto Color Emoji installed alongside Noto Emoji), fontconfig will still choose the color font even when it is later in the list.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/misc/fontconfig.nix>
|
fonts.fontconfig.defaultFonts.monospace
Per-user default monospace font(s). Multiple fonts may be listed in case multiple languages must be supported.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/misc/fontconfig.nix>
|
fonts.fontconfig.defaultFonts.sansSerif
Per-user default sans serif font(s). Multiple fonts may be listed in case multiple languages must be supported.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/misc/fontconfig.nix>
|
fonts.fontconfig.defaultFonts.serif
Per-user default serif font(s). Multiple fonts may be listed in case multiple languages must be supported.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/misc/fontconfig.nix>
|
gtk.enable
Whether to enable GTK 2/3 configuration.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.cursorTheme
The cursor theme to use.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.cursorTheme.package
Package providing the cursor theme. This package will be installed
to your profile. If null
then the theme
is assumed to already be available in your profile.
Type: null or package
Default:
null
Example:
pkgs.vanilla-dmz
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.cursorTheme.name
The name of the cursor theme within the package.
Type: string
Example:
"Vanilla-DMZ"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.cursorTheme.size
The size of the cursor.
Type: null or signed integer
Default:
null
Example:
16
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.font
The font to use in GTK+ 2/3 applications.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.font.package
Package providing the font. This package will be installed
to your profile. If null
then the font
is assumed to already be available in your profile.
Type: null or package
Default:
null
Example:
pkgs.dejavu_fonts
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.font.name
The family name of the font within the package.
Type: string
Example:
"DejaVu Sans"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.font.size
The size of the font.
Type: null or signed integer or floating point number
Default:
null
Example:
"8"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk2.configLocation
The location to put the GTK configuration file.
Type: path
Default:
"${config.home.homeDirectory}/.gtkrc-2.0"
Example:
"${config.xdg.configHome}/gtk-2.0/gtkrc"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk2.extraConfig
Extra configuration lines to add verbatim to
~/.gtkrc-2.0
.
Type: strings concatenated with “\n”
Default:
""
Example:
"gtk-can-change-accels = 1"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk3.bookmarks
Bookmarks in the sidebar of the GTK file browser
Type: list of string
Default:
[ ]
Example:
[
"file:///home/jane/Documents"
]
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk3.extraConfig
Extra configuration options to add to
$XDG_CONFIG_HOME/gtk-3.0/settings.ini
.
Type: attribute set of (boolean or signed integer or string)
Default:
{ }
Example:
{
gtk-cursor-blink = false;
gtk-recent-files-limit = 20;
}
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk3.extraCss
Extra configuration lines to add verbatim to
$XDG_CONFIG_HOME/gtk-3.0/gtk.css
.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk4.extraConfig
Extra configuration options to add to
$XDG_CONFIG_HOME/gtk-4.0/settings.ini
.
Type: attribute set of (boolean or signed integer or string)
Default:
{ }
Example:
{
gtk-cursor-blink = false;
gtk-recent-files-limit = 20;
}
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.gtk4.extraCss
Extra configuration lines to add verbatim to
$XDG_CONFIG_HOME/gtk-4.0/gtk.css
.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.iconTheme
The icon theme to use.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.iconTheme.package
Package providing the icon theme. This package will be installed
to your profile. If null
then the theme
is assumed to already be available in your profile.
Type: null or package
Default:
null
Example:
pkgs.gnome.adwaita-icon-theme
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.iconTheme.name
The name of the icon theme within the package.
Type: string
Example:
"Adwaita"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.theme
The GTK+2/3 theme to use.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.theme.package
Package providing the theme. This package will be installed
to your profile. If null
then the theme
is assumed to already be available in your profile.
For the theme to apply to GTK 4, this option is mandatory.
Type: null or package
Default:
null
Example:
pkgs.gnome.gnome-themes-extra
Declared by:
<home-manager/modules/misc/gtk.nix>
|
gtk.theme.name
The name of the theme within the package.
Type: string
Example:
"Adwaita"
Declared by:
<home-manager/modules/misc/gtk.nix>
|
home.enableDebugInfo
Some Nix packages provide debug symbols for
gdb in the debug
output.
This option ensures that those are automatically fetched from
the binary cache if available and gdb is
configured to find those symbols.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/misc/debug.nix>
|
home.enableNixpkgsReleaseCheck
Determines whether to check for release version mismatch between Home Manager and Nixpkgs. Using mismatched versions is likely to cause errors and unexpected behavior. It is therefore highly recommended to use a release of Home Manager that corresponds with your chosen release of Nixpkgs.
When this option is enabled and a mismatch is detected then a warning will be printed when the user configuration is being built.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/home-environment.nix>
|
home.packages
The set of packages to appear in the user environment.
Type: list of package
Default:
[ ]
Declared by:
<home-manager/modules/home-environment.nix>
|
home.activation
The activation scripts blocks to run when activating a Home Manager generation. Any entry here should be idempotent, meaning running twice or more times produces the same result as running it once.
If the script block produces any observable side effect, such
as writing or deleting files, then it
must be placed after the special
writeBoundary
script block. Prior to the
write boundary one can place script blocks that verifies, but
does not modify, the state of the system and exits if an
unexpected state is found. For example, the
checkLinkTargets
script block checks for
collisions between non-managed files and files defined in
home.file
.
A script block should respect the DRY_RUN
variable. If it is set
then the actions taken by the script should be logged to standard out
and not actually performed. A convenient shell function run
is provided for activation script blocks. It is used as follows:
Runs the given command on live run, otherwise prints the command to standard output.
Runs the given command on live run and sends its standard output to
/dev/null
, otherwise prints the command to standard output.
Runs the given command on live run and sends its standard and error
output to /dev/null
, otherwise prints the command to standard
output.
The --quiet
and --silence
flags are mutually exclusive.
A script block should also respect the VERBOSE
variable, and if
set print information on standard out that may be useful for debugging
any issue that may arise. The variable VERBOSE_ARG
is set to
--verbose
if verbose output is enabled. You can also use the
provided shell function verboseEcho, which acts as
echo when verbose output is enabled.
Type: DAG of string
Default:
{ }
Example:
{
myActivationAction = lib.hm.dag.entryAfter ["writeBoundary"] ''
run ln -s $VERBOSE_ARG \
${builtins.toPath ./link-me-directly} $HOME
'';
}
Declared by:
<home-manager/modules/home-environment.nix>
|
home.extraOutputsToInstall
List of additional package outputs of the packages
home.packages
that should be installed into
the user environment.
Type: list of string
Default:
[ ]
Example:
[
"doc"
"info"
"devdoc"
]
Declared by:
<home-manager/modules/home-environment.nix>
|
home.file
Attribute set of files to link into the user home.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.enable
Whether this file should be generated. This option allows specific files to be disabled.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.executable
Set the execute bit. If null
, defaults to the mode
of the source
file or to false
for files created through the text
option.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.onChange
Shell commands to run when file has changed between generations. The script will be run after the new files have been linked into place.
Note, this code is always run when recursive
is
enabled.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.recursive
If the file source is a directory, then this option determines whether the directory should be recursively linked to the target location. This option has no effect if the source is a file.
If false
(the default) then the target
will be a symbolic link to the source directory. If
true
then the target will be a
directory structure matching the source’s but whose leafs
are symbolic links to the files of the source directory.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.source
Path of the source file or directory. If
home.file.<name>.text
is non-null then this option will automatically point to a file
containing that text.
Type: path
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.target
Path to target file relative to HOME
.
Type: string
Default:
name
Declared by:
<home-manager/modules/files.nix>
|
home.file.<name>.text
Text of the file. If this option is null then
home.file.<name>.source
must be set.
Type: null or strings concatenated with “\n”
Default:
null
Declared by:
<home-manager/modules/files.nix>
|
home.homeDirectory
The user’s home directory. Must be an absolute path.
Type: path
Default:
"$HOME" for state version < 20.09,
undefined for state version ≥ 20.09
Example:
"/home/jane.doe"
Declared by:
<home-manager/modules/home-environment.nix>
|
home.keyboard
Keyboard configuration. Set to null
to
disable Home Manager keyboard management.
Type: null or (submodule)
Default:
"{ }" for state version < 21.11,
"null" for state version ≥ 21.11
Declared by:
<home-manager/modules/home-environment.nix>
|
home.keyboard.layout
Keyboard layout. If null
, then the system
configuration will be used.
This defaults to null
for state
version ≥ 19.09 and "us"
otherwise.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.keyboard.model
Keyboard model.
Type: null or string
Default:
null
Example:
"presario"
Declared by:
<home-manager/modules/home-environment.nix>
|
home.keyboard.options
X keyboard options; layout switching goes here.
Type: list of string
Default:
[ ]
Example:
[
"grp:caps_toggle"
"grp_led:scroll"
]
Declared by:
<home-manager/modules/home-environment.nix>
|
home.keyboard.variant
X keyboard variant. If null
, then the
system configuration will be used.
This defaults to null
for state
version ≥ 19.09 and ""
otherwise.
Type: null or string
Default:
null
Example:
"colemak"
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language
Language configuration.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.address
The language to use for addresses.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.base
The language to use unless overridden by a more specific option.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.collate
The language to use for collation (alphabetical ordering).
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.ctype
Character classification category.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.measurement
The language to use for measurement values.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.messages
The language to use for messages, application UI languages, etc.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.monetary
The language to use for formatting currencies and money amounts.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.name
The language to use for personal names.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.numeric
The language to use for numerical values.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.paper
The language to use for paper sizes.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.telephone
The language to use for telephone numbers.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.language.time
The language to use for formatting times.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/home-environment.nix>
|
home.pointerCursor
Cursor configuration. Set to null
to disable.
Top-level options declared under this submodule are backend independent
options. Options declared under namespaces such as x11
are backend specific options. By default, only backend independent cursor
configurations are generated. If you need configurations for specific
backends, you can toggle them via the enable option. For example,
home.pointerCursor.x11.enable
will enable x11 cursor configurations.
Note that this will merely generate the cursor configurations.
To apply the configurations, the relevant subsytems must also be configured.
For example, home.pointerCursor.gtk.enable
will generate
the gtk cursor configuration, but gtk.enable
needs
to be set for it to be applied.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.package
Package providing the cursor theme.
Type: package
Example:
pkgs.vanilla-dmz
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.gtk.enable
Whether to enable gtk config generation for home.pointerCursor
.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.name
The cursor name within the package.
Type: string
Example:
"Vanilla-DMZ"
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.size
The cursor size.
Type: signed integer
Default:
32
Example:
64
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.x11.enable
Whether to enable x11 config generation for home.pointerCursor
.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.pointerCursor.x11.defaultCursor
The default cursor file to use within the package.
Type: string
Default:
"left_ptr"
Example:
"X_cursor"
Declared by:
<home-manager/modules/config/home-cursor.nix>
|
home.preferXdgDirectories
Whether to make programs use XDG directories whenever supported.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/home-environment.nix>
|
home.profileDirectory
The profile directory where Home Manager generations are installed.
Type: path (read only)
Default:
"${home.homeDirectory}/.nix-profile" or
"/etc/profiles/per-user/${home.username}"
Declared by:
<home-manager/modules/home-environment.nix>
|
home.sessionPath
Extra directories to add to PATH
.
These directories are added to the PATH
variable in a
double-quoted context, so expressions like $HOME
are
expanded by the shell. However, since expressions like ~
or
*
are escaped, they will end up in the PATH
verbatim.
Type: list of string
Default:
[ ]
Example:
[
"$HOME/.local/bin"
"\${xdg.configHome}/emacs/bin"
".git/safe/../../bin"
]
Declared by:
<home-manager/modules/home-environment.nix>
|
home.sessionVariables
Environment variables to always set at login.
The values may refer to other environment variables using
POSIX.2 style variable references. For example, a variable
parameter
may be referenced as
$parameter
or ${parameter}
. A
default value foo
may be given as per
${parameter:-foo}
and, similarly, an alternate
value bar
can be given as per
${parameter:+bar}
.
Note, these variables may be set in any order so no session variable may have a runtime dependency on another session variable. In particular code like
home.sessionVariables = {
FOO = "Hello";
BAR = "$FOO World!";
};
may not work as expected. If you need to reference another session variable, then do so inside Nix instead. The above example then becomes
home.sessionVariables = {
FOO = "Hello";
BAR = "${config.home.sessionVariables.FOO} World!";
};
Type: lazy attribute set of (string or path or signed integer or floating point number)
Default:
{ }
Example:
{
EDITOR = "emacs";
GS_OPTIONS = "-sPAPERSIZE=a4";
}
Declared by:
<home-manager/modules/home-environment.nix>
|
home.shellAliases
An attribute set that maps aliases (the top level attribute names in this option) to command strings or directly to build outputs.
This option should only be used to manage simple aliases that are
compatible across all shells. If you need to use a shell specific
feature then make sure to use a shell specific option, for example
programs.bash.shellAliases
for Bash.
Type: attribute set of string
Default:
{ }
Example:
{
g = "git";
"..." = "cd ../..";
}
Declared by:
<home-manager/modules/home-environment.nix>
|
home.stateVersion
It is occasionally necessary for Home Manager to change configuration defaults in a way that is incompatible with stateful data. This could, for example, include switching the default data format or location of a file.
The state version indicates which default settings are in effect and will therefore help avoid breaking program configurations. Switching to a higher state version typically requires performing some manual steps, such as data conversion or moving files.
Type: one of “18.09”, “19.03”, “19.09”, “20.03”, “20.09”, “21.03”, “21.05”, “21.11”, “22.05”, “22.11”, “23.05”, “23.11”, “24.05”, “24.11”
Declared by:
<home-manager/modules/misc/version.nix>
|
home.username
The user’s username.
Type: string
Default:
"$USER" for state version < 20.09,
undefined for state version ≥ 20.09
Example:
"jane.doe"
Declared by:
<home-manager/modules/home-environment.nix>
|
i18n.glibcLocales
Customized glibcLocales
package providing
the LOCALE_ARCHIVE_*
environment variable.
This option only applies to the Linux platform.
When Home Manager is configured with NixOS, the default value
will be set to i18n.glibcLocales
from the
system configuration.
Type: path
Default:
pkgs.glibcLocales
Example:
pkgs.glibcLocales.override {
allLocales = false;
locales = [ "en_US.UTF-8/UTF-8" ];
}
Declared by:
<home-manager/modules/config/i18n.nix>
|
i18n.inputMethod.enabled
Select the enabled input method. Input methods are software to input symbols that are not available on standard input devices.
Input methods are especially used to input Chinese, Japanese and Korean characters.
Currently the following input methods are available in Home Manager:
fcitx5
A customizable lightweight input method.
The next generation of fcitx.
Addons (including engines, dictionaries, skins) can be added using
i18n.inputMethod.fcitx5.addons
.
nabi
A Korean input method based on XIM. Nabi doesn’t support Qt 5.
uim
The “universal input method” is a library with an XIM bridge. uim mainly supports Chinese, Japanese and Korean.
hime
An extremely easy-to-use input method framework.
kime
A Korean IME.
Type: null or one of “fcitx”, “fcitx5”, “nabi”, “uim”, “hime”, “kime”
Default:
null
Example:
"fcitx5"
Declared by:
<home-manager/modules/i18n/input-method/default.nix>
|
i18n.inputMethod.fcitx5.addons
Enabled Fcitx5 addons.
Type: list of package
Default:
[ ]
Example:
with pkgs; [ fcitx5-rime ]
Declared by:
<home-manager/modules/i18n/input-method/fcitx5.nix>
|
i18n.inputMethod.kime.extraConfig
kime configuration. Refer to https://github.com/Riey/kime/blob/develop/docs/CONFIGURATION.md for details on supported values.
Type: strings concatenated with “\n”
Default:
""
Example:
daemon:
modules: [Xim,Indicator]
indicator:
icon_color: White
engine:
hangul:
layout: dubeolsik
Declared by:
<home-manager/modules/i18n/input-method/kime.nix>
|
i18n.inputMethod.uim.toolbar
Selected UIM toolbar.
Type: one of “gtk”, “gtk3”, “gtk-systray”, “gtk3-systray”, “qt4”
Default:
"gtk"
Example:
"gtk-systray"
Declared by:
<home-manager/modules/i18n/input-method/uim.nix>
|
launchd.enable
Whether to enable Home Manager to define per-user daemons by making use of launchd’s LaunchAgents.
Type: boolean
Default:
pkgs.stdenv.hostPlatform.isDarwin
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents
Define LaunchAgents.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.enable
Whether to enable ‹name›.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config
Define a launchd job. See launchd.plist(5) for details.
Type: attribute set of anything
Default:
{ }
Example:
{
ProgramArguments = [ "/usr/bin/say" "Good afternoon" ];
StartCalendarInterval = [
{
Hour = 12;
Minute = 0;
}
];
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.AbandonProcessGroup
When a job dies, launchd kills any remaining processes with the same process group ID as the job. Setting this key to true disables that behavior.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Debug
This optional key specifies that launchd should adjust its log mask temporarily to LOG_DEBUG while dealing with this job.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Disabled
This optional key is used as a hint to launchctl(1)
that it should not submit this job to launchd when
loading a job or jobs. The value of this key does NOT reflect the current state of the job on the running
system. If you wish to know whether a job is loaded in launchd, reading this key from a configuration
file yourself is not a sufficient test. You should query launchd for the presence of the job using
the launchctl(1)
list subcommand or use the ServiceManagement framework’s
SMJobCopyDictionary()
method.
Note that as of Mac OS X v10.6, this key’s value in a configuration file conveys a default value, which
is changed with the [-w] option of the launchctl(1)
load and unload subcommands. These subcommands no
longer modify the configuration file, so the value displayed in the configuration file is not necessarily
the value that launchctl(1)
will apply. See launchctl(1)
for more information.
Please also be mindful that you should only use this key if the provided on-demand and KeepAlive criteria are insufficient to describe the conditions under which your job needs to run. The cost to have a job loaded in launchd is negligible, so there is no harm in loading a job which only runs once or very rarely.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.EnableGlobbing
This flag causes launchd to use the glob(3)
mechanism to update the program arguments before invocation.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.EnableTransactions
This flag instructs launchd that the job promises to use vproc_transaction_begin(3)
and
vproc_transaction_end(3)
to track outstanding transactions that need to be reconciled before the
process can safely terminate. If no outstanding transactions are in progress, then launchd is free to
send the SIGKILL signal.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.EnvironmentVariables
This optional key is used to specify additional environment variables to be set before running the job.
Type: null or (attribute set of string)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.ExitTimeOut
The amount of time launchd waits before sending a SIGKILL signal. The default value is 20 seconds. The value zero is interpreted as infinity.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.GroupName
This optional key specifies the group to run the job as. This key is only applicable when launchd is running as root. If UserName is set and GroupName is not, the the group will be set to the default group of the user.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits
Resource limits to be imposed on the job. These adjust variables set with setrlimit(2)
. The following
keys apply:
Type: null or (submodule)
Default:
null
Example:
{
NumberOfFiles = 4096;
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.CPU
The maximum amount of cpu time (in seconds) to be used by each process.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.Core
The largest size (in bytes) core file that may be created.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.Data
The maximum size (in bytes) of the data segment for a process; this defines how far a program may
extend its break with the sbrk(2)
system call.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.FileSize
The largest size (in bytes) file that may be created.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.MemoryLock
The maximum size (in bytes) which a process may lock into memory using the mlock(2)
function.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.NumberOfFiles
The maximum number of open files for this process. Setting this value in a system wide daemon
will set the sysctl(3)
kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits)
value in addition to the setrlimit(2)
values.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.NumberOfProcesses
The maximum number of simultaneous processes for this user id. Setting this value in a system
wide daemon will set the sysctl(3)
kern.maxproc (SoftResourceLimits) or kern.maxprocperuid
(HardResourceLimits) value in addition to the setrlimit(2)
values.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.ResidentSetSize
The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a limit on the amount of physical memory to be given to a process; if memory is tight, the system will prefer to take memory from processes that are exceeding their declared resident set size.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.HardResourceLimits.Stack
The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s stack segment may be extended. Stack extension is performed automatically by the system.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.InitGroups
This optional key specifies whether initgroups(3)
should be called before running the job. The default
is true in 10.5 and false in 10.4. This key will be ignored if the UserName key is not set.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.KeepAlive
This optional key is used to control whether your job is to be kept continuously running or to let demand and conditions control the invocation. The default is false and therefore only demand will start the job. The value may be set to true to unconditionally keep the job alive. Alternatively, a dictionary of conditions may be specified to selectively control whether launchd keeps a job alive or not. If multiple keys are provided, launchd ORs them, thus providing maximum flexibility to the job to refine the logic and stall if necessary. If launchd finds no reason to restart the job, it falls back on demand based invocation. Jobs that exit quickly and frequently when configured to be kept alive will be throttled to converve system resources.
Type: null or boolean or (submodule)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Label
This required key uniquely identifies the job to launchd.
Type: string
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LaunchEvents
Specifies higher-level event types to be used as launch-on-demand event sources. Each sub-dictionary defines events for a particular event subsystem, such as “com.apple.iokit.matching”, which can be used to launch jobs based on the appearance of nodes in the IORegistry. Each dictionary within the sub-dictionary specifies an event descriptor that is specified to each event subsystem. With this key, the job promises to use the xpc_set_event_stream_handler(3) API to consume events. See xpc_events(3) for more details on event sources.
Type: null or (attribute set)
Default:
null
Example:
{
"com.apple.iokit.matching" = {
"com.apple.usb.device" = {
IOMatchLaunchStream = true;
IOProviderClass = "IOUSBDevice";
idProduct = "*";
idVendor = "*";
};
};
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LaunchOnlyOnce
This optional key specifies whether the job can only be run once and only once. In other words, if the job cannot be safely respawned without a full machine reboot, then set this key to be true.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LimitLoadFromHosts
This configuration file only applies to hosts NOT listed with this key. Note: One should set kern.hostname
in sysctl.conf(5)
for this feature to work reliably.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LimitLoadToHosts
This configuration file only applies to the hosts listed with this key. Note: One should set kern.hostname
in sysctl.conf(5)
for this feature to work reliably.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LimitLoadToSessionType
This configuration file only applies to sessions of the type specified. This key is used in concert with the -S flag to launchctl.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.LowPriorityIO
This optional key specifies whether the kernel should consider this daemon to be low priority when doing file system I/O.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.MachServices
This optional key is used to specify Mach services to be registered with the Mach bootstrap sub-system. Each key in this dictionary should be the name of service to be advertised. The value of the key must be a boolean and set to true. Alternatively, a dictionary can be used instead of a simple true value.
Finally, for the job itself, the values will be replaced with Mach ports at the time of check-in with launchd.
Type: null or (submodule)
Default:
null
Example:
{
ResetAtClose = true;
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.MachServices.HideUntilCheckIn
Reserve the name in the namespace, but cause bootstrap_look_up() to fail until the job has checked in with launchd.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.MachServices.ResetAtClose
If this boolean is false, the port is recycled, thus leaving clients to remain oblivious to the demand nature of job. If the value is set to true, clients receive port death notifications when the job lets go of the receive right. The port will be recreated atomically with respect to bootstrap_look_up() calls, so that clients can trust that after receiving a port death notification, the new port will have already been recreated. Setting the value to true should be done with care. Not all clients may be able to handle this behavior. The default value is false.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Nice
This optional key specifies what nice(3) value should be applied to the daemon.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.OnDemand
This key was used in Mac OS X 10.4 to control whether a job was kept alive or not. The default was true. This key has been deprecated and replaced in Mac OS X 10.5 and later with the more powerful KeepAlive option.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.ProcessType
This optional key describes, at a high level, the intended purpose of the job. The system will apply resource limits based on what kind of job it is. If left unspecified, the system will apply light resource limits to the job, throttling its CPU usage and I/O bandwidth. The following are valid values:
Background jobs are generally processes that do work that was not directly requested by the user. The resource limits applied to Background jobs are intended to prevent them from disrupting the user experience.
Standard jobs are equivalent to no ProcessType being set.
Adaptive jobs move between the Background and Interactive classifications based on activity over XPC connections. See xpc_transaction_begin(3) for details.
Interactive jobs run with the same resource limitations as apps, that is to say, none. Interactive jobs are critical to maintaining a responsive user experience, and this key should only be used if an app’s ability to be responsive depends on it, and cannot be made Adaptive.
Type: null or one of “Background”, “Standard”, “Adaptive”, “Interactive”
Default:
null
Example:
"Background"
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Program
This key maps to the first argument of execvp(3)
. If this key is missing, then the first element of
the array of strings provided to the ProgramArguments will be used instead. This key is required in
the absence of the ProgramArguments key.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.ProgramArguments
This key maps to the second argument of execvp(3)
. This key is required in the absence of the Program
key. Please note: many people are confused by this key. Please read execvp(3)
very carefully!
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.QueueDirectories
Much like the WatchPaths option, this key will watch the paths for modifications. The difference being that the job will only be started if the path is a directory and the directory is not empty.
Type: null or (list of string)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.RootDirectory
This optional key is used to specify a directory to chroot(2)
to before running the job.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.RunAtLoad
This optional key is used to control whether your job is launched once at the time the job is loaded. The default is false.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets
This optional key is used to specify launch on demand sockets that can be used to let launchd know when to run the job. The job must check-in to get a copy of the file descriptors using APIs outlined in launch(3). The keys of the top level Sockets dictionary can be anything. They are meant for the application developer to use to differentiate which descriptors correspond to which application level protocols (e.g. http vs. ftp vs. DNS…). At check-in time, the value of each Sockets dictionary key will be an array of descriptors. Daemon/Agent writers should consider all descriptors of a given key to be to be effectively equivalent, even though each file descriptor likely represents a different networking protocol which conforms to the criteria specified in the job configuration file.
The parameters below are used as inputs to call getaddrinfo(3)
.
Type: null or (attribute set of (submodule))
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.Bonjour
This optional key can be used to request that the service be registered with the
mDNSResponder(8)
. If the value is boolean, the service name is inferred from the SockServiceName.
Type: null or boolean or list of string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.MulticastGroup
This optional key can be used to request that the datagram socket join a multicast group. If the
value is a hostname, then getaddrinfo(3)
will be used to join the correct multicast address for a
given socket family. If an explicit IPv4 or IPv6 address is given, it is required that the SockFamily
family also be set, otherwise the results are undefined.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SecureSocketWithKey
This optional key is a variant of SockPathName. Instead of binding to a known path, a securely generated socket is created and the path is assigned to the environment variable that is inherited by all jobs spawned by launchd.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockFamily
This optional key can be used to specifically request that “IPv4” or “IPv6” socket(s) be created.
Type: null or one of “IPv4”, “IPv6”
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockNodeName
This optional key specifies the node to connect(2)
or bind(2)
to.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockPassive
This optional key specifies whether listen(2)
or connect(2)
should be called on the created file
descriptor. The default is true (“to listen”).
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockPathMode
This optional key specifies the mode of the socket. Known bug: Property lists don’t support octal, so please convert the value to decimal.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockPathName
This optional key implies SockFamily is set to “Unix”. It specifies the path to connect(2)
or
bind(2)
to.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockProtocol
This optional key specifies the protocol to be passed to socket(2)
. The only value understood by
this key at the moment is “TCP”.
Type: null or value “TCP” (singular enum)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockServiceName
This optional key specifies the service on the node to connect(2)
or bind(2)
to.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Sockets.<name>.SockType
This optional key tells launchctl what type of socket to create. The default is “stream” and other valid values for this key are “dgram” and “seqpacket” respectively.
Type: null or one of “stream”, “dgram”, “seqpacket”
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits
Resource limits to be imposed on the job. These adjust variables set with setrlimit(2)
. The following
keys apply:
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.CPU
The maximum amount of cpu time (in seconds) to be used by each process.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.Core
The largest size (in bytes) core file that may be created.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.Data
The maximum size (in bytes) of the data segment for a process; this defines how far a program may
extend its break with the sbrk(2)
system call.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.FileSize
The largest size (in bytes) file that may be created.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.MemoryLock
The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.NumberOfFiles
The maximum number of open files for this process. Setting this value in a system wide daemon
will set the sysctl(3)
kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits)
value in addition to the setrlimit(2)
values.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.NumberOfProcesses
The maximum number of simultaneous processes for this user id. Setting this value in a system
wide daemon will set the sysctl(3)
kern.maxproc (SoftResourceLimits) or kern.maxprocperuid
(HardResourceLimits) value in addition to the setrlimit(2)
values.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.ResidentSetSize
The maximum size (in bytes) to which a process’s resident set size may grow. This imposes a limit on the amount of physical memory to be given to a process; if memory is tight, the system will prefer to take memory from processes that are exceeding their declared resident set size.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.SoftResourceLimits.Stack
The maximum size (in bytes) of the stack segment for a process; this defines how far a program’s stack segment may be extended. Stack extension is performed automatically by the system.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StandardErrorPath
This optional key specifies what file should be used for data being sent to stderr when using stdio(3)
.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StandardInPath
This optional key specifies what file should be used for data being supplied to stdin when using
stdio(3)
.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StandardOutPath
This optional key specifies what file should be used for data being sent to stdout when using stdio(3)
.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval
This optional key causes the job to be started every calendar interval as specified. Missing arguments
are considered to be wildcard. The semantics are much like crontab(5)
. Unlike cron which skips job
invocations when the computer is asleep, launchd will start the job the next time the computer wakes
up. If multiple intervals transpire before the computer is woken, those events will be coalesced into
one event upon wake from sleep.
Type: null or (list of (submodule))
Default:
null
Example:
{
Hour = 2;
Minute = 30;
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval.*.Day
The day on which this job will be run.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval.*.Hour
The hour on which this job will be run.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval.*.Minute
The minute on which this job will be run.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval.*.Month
The month on which this job will be run.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartCalendarInterval.*.Weekday
The weekday on which this job will be run (0 and 7 are Sunday).
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartInterval
This optional key causes the job to be started every N seconds. If the system is asleep, the job will be started the next time the computer wakes up. If multiple intervals transpire before the computer is woken, those events will be coalesced into one event upon wake from sleep.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.StartOnMount
This optional key causes the job to be started every time a filesystem is mounted.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.ThrottleInterval
This key lets one override the default throttling policy imposed on jobs by launchd. The value is in seconds, and by default, jobs will not be spawned more than once every 10 seconds. The principle behind this is that jobs should linger around just in case they are needed again in the near future. This not only reduces the latency of responses, but it encourages developers to amortize the cost of program invocation.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.TimeOut
The recommended idle time out (in seconds) to pass to the job. If no value is specified, a default time out will be supplied by launchd for use by the job at check in time.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.Umask
This optional key specifies what value should be passed to umask(2)
before running the job. Known bug:
Property lists don’t support octal, so please convert the value to decimal.
Type: null or signed integer
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.UserName
This optional key specifies the user to run the job as. This key is only applicable when launchd is running as root.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.WaitForDebugger
This optional key specifies that launchd should instruct the kernel to have the job wait for a debugger to attach before any code in the job is executed.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.WatchPaths
This optional key causes the job to be started if any one of the listed paths are modified.
Type: null or (list of path)
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.WorkingDirectory
This optional key is used to specify a directory to chdir(2)
to before running the job.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.inetdCompatibility
The presence of this key specifies that the daemon expects to be run as if it were launched from inetd.
Type: null or (submodule)
Default:
null
Example:
{
Wait = true;
}
Declared by:
<home-manager/modules/launchd/default.nix>
|
launchd.agents.<name>.config.inetdCompatibility.Wait
This flag corresponds to the “wait” or “nowait” option of inetd. If true, then the listening
socket is passed via the standard in/out/error file descriptors. If false, then accept(2)
is
called on behalf of the job, and the result is passed via the standard in/out/error descriptors.
Type: null or boolean or string
Default:
null
Declared by:
<home-manager/modules/launchd/default.nix>
|
lib
This option allows modules to define helper functions, constants, etc.
Type: attribute set of (attribute set)
Default:
{ }
Declared by:
<home-manager/modules/misc/lib.nix>
|
manual.html.enable
Whether to install the HTML manual. This also installs the home-manager-help tool, which opens a local copy of the Home Manager manual in the system web browser.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/manual.nix>
|
manual.json.enable
Whether to install a JSON formatted list of all Home Manager
options. This can be located at
<profile directory>/share/doc/home-manager/options.json
,
and may be used for navigating definitions, auto-completing,
and other miscellaneous tasks.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/manual.nix>
|
manual.manpages.enable
Whether to install the configuration manual page. The manual can be reached by man home-configuration.nix.
When looking at the manual page pretend that all references to NixOS stuff are actually references to Home Manager stuff. Thanks!
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/manual.nix>
|
news.display
How unread and relevant news should be presented when running home-manager build and home-manager switch.
The options are
silent
Do not print anything during build or switch. The home-manager news command still works for viewing the entries.
notify
The number of unread and relevant news entries will be printed to standard output. The home-manager news command can later be used to view the entries.
show
A pager showing unread news entries is opened.
Type: one of “silent”, “notify”, “show”
Default:
"notify"
Declared by:
<home-manager/modules/misc/news.nix>
|
nix.package
The Nix package that the configuration should be generated for.
Type: null or package
Default:
null
Example:
pkgs.nix
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.channels
A declarative alternative to Nix channels. Whereas with stock channels, you would register URLs and fetch them into the Nix store with nix-channel(1), this option allows you to register the store path directly. One particularly useful example is registering flake inputs as channels.
This option can coexist with stock Nix channels. If the same channel is defined in both, this option takes precedence.
Type: attribute set of package
Default:
{ }
Example:
{ inherit nixpkgs; }
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.checkConfig
If enabled (the default), checks for data type mismatches and that Nix can parse the generated nix.conf.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.extraOptions
Additional text appended to nix.conf
.
Type: strings concatenated with “\n”
Default:
""
Example:
''
keep-outputs = true
keep-derivations = true
''
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.gc.automatic
Automatically run the garbage collector at a specific time.
Note: This will only garbage collect the current user’s profiles.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/services/nix-gc.nix>
|
nix.gc.frequency
When to run the Nix garbage collector.
On Linux this is a string as defined by systemd.time(7).
On Darwin it must be one of: hourly daily weekly monthly semiannually annually, which are implemented as defined in the manual page above.
Type: string
Default:
"weekly"
Example:
"03:15"
Declared by:
<home-manager/modules/services/nix-gc.nix>
|
nix.gc.options
Options given to nix-collect-garbage
when the
garbage collector is run automatically.
Type: null or string
Default:
null
Example:
"--max-freed $((64 * 1024**3))"
Declared by:
<home-manager/modules/services/nix-gc.nix>
|
nix.gc.persistent
If true, the time when the service unit was last triggered is stored on disk. When the timer is activated, the service unit is triggered immediately if it would have been triggered at least once during the time when the timer was inactive.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/services/nix-gc.nix>
|
nix.keepOldNixPath
Whether nix.nixPath
should keep the previously set values in
NIX_PATH
.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.nixPath
Adds new directories to the Nix expression search path.
Used by Nix when looking up paths in angular brackets
(e.g. <nixpkgs>
).
Type: list of string
Default:
[ ]
Example:
[
"$HOME/.nix-defexpr/channels"
"darwin-config=$HOME/.config/nixpkgs/darwin-configuration.nix"
]
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.registry
User level flake registry.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.registry.<name>.exact
Whether the from
reference needs to match exactly. If set,
a from
reference like nixpkgs
does not
match with a reference like nixpkgs/nixos-20.03
.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.registry.<name>.flake
The flake input to which from>
is to be rewritten.
Type: null or (attribute set)
Default:
null
Example:
nixpkgs
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.registry.<name>.from
The flake reference to be rewritten.
Type: attribute set of (string or signed integer or boolean or package)
Example:
{
id = "nixpkgs";
type = "indirect";
}
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.registry.<name>.to
The flake reference to which from>
is to be rewritten.
Type: attribute set of (string or signed integer or boolean or package)
Example:
{
owner = "my-org";
repo = "my-nixpkgs";
type = "github";
}
Declared by:
<home-manager/modules/misc/nix.nix>
|
nix.settings
Configuration for Nix; see nix.conf(5) for available options. The value declared here will be translated directly to the key-value pairs Nix expects.
Configuration specified in nix.extraOptions
will be appended
verbatim to the resulting config file.
Type: attribute set of (Nix config atom (null, bool, int, float, str, path or package) or list of (Nix config atom (null, bool, int, float, str, path or package)))
Default:
{ }
Example:
{
use-sandbox = true;
show-trace = true;
system-features = [ "big-parallel" "kvm" "recursive-nix" ];
}
Declared by:
<home-manager/modules/misc/nix.nix>
|
nixpkgs.config
The configuration of the Nix Packages collection. (For details, see the Nixpkgs documentation.) It allows you to set package configuration options.
If null
, then configuration is taken from
the fallback location, for example,
~/.config/nixpkgs/config.nix
.
Note, this option will not apply outside your Home Manager configuration like when installing manually through nix-env. If you want to apply it both inside and outside Home Manager you can put it in a separate file and include something like
nixpkgs.config = import ./nixpkgs-config.nix;
xdg.configFile."nixpkgs/config.nix".source = ./nixpkgs-config.nix;
in your Home Manager configuration.
Type: null or (nixpkgs config)
Default:
null
Example:
{
allowBroken = true;
}
Declared by:
<home-manager/modules/misc/nixpkgs.nix>
|
nixpkgs.overlays
List of overlays to use with the Nix Packages collection. (For details, see the Nixpkgs documentation.) It allows you to override packages globally. This is a function that takes as an argument the original Nixpkgs. The first argument should be used for finding dependencies, and the second should be used for overriding recipes.
If null
, then the overlays are taken from
the fallback location, for example,
~/.config/nixpkgs/overlays
.
Like nixpkgs.config
this option only
applies within the Home Manager configuration. See
nixpkgs.config
for a suggested setup that
works both internally and externally.
Type: null or (list of (nixpkgs overlay))
Default:
null
Example:
[
(final: prev: {
openssh = prev.openssh.override {
hpnSupport = true;
withKerberos = true;
kerberos = final.libkrb5;
};
})
]
Declared by:
<home-manager/modules/misc/nixpkgs.nix>
|
pam.sessionVariables
Environment variables that will be set for the PAM session. The variable values must be as described in pam_env.conf(5).
Note, this option will become deprecated in the future and its use is therefore discouraged.
Type: attribute set
Default:
{ }
Example:
{
EDITOR = "vim";
}
Declared by:
<home-manager/modules/misc/pam.nix>
|
pam.yubico.authorizedYubiKeys.ids
List of authorized YubiKey token IDs. Refer to https://developers.yubico.com/yubico-pam for details on how to obtain the token ID of a YubiKey.
Type: list of string of length 12
Default:
[ ]
Declared by:
<home-manager/modules/misc/pam.nix>
|
pam.yubico.authorizedYubiKeys.path
File path to write the authorized YubiKeys,
relative to HOME
.
Type: string
Default:
".yubico/authorized_yubikeys"
Declared by:
<home-manager/modules/misc/pam.nix>
|
programs.abook.enable
Whether to enable Abook.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/abook.nix>
|
programs.abook.extraConfig
Extra lines added to $HOME/.config/abook/abookrc
.
Available configuration options are described in the abook repository:
https://sourceforge.net/p/abook/git/ci/master/tree/sample.abookrc.
Type: strings concatenated with “\n”
Default:
""
Example:
''
field pager = Pager
view CONTACT = name, email
set autosave=true
''
Declared by:
<home-manager/modules/programs/abook.nix>
|
programs.aerc.enable
Whether to enable aerc.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.package
The aerc package to use.
Type: package
Default:
pkgs.aerc
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.extraAccounts
Extra lines added to $HOME/.config/aerc/accounts.conf
.
See aerc-config(5).
Type: strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ Work = { source = "maildir://~/Maildir/work"; }; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.extraBinds
Extra lines added to $HOME/.config/aerc/binds.conf
.
Global keybindings can be set in the global
section.
See aerc-config(5).
Type: strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ messages = { q = ":quit<Enter>"; }; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.extraConfig
Extra lines added to $HOME/.config/aerc/aerc.conf
.
See aerc-config(5).
Type: strings concatenated with “\n” or attribute set of attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)
Default:
{ }
Example:
{ ui = { sort = "-r date"; }; }
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.stylesets
Stylesets added to $HOME/.config/aerc/stylesets/
.
See aerc-stylesets(7).
Type: attribute set of ((attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)) or strings concatenated with “\n”)
Default:
{ }
Example:
{ default = { ui = { "tab.selected.reverse" = toggle; }; }; };
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.aerc.templates
Templates added to $HOME/.config/aerc/templates/
.
See aerc-templates(7).
Type: attribute set of strings concatenated with “\n”
Default:
{ }
Example:
{ new_message = "Hello!"; };
Declared by:
<home-manager/modules/programs/aerc.nix>
|
programs.afew.enable
Whether to enable the afew initial tagging script for Notmuch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/afew.nix>
|
programs.afew.extraConfig
Extra lines added to afew configuration file. Available configuration options are described in the afew manual: https://afew.readthedocs.io/en/latest/configuration.html.
Type: strings concatenated with “\n”
Default:
''
[SpamFilter]
[KillThreadsFilter]
[ListMailsFilter]
[ArchiveSentMailsFilter]
[InboxFilter]
''
Example:
''
[SpamFilter]
[Filter.0]
query = from:pointyheaded@boss.com
tags = -new;+boss
message = Message from above
[InboxFilter]
''
Declared by:
<home-manager/modules/programs/afew.nix>
|
programs.alacritty.enable
Whether to enable Alacritty.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/alacritty.nix>
|
programs.alacritty.package
The Alacritty package to install.
Type: package
Default:
pkgs.alacritty
Declared by:
<home-manager/modules/programs/alacritty.nix>
|
programs.alacritty.settings
Configuration written to
$XDG_CONFIG_HOME/alacritty/alacritty.yml
or
$XDG_CONFIG_HOME/alacritty/alacritty.toml
(the latter being used for alacritty 0.13 and later).
See https://github.com/alacritty/alacritty/tree/master#configuration
for more info.
Type: TOML value
Default:
{ }
Example:
{
window.dimensions = {
lines = 3;
columns = 200;
};
keyboard.bindings = [
{
key = "K";
mods = "Control";
chars = "\\u000c";
}
];
}
Declared by:
<home-manager/modules/programs/alacritty.nix>
|
programs.alot.enable
Whether to enable the Alot mail user agent. Alot uses the Notmuch email system and will therefore be automatically enabled for each email account that is managed by Notmuch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings
Keybindings.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.bufferlist
Bufferlist mode keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.envelope
Envelope mode keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.global
Global keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.search
Search mode keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.taglist
Taglist mode keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.bindings.thread
Thread mode keybindings.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.extraConfig
Extra lines added to alot configuration file.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.hooks
Content of the hooks file.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.settings
Configuration options added to alot configuration file.
Type: attribute set of (string or signed integer or boolean or floating point number)
Default:
{
auto_remove_unread = true;
handle_mouse = true;
initial_command = "search tag:inbox AND NOT tag:killed";
prefer_plaintext = true;
}
Example:
{
auto_remove_unread = true;
ask_subject = false;
thread_indent_replies = 2;
}
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.tags
How to display the tags.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.tags.<name>.focus
How to display the tag when focused.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.tags.<name>.normal
How to display the tag when unfocused. See https://alot.readthedocs.io/en/latest/configuration/theming.html#tagstring-formatting.
Type: null or string
Default:
null
Example:
"'','', 'white','light red', 'white','#d66'"
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.tags.<name>.translated
Fixed string representation for this tag. The tag can be
hidden from view, if the key translated is set to
""
, the empty string.
Type: null or string
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.alot.tags.<name>.translation
A pair of strings that define a regular substitution to
compute the string representation on the fly using
re.sub
.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/alot.nix>
|
programs.aria2.enable
Whether to enable aria2.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/aria2.nix>
|
programs.aria2.extraConfig
Extra lines added to aria2.conf
file.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/aria2.nix>
|
programs.aria2.settings
Options to add to aria2.conf
file.
See
aria2c(1)
for options.
Type: attribute set of (boolean or floating point number or signed integer or string)
Default:
{ }
Example:
{
listen-port = 60000;
dht-listen-port = 60000;
seed-ratio = 1.0;
max-upload-limit = "50K";
ftp-pasv = true;
}
Declared by:
<home-manager/modules/programs/aria2.nix>
|
programs.astroid.enable
Whether to enable Astroid.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/astroid.nix>
|
programs.astroid.externalEditor
You can use the following variables:
%1
file name
%2
server name
%3
socket ID
See Customizing editor on the Astroid wiki.
Type: null or string
Default:
null
Example:
"nvim-qt -- -c 'set ft=mail' '+set fileencoding=utf-8' '+set ff=unix' '+set enc=utf-8' '+set fo+=w' %1"
Declared by:
<home-manager/modules/programs/astroid.nix>
|
programs.astroid.extraConfig
JSON config that will override the default Astroid configuration.
Type: JSON value
Default:
{ }
Example:
{
poll.interval = 0;
}
Declared by:
<home-manager/modules/programs/astroid.nix>
|
programs.astroid.pollScript
Script to run to fetch/update mails.
Type: string
Default:
""
Example:
"mbsync gmail"
Declared by:
<home-manager/modules/programs/astroid.nix>
|
programs.atuin.enable
Whether to enable atuin.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.enableBashIntegration
Whether to enable Atuin’s Bash integration. This will bind
ctrl-r
to open the Atuin history.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.enableFishIntegration
Whether to enable Atuin’s Fish integration.
If enabled, this will bind the up-arrow key to open the Atuin history.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.enableNushellIntegration
Whether to enable Nushell integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.enableZshIntegration
Whether to enable Atuin’s Zsh integration.
If enabled, this will bind ctrl-r
and the up-arrow
key to open the Atuin history.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.package
The package to use for atuin.
Type: package
Default:
pkgs.atuin
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.flags
Flags to append to the shell hook.
Type: list of string
Default:
[ ]
Example:
[
"--disable-up-arrow"
"--disable-ctrl-r"
]
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.atuin.settings
Configuration written to
$XDG_CONFIG_HOME/atuin/config.toml
.
See https://atuin.sh/docs/config/ for the full list of options.
Type: Atuin configuration
Default:
{ }
Example:
{
auto_sync = true;
sync_frequency = "5m";
sync_address = "https://api.atuin.sh";
search_mode = "prefix";
}
Declared by:
<home-manager/modules/programs/atuin.nix>
|
programs.autojump.enable
Whether to enable autojump.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/autojump.nix>
|
programs.autojump.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/autojump.nix>
|
programs.autojump.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/autojump.nix>
|
programs.autojump.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/autojump.nix>
|
programs.autorandr.enable
Whether to enable Autorandr.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.hooks
Global hook scripts
Type: submodule
Default:
{ }
Example:
{
postswitch = {
"notify-i3" = "${pkgs.i3}/bin/i3-msg restart";
"change-background" = readFile ./change-background.sh;
"change-dpi" = ''
case "$AUTORANDR_CURRENT_PROFILE" in
default)
DPI=120
;;
home)
DPI=192
;;
work)
DPI=144
;;
*)
echo "Unknown profile: $AUTORANDR_CURRENT_PROFILE"
exit 1
esac
echo "Xft.dpi: $DPI" | ${pkgs.xorg.xrdb}/bin/xrdb -merge
''
};
}
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.hooks.postswitch
Postswitch hook executed after mode switch.
Type: attribute set of strings concatenated with “\n”
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.hooks.predetect
Predetect hook executed before autorandr attempts to run xrandr.
Type: attribute set of strings concatenated with “\n”
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.hooks.preswitch
Preswitch hook executed before mode switch.
Type: attribute set of strings concatenated with “\n”
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles
Autorandr profiles specification.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
"work" = {
fingerprint = {
eDP1 = "<EDID>";
DP1 = "<EDID>";
};
config = {
eDP1.enable = false;
DP1 = {
enable = true;
crtc = 0;
primary = true;
position = "0x0";
mode = "3840x2160";
gamma = "1.0:0.909:0.833";
rate = "60.00";
rotate = "left";
};
};
hooks.postswitch = readFile ./work-postswitch.sh;
};
}
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config
Per output profile configuration.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.enable
Whether to enable the output.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.crtc
Output video display controller.
Type: null or (unsigned integer, meaning >=0)
Default:
null
Example:
0
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.dpi
Output DPI configuration.
Type: null or (positive integer, meaning >0)
Default:
null
Example:
96
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.filter
Interpolation method to be used for scaling the output.
Type: null or one of “bilinear”, “nearest”
Default:
null
Example:
"nearest"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.gamma
Output gamma configuration.
Type: string
Default:
""
Example:
"1.0:0.909:0.833"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.mode
Output resolution.
Type: string
Default:
""
Example:
"3840x2160"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.position
Output position
Type: string
Default:
""
Example:
"5760x0"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.primary
Whether output should be marked as primary
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.rate
Output framerate.
Type: string
Default:
""
Example:
"60.00"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.rotate
Output rotate configuration.
Type: null or one of “normal”, “left”, “right”, “inverted”
Default:
null
Example:
"left"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.scale
Output scale configuration.
Either configure by pixels or a scaling factor. When using pixel method the
xrandr(1)
option
--scale-from
will be used; when using factor method the option
--scale
will be used.
This option is a shortcut version of the transform option and they are mutually exclusive.
Type: null or (submodule)
Default:
null
Example:
{
x = 1.25;
y = 1.25;
}
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.scale.method
Output scaling method.
Type: one of “factor”, “pixel”
Default:
"factor"
Example:
"pixel"
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.scale.x
Horizontal scaling factor/pixels.
Type: floating point number or (positive integer, meaning >0)
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.scale.y
Vertical scaling factor/pixels.
Type: floating point number or (positive integer, meaning >0)
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.config.<name>.transform
Refer to xrandr(1) for the documentation of the transform matrix.
Type: null or (3×3 matrix of floating point numbers)
Default:
null
Example:
[
[ 0.6 0.0 0.0 ]
[ 0.0 0.6 0.0 ]
[ 0.0 0.0 1.0 ]
]
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.fingerprint
Output name to EDID mapping.
Use autorandr --fingerprint
to get current setup values.
Type: attribute set of string
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.hooks
Profile hook scripts.
Type: submodule
Default:
{ }
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.hooks.postswitch
Postswitch hook executed after mode switch.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.hooks.predetect
Predetect hook executed before autorandr attempts to run xrandr.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.autorandr.profiles.<name>.hooks.preswitch
Preswitch hook executed before mode switch.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/autorandr.nix>
|
programs.awscli.enable
Whether to enable AWS CLI tool.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/awscli.nix>
|
programs.awscli.package
Package providing aws.
Type: package
Default:
pkgs.awscli2
Declared by:
<home-manager/modules/programs/awscli.nix>
|
programs.awscli.credentials
Configuration written to $HOME/.aws/credentials
.
For security reasons, never store cleartext passwords here.
We recommend that you use credential_process
option to retrieve
the IAM credentials from your favorite password manager during runtime,
or use AWS IAM Identity Center to get short-term credentials.
See https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
"default" = {
"credential_process" = "${pkgs.pass}/bin/pass show aws";
};
};
Declared by:
<home-manager/modules/programs/awscli.nix>
|
programs.awscli.settings
Configuration written to $HOME/.aws/config
.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
"default" = {
region = "eu-west-3";
output = "json";
};
};
Declared by:
<home-manager/modules/programs/awscli.nix>
|
programs.bacon.enable
Whether to enable bacon, a background rust code checker.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bacon.nix>
|
programs.bacon.package
The bacon package to use.
Type: package
Default:
pkgs.bacon
Declared by:
<home-manager/modules/programs/bacon.nix>
|
programs.bacon.settings
Bacon configuration. For available settings see https://dystroy.org/bacon/#global-preferences.
Type: TOML value
Default:
{ }
Example:
{
jobs = {
default = {
command = [
"cargo"
"build"
"--all-features"
"--color"
"always"
];
need_stdout = true;
};
};
}
Declared by:
<home-manager/modules/programs/bacon.nix>
|
programs.bash.enable
Whether to enable GNU Bourne-Again SHell.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.enableCompletion
Whether to enable Bash completion for all interactive Bash shells.
Note, if you use NixOS or nix-darwin and do not have Bash completion enabled in the system configuration, then make sure to add
environment.pathsToLink = [ "/share/bash-completion" ];
to your system configuration to get completion for system packages.
Note, the legacy /etc/bash_completion.d
path is
not supported by Home Manager.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.enableVteIntegration
Whether to enable integration with terminals using the VTE library. This will let the terminal track the current working directory.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/misc/vte.nix>
|
programs.bash.package
The bash package to use.
Type: package
Default:
pkgs.bashInteractive
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.bashrcExtra
Extra commands that should be placed in ~/.bashrc
.
Note that these commands will be run even in non-interactive shells.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.historyControl
Controlling how commands are saved on the history list.
Type: list of (one of “erasedups”, “ignoredups”, “ignorespace”, “ignoreboth”)
Default:
[ ]
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.historyFile
Location of the bash history file.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.historyFileSize
Number of history lines to keep on file.
Type: signed integer
Default:
100000
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.historyIgnore
List of commands that should not be saved to the history list.
Type: list of string
Default:
[ ]
Example:
[
"ls"
"cd"
"exit"
]
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.historySize
Number of history lines to keep in memory.
Type: signed integer
Default:
10000
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.initExtra
Extra commands that should be run when initializing an interactive shell.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.logoutExtra
Extra commands that should be run when logging out of an interactive shell.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.profileExtra
Extra commands that should be run when initializing a login shell.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.sessionVariables
Environment variables that will be set for the Bash session.
Type: attribute set
Default:
{ }
Example:
{
MAILCHECK = 30;
}
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.shellAliases
An attribute set that maps aliases (the top level attribute names in this option) to command strings or directly to build outputs.
Type: attribute set of string
Default:
{ }
Example:
{
ll = "ls -l";
".." = "cd ..";
}
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bash.shellOptions
Shell options to set. Prefix an option with
“-
” to unset.
Type: list of string
Default:
[
"histappend"
"checkwinsize"
"extglob"
"globstar"
"checkjobs"
]
Example:
[
"extglob"
"-cdspell"
]
Declared by:
<home-manager/modules/programs/bash.nix>
|
programs.bashmount.enable
Whether to enable bashmount.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bashmount.nix>
|
programs.bashmount.extraConfig
Configuration written to
$XDG_CONFIG_HOME/bashmount/config
. Look at
https://github.com/jamielinux/bashmount/blob/master/bashmount.conf
for explanation about possible values.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/bashmount.nix>
|
programs.bat.enable
Whether to enable bat, a cat clone with wings.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.bat.package
The bat package to use.
Type: package
Default:
pkgs.bat
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.bat.config
Bat configuration.
Type: attribute set of (string or list of string or boolean)
Default:
{ }
Example:
{
map-syntax = [
"*.jenkinsfile:Groovy"
"*.props:Java Properties"
];
pager = "less -FR";
theme = "TwoDark";
}
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.bat.extraPackages
Additional bat packages to install.
Type: list of package
Default:
[ ]
Example:
with pkgs.bat-extras; [ batdiff batman batgrep batwatch ];
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.bat.syntaxes
Additional syntaxes to provide.
Type: attribute set of (strings concatenated with “\n” or (submodule))
Default:
{ }
Example:
{
gleam = {
src = pkgs.fetchFromGitHub {
owner = "molnarmark";
repo = "sublime-gleam";
rev = "2e761cdb1a87539d827987f997a20a35efd68aa9";
hash = "sha256-Zj2DKTcO1t9g18qsNKtpHKElbRSc9nBRE2QBzRn9+qs=";
};
file = "syntax/gleam.sublime-syntax";
};
}
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.bat.themes
Additional themes to provide.
Type: attribute set of (strings concatenated with “\n” or (submodule))
Default:
{ }
Example:
{
dracula = {
src = pkgs.fetchFromGitHub {
owner = "dracula";
repo = "sublime"; # Bat uses sublime syntax for its themes
rev = "26c57ec282abcaa76e57e055f38432bd827ac34e";
sha256 = "019hfl4zbn4vm4154hh3bwk6hm7bdxbr1hdww83nabxwjn99ndhv";
};
file = "Dracula.tmTheme";
};
}
Declared by:
<home-manager/modules/programs/bat.nix>
|
programs.beets.enable
Whether to enable the beets music library manager. This
defaults to false
for state
version ≥ 19.03. For earlier versions beets is enabled if
programs.beets.settings
is non-empty.
Type: boolean
Default:
"false"
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.package
The beets
package to use.
Can be used to specify extensions.
Type: package
Default:
pkgs.beets
Example:
(pkgs.beets.override { pluginOverrides = { beatport.enable = false; }; })
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.mpdIntegration.enableStats
Whether to enable mpdstats plugin and service.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.mpdIntegration.enableUpdate
Whether to enable mpdupdate plugin.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.mpdIntegration.host
The host that mpdstats will connect to.
Type: string
Default:
"localhost"
Example:
"10.0.0.42"
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.mpdIntegration.port
The port that mpdstats will connect to.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default:
config.services.mpd.network.port
Example:
6601
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.beets.settings
Configuration written to
$XDG_CONFIG_HOME/beets/config.yaml
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/beets.nix>
|
programs.bemenu.enable
Whether to enable bemenu.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bemenu.nix>
|
programs.bemenu.package
The bemenu package to use.
Type: package
Default:
pkgs.bemenu
Declared by:
<home-manager/modules/programs/bemenu.nix>
|
programs.bemenu.settings
Configuration options for bemenu. See bemenu(1).
Type: attribute set of (string or signed integer or floating point number or boolean)
Default:
{ }
Example:
{
line-height = 28;
prompt = "open";
ignorecase = true;
fb = "#1e1e2e";
ff = "#cdd6f4";
nb = "#1e1e2e";
nf = "#cdd6f4";
tb = "#1e1e2e";
hb = "#1e1e2e";
tf = "#f38ba8";
hf = "#f9e2af";
af = "#cdd6f4";
ab = "#1e1e2e";
width-factor = 0.3;
}
Declared by:
<home-manager/modules/programs/bemenu.nix>
|
programs.borgmatic.enable
Whether to enable Borgmatic.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.package
The borgmatic package to use.
Type: package
Default:
pkgs.borgmatic
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups
Borgmatic allows for several named backup configurations, each with its own source directories and repositories.
Type: attribute set of (submodule)
Example:
{
personal = {
location = {
sourceDirectories = [ "/home/me/personal" ];
repositories = [ "ssh://myuser@myserver.com/./personal-repo" ];
};
};
work = {
location = {
sourceDirectories = [ "/home/me/work" ];
repositories = [ "ssh://myuser@myserver.com/./work-repo" ];
};
};
};
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.consistency.checks
Consistency checks to run
Type: list of (submodule)
Default:
[ ]
Example:
[
{
name = "repository";
frequency = "2 weeks";
}
{
name = "archives";
frequency = "4 weeks";
}
{
name = "data";
frequency = "6 weeks";
}
{
name = "extract";
frequency = "6 weeks";
}
];
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.consistency.checks.*.frequency
Frequency of this type of check
Type: null or string matching the pattern ([[:digit:]]+ .*)|always
Default:
null
Example:
"2 weeks"
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.consistency.checks.*.name
Name of consistency check to run.
Type: one of “repository”, “archives”, “data”, “extract”
Example:
"repository"
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.consistency.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.hooks.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.location.excludeHomeManagerSymlinks
Whether to exclude Home Manager generated symbolic links from the backups. This facilitates restoring the whole home directory when the Nix store doesn’t contain the latest Home Manager generation.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.location.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.location.patterns
Patterns to include/exclude.
See the output of borg help patterns
for the syntax. Pattern paths
are relative to /
even when a different recursion root is set.
Mutually exclusive with programs.borgmatic.backups.<name>.location.sourceDirectories
.
Type: null or (list of string)
Default:
null
Example:
[
"R /home/user"
"- home/user/.cache"
"- home/user/Downloads"
"+ home/user/Videos/Important Video"
"- home/user/Videos"
]
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.location.repositories
List of local or remote repositories with paths and optional labels.
Type: list of (string or (submodule))
Example:
[
{
"path" = "ssh://myuser@myrepo.myserver.com/./repo";
"label" = "server";
}
{
"path" = "/var/lib/backups/local.borg";
"label" = "local";
}
]
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.location.sourceDirectories
Directories to backup.
Mutually exclusive with programs.borgmatic.backups.<name>.location.patterns
.
Type: null or (list of string)
Default:
null
Example:
[config.home.homeDirectory]
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.output.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepDaily
Number of daily archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepHourly
Number of hourly archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepMinutely
Number of minutely archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepMonthly
Number of monthly archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepSecondly
Number of secondly archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepWeekly
Number of weekly archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepWithin
Keep all archives within this time interval.
Type: null or string matching the pattern [[:digit:]]+[Hdwmy]
Default:
null
Example:
"2d"
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.retention.keepYearly
Number of yearly archives to keep. Use -1 for no limit.
Type: null or signed integer
Default:
null
Example:
3
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.storage.encryptionPasscommand
Command writing the passphrase to standard output.
Type: null or string
Default:
null
Example:
"${pkgs.password-store}/bin/pass borg-repo"
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.borgmatic.backups.<name>.storage.extraConfig
Extra settings.
Type: YAML value
Default:
{ }
Declared by:
<home-manager/modules/programs/borgmatic.nix>
|
programs.bottom.enable
Whether to enable bottom, a cross-platform graphical process/system monitor with a customizable interface.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bottom.nix>
|
programs.bottom.package
Package providing bottom.
Type: package
Default:
pkgs.bottom
Declared by:
<home-manager/modules/programs/bottom.nix>
|
programs.bottom.settings
Configuration written to
$XDG_CONFIG_HOME/bottom/bottom.toml
.
See https://github.com/ClementTsang/bottom/blob/master/sample_configs/default_config.toml for the default configuration.
Type: TOML value
Default:
{ }
Example:
{
flags = {
avg_cpu = true;
temperature_type = "c";
};
colors = {
low_battery_color = "red";
};
}
Declared by:
<home-manager/modules/programs/bottom.nix>
|
programs.boxxy.enable
Whether to enable boxxy: Boxes in badly behaving applications.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.package
The boxxy package to use.
Type: package
Default:
pkgs.boxxy
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules
List of boxxy rules
Type: list of (YAML value)
Default:
[ ]
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.context
Apply redirection ONLY when in a certain directory.
Type: list of string
Default:
[ ]
Example:
[
"/home/example/Projects/my-project"
]
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.env
Give certain environment variables for said match.
Type: attribute set of string
Default:
{ }
Example:
{
MY_ENV_VAR = "my_env_var_value";
}
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.mode
Does the current path redirect a file or a directory?
Type: one of “file”, “directory”
Default:
"directory"
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.name
Unique identifier of the boxxy rule. This can be any single-line string.
Type: string
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.only
Apply redirection ONLY to specified executable names.
Type: list of string
Default:
[ ]
Example:
[
"bash"
"/usr/bin/sh"
]
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.rewrite
Where that file/directory should be rewritten to.
Type: string
Default:
""
Example:
"${config.xdg.configHome}/ssh"
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.boxxy.rules.*.target
What directory/file to redirect.
Type: string
Default:
""
Example:
"~/.ssh"
Declared by:
<home-manager/modules/programs/boxxy.nix>
|
programs.broot.enable
Whether to enable Broot, a better way to navigate directories.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.enableNushellIntegration
Whether to enable Nushell integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.package
Package providing broot
Type: package
Default:
pkgs.broot
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.settings
Verbatim config entries
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.settings.modal
Whether to enable modal (vim) mode.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.settings.skin
Color configuration.
Complete list of keys (expected to change before the v1 of broot):
char_match
code
directory
exe
file
file_error
flag_label
flag_value
input
link
permissions
selected_line
size_bar_full
size_bar_void
size_text
spinner
status_error
status_normal
table_border
tree
unlisted
Add _fg
for a foreground color and
_bg
for a background color.
Type: attribute set of string
Default:
{ }
Example:
{
status_normal_fg = "grayscale(18)";
status_normal_bg = "grayscale(3)";
status_error_fg = "red";
status_error_bg = "yellow";
tree_fg = "red";
selected_line_bg = "grayscale(7)";
permissions_fg = "grayscale(12)";
size_bar_full_bg = "red";
size_bar_void_bg = "black";
directory_fg = "lightyellow";
input_fg = "cyan";
flag_value_fg = "lightyellow";
table_border_fg = "red";
code_fg = "lightyellow";
}
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.broot.settings.verbs
Define new verbs. For more information, see Verb Definition Attributes in the broot documentation.
The possible attributes are:
invocation
(optional)how the verb is called by the user, with placeholders for arguments
execution
(mandatory)how the verb is executed
key
(optional)a keyboard key triggering execution
shortcut
(optional)an alternate way to call the verb (without the arguments part)
leave_broot
(optional)whether to quit broot on execution
(default: true
)
from_shell
(optional)</term>whether the verb must be executed from the
parent shell (default: false
)
Type: list of attribute set of (boolean or string)
Default:
[ ]
Example:
[
{ invocation = "p"; execution = ":parent"; }
{ invocation = "edit"; shortcut = "e"; execution = "$EDITOR {file}" ; }
{ invocation = "create {subpath}"; execution = "$EDITOR {directory}/{subpath}"; }
{ invocation = "view"; execution = "less {file}"; }
{
invocation = "blop {name}\\.{type}";
execution = "mkdir {parent}/{type} && ${pkgs.neovim}/bin/nvim {parent}/{type}/{name}.{type}";
from_shell = true;
}
]
Declared by:
<home-manager/modules/programs/broot.nix>
|
programs.browserpass.enable
Whether to enable the browserpass extension host application.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/browserpass.nix>
|
programs.browserpass.browsers
Which browsers to install browserpass for
Type: list of (one of “brave”, “chrome”, “chromium”, “firefox”, “librewolf”, “vivaldi”)
Default:
[
"brave"
"chrome"
"chromium"
"firefox"
"librewolf"
"vivaldi"
]
Example:
[
"firefox"
]
Declared by:
<home-manager/modules/programs/browserpass.nix>
|
programs.btop.enable
Whether to enable btop.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/btop.nix>
|
programs.btop.package
The btop package to use.
Type: package
Default:
pkgs.btop
Declared by:
<home-manager/modules/programs/btop.nix>
|
programs.btop.extraConfig
Extra lines added to the btop.conf
file.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/btop.nix>
|
programs.btop.settings
Options to add to btop.conf
file.
See https://github.com/aristocratos/btop#configurability
for options.
Type: attribute set of (boolean or floating point number or signed integer or string)
Default:
{ }
Example:
{
color_theme = "Default";
theme_background = false;
}
Declared by:
<home-manager/modules/programs/btop.nix>
|
programs.bun.enable
Whether to enable Bun JavaScript runtime.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/bun.nix>
|
programs.bun.enableGitIntegration
Whether to enable Git integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/bun.nix>
|
programs.bun.package
The bun package to use.
Type: package
Default:
pkgs.bun
Declared by:
<home-manager/modules/programs/bun.nix>
|
programs.bun.settings
Configuration written to
$XDG_CONFIG_HOME/.bunfig.toml
.
See https://bun.sh/docs/runtime/bunfig for the full list of options.
Type: TOML value
Default:
{ }
Example:
{
smol = true;
telemetry = false;
test = {
coverage = true;
coverageThreshold = 0.9;
};
install.lockfile = {
print = "yarn";
};
}
Declared by:
<home-manager/modules/programs/bun.nix>
|
programs.carapace.enable
Whether to enable carapace, a multi-shell multi-command argument completer.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.carapace.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.carapace.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.carapace.enableNushellIntegration
Whether to enable Nushell integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.carapace.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.carapace.package
The carapace package to use.
Type: package
Default:
pkgs.carapace
Declared by:
<home-manager/modules/programs/carapace.nix>
|
programs.cava.enable
Whether to enable Cava audio visualizer.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/cava.nix>
|
programs.cava.package
The cava package to use.
Type: package
Default:
pkgs.cava
Declared by:
<home-manager/modules/programs/cava.nix>
|
programs.cava.settings
Settings to be written to the Cava configuration file. See https://github.com/karlstav/cava/blob/master/example_files/config for all available options.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
general.framerate = 60;
input.method = "alsa";
smoothing.noise_reduction = 88;
color = {
background = "'#000000'";
foreground = "'#FFFFFF'";
};
}
Declared by:
<home-manager/modules/programs/cava.nix>
|
programs.chromium.enable
Whether to enable Chromium.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.package
The Chromium package to use.
Type: package
Default:
pkgs.chromium
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.commandLineArgs
List of command-line arguments to be passed to Chromium.
For a list of common switches, see Chrome switches.
To search switches for other components, see Chromium codesearch.
Type: list of string
Default:
[ ]
Example:
[
"--enable-logging=stderr"
"--ignore-gpu-blocklist"
]
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.dictionaries
List of Chromium dictionaries to install.
Type: list of package
Default:
[ ]
Example:
[
pkgs.hunspellDictsChromium.en_US
]
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.extensions
List of Chromium extensions to install. To find the extension ID, check its URL on the Chrome Web Store.
To install extensions outside of the Chrome Web Store set
updateUrl
or crxPath
and
version
as explained in the
Chrome
documentation.
Type: list of ((submodule) or string convertible to it)
Default:
[ ]
Example:
[
{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # ublock origin
{
id = "dcpihecpambacapedldabdbpakmachpb";
updateUrl = "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/updates.xml";
}
{
id = "aaaaaaaaaabbbbbbbbbbcccccccccc";
crxPath = "/home/share/extension.crx";
version = "1.0";
}
]
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.extensions.*.crxPath
Path to the extension’s crx file. Linux only.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.extensions.*.id
The extension’s ID from the Chrome Web Store url or the unpacked crx.
Type: string matching the pattern [a-zA-Z]{32}
Default:
""
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.extensions.*.updateUrl
URL of the extension’s update manifest XML file. Linux only.
Type: string
Default:
"https://clients2.google.com/service/update2/crx"
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.chromium.extensions.*.version
The extension’s version, required for local installation. Linux only.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/chromium.nix>
|
programs.command-not-found.enable
Whether to enable command-not-found hook for interactive shell.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/command-not-found/command-not-found.nix>
|
programs.command-not-found.dbPath
Absolute path to programs.sqlite
. By
default this file will be provided by your channel
(nixexprs.tar.xz).
Type: path
Default:
"/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite"
Declared by:
<home-manager/modules/programs/command-not-found/command-not-found.nix>
|
programs.comodoro.enable
Whether to enable Comodoro, a CLI to manage your time.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/comodoro.nix>
|
programs.comodoro.package
The comodoro package to use.
Type: package
Default:
pkgs.comodoro
Declared by:
<home-manager/modules/programs/comodoro.nix>
|
programs.comodoro.settings
Comodoro configuration. See https://pimalaya.org/comodoro/cli/configuration/ for supported values.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/comodoro.nix>
|
programs.darcs.enable
Whether to enable darcs.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/darcs.nix>
|
programs.darcs.package
The darcs package to use.
Type: package
Default:
pkgs.darcs
Declared by:
<home-manager/modules/programs/darcs.nix>
|
programs.darcs.author
If this list has a single entry, it will be used as the author when you record a patch. If there are multiple entries, Darcs will prompt you to choose one of them.
Type: list of string
Default:
[ ]
Example:
[
"Fred Bloggs <fred@example.net>"
]
Declared by:
<home-manager/modules/programs/darcs.nix>
|
programs.darcs.boring
File patterns to ignore
Type: list of string
Default:
[ ]
Example:
[
"^.idea$"
".iml$"
"^.stack-work$"
]
Declared by:
<home-manager/modules/programs/darcs.nix>
|
programs.dircolors.enable
Whether to manage .dir_colors
and set LS_COLORS
.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.dircolors.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.dircolors.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.dircolors.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.dircolors.extraConfig
Extra lines added to .dir_colors
file.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.dircolors.settings
Options to add to .dir_colors
file.
See dircolors --print-database
for options.
Type: attribute set of string
Default:
{ }
Example:
{
OTHER_WRITABLE = "30;46";
".sh" = "01;32";
".csh" = "01;32";
}
Declared by:
<home-manager/modules/programs/dircolors.nix>
|
programs.direnv.enable
Whether to enable direnv, the environment switcher.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.enableFishIntegration
Whether to enable Fish integration. Note, enabling the direnv module will always active its functionality for Fish since the direnv package automatically gets loaded in Fish. If this is not the case try adding
environment.pathsToLink = [ "/share/fish" ];
to the system configuration.
Type: boolean (read only)
Default:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.enableNushellIntegration
Whether to enable Nushell integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.package
The direnv package to use.
Type: package
Default:
pkgs.direnv
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.config
Configuration written to
$XDG_CONFIG_HOME/direnv/direnv.toml
.
See direnv.toml(1). for the full list of options.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.nix-direnv.enable
Whether to enable nix-direnv, a fast, persistent use_nix implementation for direnv.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.nix-direnv.package
The nix-direnv package to use.
Type: package
Default:
pkgs.nix-direnv
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.silent
Whether to enable silent mode, that is, disabling direnv logging.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.direnv.stdlib
Custom stdlib written to
$XDG_CONFIG_HOME/direnv/direnvrc
.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/direnv.nix>
|
programs.discocss.enable
Whether to enable discocss, a tiny Discord CSS injector for Linux and MacOS.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/discocss.nix>
|
programs.discocss.package
The discocss package to use.
Type: package
Default:
pkgs.discocss
Declared by:
<home-manager/modules/programs/discocss.nix>
|
programs.discocss.css
The custom CSS for discocss to use.
Type: string
Default:
""
Declared by:
<home-manager/modules/programs/discocss.nix>
|
programs.discocss.discordAlias
Whether to alias discocss to discord.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/discocss.nix>
|
programs.discocss.discordPackage
The discord package to use.
Type: package
Default:
pkgs.discord
Declared by:
<home-manager/modules/programs/discocss.nix>
|
programs.eclipse.enable
Whether to enable Eclipse.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/eclipse.nix>
|
programs.eclipse.enableLombok
Whether to enable the Lombok Java Agent in Eclipse. This is necessary to use the Lombok class annotations.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/eclipse.nix>
|
programs.eclipse.package
The Eclipse package to install.
Type: package
Default:
pkgs.eclipses.eclipse-platform
Example:
pkgs.eclipses.eclipse-java
Declared by:
<home-manager/modules/programs/eclipse.nix>
|
programs.eclipse.jvmArgs
JVM arguments to use for the Eclipse process.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/programs/eclipse.nix>
|
programs.eclipse.plugins
Plugins that should be added to Eclipse.
Type: list of package
Default:
[ ]
Declared by:
<home-manager/modules/programs/eclipse.nix>
|
programs.emacs.enable
Whether to enable Emacs.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/emacs.nix>
|
programs.emacs.package
The Emacs package to use.
Type: package
Default:
pkgs.emacs
Example:
pkgs.emacs25-nox
Declared by:
<home-manager/modules/programs/emacs.nix>
|
programs.emacs.extraConfig
Configuration to include in the Emacs default init file. See https://www.gnu.org/software/emacs/manual/html_node/elisp/Init-File.html for more.
Note, the inhibit-startup-message
Emacs option
cannot be set here since Emacs disallows setting it from the default
initialization file.
Type: strings concatenated with “\n”
Default:
""
Example:
''
(setq standard-indent 2)
''
Declared by:
<home-manager/modules/programs/emacs.nix>
|
programs.emacs.extraPackages
Extra packages available to Emacs. To get a list of available packages run: nix-env -f '<nixpkgs>' -qaP -A emacsPackages.
Type: Function that takes an attribute set and returns a list containing a selection of the values of the input set
Default:
"epkgs: []"
Example:
epkgs: [ epkgs.emms epkgs.magit ]
Declared by:
<home-manager/modules/programs/emacs.nix>
|
programs.emacs.overrides
Allows overriding packages within the Emacs package set.
Type: An overlay function, takes self and super and returns an attribute set overriding the desired attributes.
Default:
"self: super: {}"
Example:
self: super: rec {
haskell-mode = self.melpaPackages.haskell-mode;
# ...
};
Declared by:
<home-manager/modules/programs/emacs.nix>
|
programs.eww.enable
Whether to enable eww.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eww.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eww.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eww.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eww.package
The eww package to install.
Type: package
Default:
pkgs.eww
Example:
pkgs.eww
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eww.configDir
The directory that gets symlinked to
$XDG_CONFIG_HOME/eww
.
Type: path
Example:
./eww-config-dir
Declared by:
<home-manager/modules/programs/eww.nix>
|
programs.eza.enable
Whether to enable eza, a modern replacement for ls.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.enableIonIntegration
Whether to enable Ion integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.enableNushellIntegration
Whether to enable Nushell integration.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.package
The eza package to use.
Type: package
Default:
pkgs.eza
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.extraOptions
Extra command line options passed to eza.
Type: list of string
Default:
[ ]
Example:
[
"--group-directories-first"
"--header"
]
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.git
List each file’s Git status if tracked or ignored (--git
argument).
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.eza.icons
Display icons next to file names (--icons
argument).
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/eza.nix>
|
programs.fastfetch.enable
Whether to enable Fastfetch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fastfetch.nix>
|
programs.fastfetch.package
The fastfetch package to use.
Type: package
Default:
pkgs.fastfetch
Declared by:
<home-manager/modules/programs/fastfetch.nix>
|
programs.fastfetch.settings
Configuration written to $XDG_CONFIG_HOME/fastfetch/config.jsonc
.
See https://github.com/fastfetch-cli/fastfetch/wiki/Json-Schema
for the documentation.
Type: JSON value
Default:
{ }
Example:
{
logo = {
source = "nixos_small";
padding = {
right = 1;
};
};
display = {
size = {
binaryPrefix = "si";
};
color = "blue";
separator = " ";
};
modules = [
{
type = "datetime";
key = "Date";
format = "{1}-{3}-{11}";
}
{
type = "datetime";
key = "Time";
format = "{14}:{17}:{20}";
}
"break"
"player"
"media"
];
};
Declared by:
<home-manager/modules/programs/fastfetch.nix>
|
programs.fd.enable
Whether to enable fd, a simple, fast and user-friendly alternative to find.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fd.nix>
|
programs.fd.package
The fd package to use.
Type: package
Default:
pkgs.fd
Declared by:
<home-manager/modules/programs/fd.nix>
|
programs.fd.extraOptions
Extra command line options passed to fd.
Type: list of string
Default:
[ ]
Example:
[
"--no-ignore"
"--absolute-path"
]
Declared by:
<home-manager/modules/programs/fd.nix>
|
programs.fd.hidden
Search hidden files and directories (--hidden
argument).
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/fd.nix>
|
programs.fd.ignores
List of paths that should be globally ignored.
Type: list of string
Default:
[ ]
Example:
[
".git/"
"*.bak"
]
Declared by:
<home-manager/modules/programs/fd.nix>
|
programs.feh.enable
Whether to enable feh - a fast and light image viewer.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/feh.nix>
|
programs.feh.package
The feh package to use.
Type: package
Default:
pkgs.feh
Declared by:
<home-manager/modules/programs/feh.nix>
|
programs.feh.buttons
Override feh’s default mouse button mapping. If you want to disable an action, set its value to null. If you want to bind multiple buttons to an action, set its value to a list. See https://man.finalrewind.org/1/feh/#x425554544f4e53 for default bindings and available commands.
Type: attribute set of (null or string or signed integer or list of (string or signed integer))
Default:
{ }
Example:
{
prev_img = [
3
"C-3"
];
zoom_in = 4;
zoom_out = "C-4";
}
Declared by:
<home-manager/modules/programs/feh.nix>
|
programs.feh.keybindings
Override feh’s default keybindings. If you want to disable a keybinding set its value to null. If you want to bind multiple keys to an action, set its value to a list. See https://man.finalrewind.org/1/feh/#x4b455953 for default bindings and available commands.
Type: attribute set of (null or string or list of string)
Default:
{ }
Example:
{
prev_img = [
"h"
"Left"
];
zoom_in = "plus";
zoom_out = "minus";
}
Declared by:
<home-manager/modules/programs/feh.nix>
|
programs.firefox.enable
Whether to enable Firefox.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.enableGnomeExtensions
Whether to enable the GNOME Shell native host connector. Note, you
also need to set the NixOS option
services.gnome.gnome-browser-connector.enable
to
true
.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.package
The Firefox package to use. If state version ≥ 19.09 then
this should be a wrapped Firefox package. For earlier state
versions it should be an unwrapped Firefox package.
Set to null
to disable installing Firefox.
Type: null or package
Default:
pkgs.firefox
Example:
pkgs.firefox.override {
# See nixpkgs' firefox/wrapper.nix to check which options you can use
nativeMessagingHosts = [
# Gnome shell native connector
pkgs.gnome-browser-connector
# Tridactyl native connector
pkgs.tridactyl-native
];
}
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.finalPackage
Resulting Firefox package.
Type: null or package (read only)
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.languagePacks
The language packs to install. Available language codes can be found
on the releases page:
https://releases.mozilla.org/pub/firefox/releases/${version}/linux-x86_64/xpi/
,
replacing ${version}
with the version of Firefox you have.
Type: list of string
Default:
[ ]
Example:
[
"en-GB"
"de"
]
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.nativeMessagingHosts
Additional packages containing native messaging hosts that should be made available to Firefox extensions.
Type: list of package
Default:
[ ]
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.policies
Type: attribute set of (JSON value)
Default:
{ }
Example:
{
BlockAboutConfig = true;
DefaultDownloadDirectory = "\${home}/Downloads";
}
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles
Attribute set of Firefox profiles.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.bookmarks
Preloaded bookmarks. Note, this may silently overwrite any previously existing bookmarks!
Type: (list of ((bookmark submodule) or (directory submodule))) or (attribute set of ((bookmark submodule) or (directory submodule))) convertible to it
Default:
[ ]
Example:
[
{
name = "wikipedia";
tags = [ "wiki" ];
keyword = "wiki";
url = "https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
}
{
name = "kernel.org";
url = "https://www.kernel.org";
}
{
name = "Nix sites";
toolbar = true;
bookmarks = [
{
name = "homepage";
url = "https://nixos.org/";
}
{
name = "wiki";
tags = [ "wiki" "nix" ];
url = "https://wiki.nixos.org/";
}
];
}
]
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containers
Attribute set of container configurations. See Multi-Account Containers for more information.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
dangerous = {
color = "red";
icon = "fruit";
id = 2;
};
shopping = {
color = "blue";
icon = "cart";
id = 1;
};
}
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containers.<name>.color
Container color.
Type: one of “blue”, “turquoise”, “green”, “yellow”, “orange”, “red”, “pink”, “purple”, “toolbar”
Default:
"pink"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containers.<name>.icon
Container icon.
Type: one of “briefcase”, “cart”, “circle”, “dollar”, “fence”, “fingerprint”, “gift”, “vacation”, “food”, “fruit”, “pet”, “tree”, “chill”
Default:
"fruit"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containers.<name>.id
Container ID. This should be set to a unique number per container in this profile.
Type: unsigned integer, meaning >=0
Default:
0
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containers.<name>.name
Container name, e.g., shopping.
Type: string
Default:
"‹name›"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.containersForce
Whether to force replace the existing containers configuration. This is recommended since Firefox will replace the symlink on every launch, but note that you’ll lose any existing configuration by enabling this.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.extensions
List of ‹name› add-on packages to install for this profile. Some pre-packaged add-ons are accessible from the Nix User Repository. Once you have NUR installed run
$ nix-env -f '<nixpkgs>' -qaP -A nur.repos.rycee.firefox-addons
to list the available ‹name› add-ons.
Note that it is necessary to manually enable these extensions inside ‹name› after the first installation.
To automatically enable extensions add
"extensions.autoDisableScopes" = 0;
to
programs.firefox.profiles.<profile>.settings
Type: list of package
Default:
[ ]
Example:
with pkgs.nur.repos.rycee.firefox-addons; [
privacy-badger
]
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.extraConfig
Extra preferences to add to user.js
.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.id
Profile ID. This should be set to a unique number per profile.
Type: unsigned integer, meaning >=0
Default:
0
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.isDefault
Whether this is a default profile.
Type: boolean
Default:
"true if profile ID is 0"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.name
Profile name.
Type: string
Default:
"‹name›"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.path
Profile path.
Type: string
Default:
"‹name›"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.search.default
The default search engine used in the address bar and search bar.
Type: null or string
Default:
null
Example:
"DuckDuckGo"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.search.engines
Attribute set of search engine configurations. Engines
that only have metaData
specified will
be treated as builtin to ‹name›.
See SearchEngine.jsm in Firefox’s source for available options. We maintain a mapping to let you specify all options in the referenced link without underscores, but it may fall out of date with future options.
Note, icon
is also a special option
added by Home Manager to make it convenient to specify
absolute icon paths.
Type: attribute set of attribute set of (JSON value)
Default:
{ }
Example:
{
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
"NixOS Wiki" = {
urls = [{ template = "https://wiki.nixos.org/index.php?search={searchTerms}"; }];
iconUpdateURL = "https://wiki.nixos.org/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@nw" ];
};
"Bing".metaData.hidden = true;
"Google".metaData.alias = "@g"; # builtin engines only support specifying one additional alias
}
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.search.force
Whether to force replace the existing search configuration. This is recommended since ‹name› will replace the symlink for the search configuration on every launch, but note that you’ll lose any existing configuration by enabling this.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.search.order
The order the search engines are listed in. Any engines that aren’t included in this list will be listed after these in an unspecified order.
Type: list of string
Default:
[ ]
Example:
[
"DuckDuckGo"
"Google"
]
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.search.privateDefault
The default search engine used in the Private Browsing.
Type: null or string
Default:
null
Example:
"DuckDuckGo"
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.settings
Attribute set of ‹name› preferences.
‹name› only supports int, bool, and string types for preferences, but home-manager will automatically convert all other JSON-compatible values into strings.
Type: attribute set of (‹name› preference (int, bool, string, and also attrs, list, float as a JSON string))
Default:
{ }
Example:
{
"browser.startup.homepage" = "https://nixos.org";
"browser.search.region" = "GB";
"browser.search.isUS" = false;
"distribution.searchplugins.defaultLocale" = "en-GB";
"general.useragent.locale" = "en-GB";
"browser.bookmarks.showMobileBookmarks" = true;
"browser.newtabpage.pinned" = [{
title = "NixOS";
url = "https://nixos.org";
}];
}
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.userChrome
Custom ‹name› user chrome CSS.
Type: strings concatenated with “\n”
Default:
""
Example:
''
/* Hide tab bar in FF Quantum */
@-moz-document url(chrome://browser/content/browser.xul), url(chrome://browser/content/browser.xhtml) {
#TabsToolbar {
visibility: collapse !important;
margin-bottom: 21px !important;
}
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
visibility: collapse !important;
}
}
''
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.firefox.profiles.<name>.userContent
Custom ‹name› user content CSS.
Type: strings concatenated with “\n”
Default:
""
Example:
''
/* Hide scrollbar in FF Quantum */
*{scrollbar-width:none !important}
''
Declared by:
<home-manager/modules/programs/firefox.nix>
|
programs.fish.enable
Whether to enable fish, the friendly interactive shell.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.package
The fish package to install. May be used to change the version.
Type: package
Default:
pkgs.fish
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.functions
Basic functions to add to fish. For more information see https://fishshell.com/docs/current/cmds/function.html.
Type: attribute set of (strings concatenated with “\n” or (submodule))
Default:
{ }
Example:
{
__fish_command_not_found_handler = {
body = "__fish_default_command_not_found_handler $argv[1]";
onEvent = "fish_command_not_found";
};
gitignore = "curl -sL https://www.gitignore.io/api/$argv";
}
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.interactiveShellInit
Shell script code called during interactive fish shell initialisation.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.loginShellInit
Shell script code called during fish login shell initialisation.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.plugins
The plugins to source in
conf.d/99plugins.fish
.
Type: list of (submodule)
Default:
[ ]
Example:
[
{
name = "z";
src = pkgs.fetchFromGitHub {
owner = "jethrokuan";
repo = "z";
rev = "ddeb28a7b6a1f0ec6dae40c636e5ca4908ad160a";
sha256 = "0c5i7sdrsp0q3vbziqzdyqn4fmp235ax4mn4zslrswvn8g3fvdyh";
};
}
# oh-my-fish plugins are stored in their own repositories, which
# makes them simple to import into home-manager.
{
name = "fasd";
src = pkgs.fetchFromGitHub {
owner = "oh-my-fish";
repo = "plugin-fasd";
rev = "38a5b6b6011106092009549e52249c6d6f501fba";
sha256 = "06v37hqy5yrv5a6ssd1p3cjd9y3hnp19d3ab7dag56fs1qmgyhbs";
};
}
]
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.plugins.*.name
The name of the plugin.
Type: string
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.plugins.*.src
Path to the plugin folder.
Relevant pieces will be added to the fish function path and
the completion path. The init.fish
and
key_binding.fish
files are sourced if
they exist.
Type: path
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.shellAbbrs
An attribute set that maps aliases (the top level attribute names in this option) to abbreviations. Abbreviations are expanded with the longer phrase after they are entered.
Type: attribute set of (string or (submodule))
Default:
{ }
Example:
{
l = "less";
gco = "git checkout";
"-C" = {
position = "anywhere";
expansion = "--color";
};
}
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.shellAliases
An attribute set that maps aliases (the top level attribute names in this option) to command strings or directly to build outputs.
Type: attribute set of string
Default:
{ }
Example:
{
g = "git";
"..." = "cd ../..";
}
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.shellInit
Shell script code called during fish shell initialisation.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.fish.shellInitLast
Shell script code called during interactive fish shell initialisation, this will be the last thing executed in fish startup.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/fish.nix>
|
programs.foot.enable
Whether to enable Foot terminal.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/foot.nix>
|
programs.foot.package
The foot package to install
Type: package
Default:
pkgs.foot
Declared by:
<home-manager/modules/programs/foot.nix>
|
programs.foot.server.enable
Whether to enable Foot terminal server.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/foot.nix>
|
programs.foot.settings
Configuration written to
$XDG_CONFIG_HOME/foot/foot.ini
. See https://codeberg.org/dnkl/foot/src/branch/master/foot.ini
for a list of available options.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
main = {
term = "xterm-256color";
font = "Fira Code:size=11";
dpi-aware = "yes";
};
mouse = {
hide-when-typing = "yes";
};
}
Declared by:
<home-manager/modules/programs/foot.nix>
|
programs.freetube.enable
Whether to enable FreeTube, a YT client for Windows, Mac, and Linux.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/freetube.nix>
|
programs.freetube.package
The freetube package to use.
Type: package
Default:
pkgs.freetube
Declared by:
<home-manager/modules/programs/freetube.nix>
|
programs.freetube.settings
Configuration settings for FreeTube.
All configurable options can be deduced by enabling them through the
GUI and observing the changes in settings.db
.
Type: attribute set
Default:
{ }
Example:
{
allowDashAv1Formats = true;
checkForUpdates = false;
defaultQuality = "1080";
baseTheme = "catppuccinMocha";
}
Declared by:
<home-manager/modules/programs/freetube.nix>
|
programs.fuzzel.enable
Whether to enable fuzzel.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fuzzel.nix>
|
programs.fuzzel.package
The fuzzel package to use.
Type: package
Default:
pkgs.fuzzel
Declared by:
<home-manager/modules/programs/fuzzel.nix>
|
programs.fuzzel.settings
Configuration for fuzzel written to
$XDG_CONFIG_HOME/fuzzel/fuzzel.ini
. See
fuzzel.ini(5) for a list of available options.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
main = {
terminal = "${pkgs.foot}/bin/foot";
layer = "overlay";
};
colors.background = "ffffffff";
}
Declared by:
<home-manager/modules/programs/fuzzel.nix>
|
programs.fzf.enable
Whether to enable fzf - a command-line fuzzy finder.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.enableFishIntegration
Whether to enable Fish integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.package
Package providing the fzf tool.
Type: package
Default:
pkgs.fzf
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.changeDirWidgetCommand
The command that gets executed as the source for fzf for the ALT-C keybinding.
Type: null or string
Default:
null
Example:
"fd --type d"
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.changeDirWidgetOptions
Command line options for the ALT-C keybinding.
Type: list of string
Default:
[ ]
Example:
[
"--preview 'tree -C {} | head -200'"
]
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.colors
Color scheme options added to FZF_DEFAULT_OPTS
. See
https://github.com/junegunn/fzf/wiki/Color-schemes
for documentation.
Type: attribute set of string
Default:
{ }
Example:
{
bg = "#1e1e1e";
"bg+" = "#1e1e1e";
fg = "#d4d4d4";
"fg+" = "#d4d4d4";
}
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.defaultCommand
The command that gets executed as the default source for fzf when running.
Type: null or string
Default:
null
Example:
"fd --type f"
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.defaultOptions
Extra command line options given to fzf by default.
Type: list of string
Default:
[ ]
Example:
[
"--height 40%"
"--border"
]
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.fileWidgetCommand
The command that gets executed as the source for fzf for the CTRL-T keybinding.
Type: null or string
Default:
null
Example:
"fd --type f"
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.fileWidgetOptions
Command line options for the CTRL-T keybinding.
Type: list of string
Default:
[ ]
Example:
[
"--preview 'head {}'"
]
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.historyWidgetOptions
Command line options for the CTRL-R keybinding.
Type: list of string
Default:
[ ]
Example:
[
"--sort"
"--exact"
]
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.tmux.enableShellIntegration
Whether to enable setting FZF_TMUX=1
which causes shell integration to use fzf-tmux
.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.fzf.tmux.shellIntegrationOptions
If programs.fzf.tmux.enableShellIntegration
is set to true
,
shell integration will use these options for fzf-tmux.
See fzf-tmux --help for available options.
Type: list of string
Default:
[ ]
Example:
[ "-d 40%" ]
Declared by:
<home-manager/modules/programs/fzf.nix>
|
programs.gallery-dl.enable
Whether to enable gallery-dl.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gallery-dl.nix>
|
programs.gallery-dl.package
The gallery-dl package to use.
Type: package
Default:
pkgs.gallery-dl
Declared by:
<home-manager/modules/programs/gallery-dl.nix>
|
programs.gallery-dl.settings
Configuration written to
$XDG_CONFIG_HOME/gallery-dl/config.json
. See
https://github.com/mikf/gallery-dl#configuration
for supported values.
Type: JSON value
Default:
{ }
Example:
{
extractor.base-directory = "~/Downloads";
}
Declared by:
<home-manager/modules/programs/gallery-dl.nix>
|
programs.gh.enable
Whether to enable GitHub CLI tool.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.package
Package providing gh.
Type: package
Default:
pkgs.gh
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.extensions
gh extensions, see https://cli.github.com/manual/gh_extension.
Type: list of package
Default:
[ ]
Example:
[ pkgs.gh-eco ]
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.gitCredentialHelper.enable
Whether to enable the gh git credential helper.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.gitCredentialHelper.hosts
GitHub hosts to enable the gh git credential helper for
Type: list of string
Default:
[
"https://github.com"
"https://gist.github.com"
]
Example:
[ "https://github.com" "https://github.example.com" ]
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.settings
Configuration written to $XDG_CONFIG_HOME/gh/config.yml
.
Type: YAML value
Default:
{ }
Example:
{
git_protocol = "ssh";
prompt = "enabled";
aliases = {
co = "pr checkout";
pv = "pr view";
};
};
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.settings.aliases
Aliases that allow you to create nicknames for gh commands.
Type: attribute set of string
Default:
{ }
Example:
{
co = "pr checkout";
pv = "pr view";
}
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.settings.editor
The editor that gh should run when creating issues, pull requests, etc. If blank, will refer to environment.
Type: string
Default:
""
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh.settings.git_protocol
The protocol to use when performing Git operations.
Type: string
Default:
"https"
Example:
"ssh"
Declared by:
<home-manager/modules/programs/gh.nix>
|
programs.gh-dash.enable
Whether to enable GitHub CLI dashboard plugin.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gh-dash.nix>
|
programs.gh-dash.package
The gh-dash package to use.
Type: package
Default:
pkgs.gh-dash
Declared by:
<home-manager/modules/programs/gh-dash.nix>
|
programs.gh-dash.settings
Configuration written to $XDG_CONFIG_HOME/gh-dash/config.yml
.
Type: YAML value
Default:
{ }
Example:
{
prSections = [{
title = "My Pull Requests";
filters = "is:open author:@me";
}];
}
Declared by:
<home-manager/modules/programs/gh-dash.nix>
|
programs.git.enable
Whether to enable Git.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.package
Git package to install. Use pkgs.gitAndTools.gitFull
to gain access to git send-email for instance.
Type: package
Default:
pkgs.git
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.aliases
Git aliases to define.
Type: attribute set of string
Default:
{ }
Example:
{
co = "checkout";
}
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.attributes
List of defining attributes set globally.
Type: list of string
Default:
[ ]
Example:
[
"*.pdf diff=pdf"
]
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.delta.enable
Whether to enable the delta syntax highlighter. See https://github.com/dandavison/delta.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.delta.package
The delta package to use.
Type: package
Default:
pkgs.delta
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.delta.options
Options to configure delta.
Type: attribute set of (string or boolean or signed integer or attribute set of (string or boolean or signed integer))
Default:
{ }
Example:
{
decorations = {
commit-decoration-style = "bold yellow box ul";
file-decoration-style = "none";
file-style = "bold yellow ul";
};
features = "decorations";
whitespace-error-style = "22 reverse";
}
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.enable
Enable the diff-so-fancy diff colorizer. See https://github.com/so-fancy/diff-so-fancy.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.changeHunkIndicators
Simplify git header chunks to a more human readable format.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.markEmptyLines
Whether the first block of an empty line should be colored.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.pagerOpts
Arguments to be passed to less.
Type: list of string
Default:
[
"--tabs=4"
"-RFX"
]
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.rulerWidth
By default, the separator for the file header spans the full width of the terminal. Use this setting to set the width of the file header manually.
Type: null or signed integer
Default:
null
Example:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.stripLeadingSymbols
Whether the +
or -
at
line-start should be removed.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.diff-so-fancy.useUnicodeRuler
By default, the separator for the file header uses Unicode line-drawing characters. If this is causing output errors on your terminal, set this to false to use ASCII characters instead.
Type: boolean
Default:
true
Example:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.difftastic.enable
Enable the difftastic syntax highlighter. See https://github.com/Wilfred/difftastic.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.difftastic.package
The difftastic package to use.
Type: package
Default:
pkgs.difftastic
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.difftastic.background
Determines whether difftastic should use the lighter or darker colors for syntax highlighting.
Type: one of “light”, “dark”
Default:
"light"
Example:
"dark"
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.difftastic.color
Determines when difftastic should color its output.
Type: one of “always”, “auto”, “never”
Default:
"auto"
Example:
"always"
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.difftastic.display
Determines how the output displays - in one column or two columns.
Type: one of “side-by-side”, “side-by-side-show-both”, “inline”
Default:
"side-by-side"
Example:
"inline"
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.extraConfig
Additional configuration to add. The use of string values is deprecated and will be removed in the future.
Type: strings concatenated with “\n” or attribute set of attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer) or attribute set of (string or boolean or signed integer or list of (string or boolean or signed integer)))
Default:
{ }
Example:
{
core = {
whitespace = "trailing-space,space-before-tab";
};
url = {
"ssh://git@host" = {
insteadOf = "otherhost";
};
};
}
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.hooks
Configuration helper for Git hooks. See https://git-scm.com/docs/githooks for reference.
Type: attribute set of path
Default:
{ }
Example:
{
pre-commit = ./pre-commit-script;
}
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.ignores
List of paths that should be globally ignored.
Type: list of string
Default:
[ ]
Example:
[
"*~"
"*.swp"
]
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.includes
List of configuration files to include.
Type: list of (submodule)
Default:
[ ]
Example:
[
{ path = "~/path/to/config.inc"; }
{
path = "~/path/to/conditional.inc";
condition = "gitdir:~/src/dir";
}
]
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.includes.*.condition
Include this configuration only when condition
matches. Allowed conditions are described in
git-config(1).
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.includes.*.contentSuffix
Nix store name for the git configuration text file, when generating the configuration text from nix options.
Type: string
Default:
"gitconfig"
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.includes.*.contents
Configuration to include. If empty then a path must be given.
This follows the configuration structure as described in git-config(1).
Type: attribute set of anything
Default:
{ }
Example:
{
user = {
email = "bob@work.example.com";
name = "Bob Work";
signingKey = "1A2B3C4D5E6F7G8H";
};
commit = {
gpgSign = true;
};
};
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.includes.*.path
Path of the configuration file to include.
Type: string or path
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.lfs.enable
Whether to enable Git Large File Storage.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.lfs.skipSmudge
Skip automatic downloading of objects on clone or pull. This requires a manual git lfs pull every time a new commit is checked out on your repository.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.signing
Options related to signing commits using GnuPG.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.signing.gpgPath
Path to GnuPG binary to use.
Type: string
Default:
"\${pkgs.gnupg}/bin/gpg2"
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.signing.key
The default GPG signing key fingerprint.
Set to null
to let GnuPG decide what signing key
to use depending on commit’s author.
Type: null or string
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.signing.signByDefault
Whether commits and tags should be signed by default.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.userEmail
Default user email to use.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git.userName
Default user name to use.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/git.nix>
|
programs.git-cliff.enable
Whether to enable git-cliff changelog generator.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git-cliff.nix>
|
programs.git-cliff.package
The git-cliff package to use.
Type: package
Default:
pkgs.git-cliff
Declared by:
<home-manager/modules/programs/git-cliff.nix>
|
programs.git-cliff.settings
Configuration written to
$XDG_CONFIG_HOME/git-cliff/cliff.toml
. See
https://git-cliff.org/docs/configuration
for the documentation.
Type: TOML value
Default:
{ }
Example:
{
header = "Changelog";
trim = true;
}
Declared by:
<home-manager/modules/programs/git-cliff.nix>
|
programs.git-credential-oauth.enable
Whether to enable Git authentication handler for OAuth.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/git-credential-oauth.nix>
|
programs.git-credential-oauth.package
The git-credential-oauth package to use.
Type: package
Default:
pkgs.git-credential-oauth
Declared by:
<home-manager/modules/programs/git-credential-oauth.nix>
|
programs.gitui.enable
Whether to enable gitui, blazing fast terminal-ui for git written in rust.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gitui.nix>
|
programs.gitui.package
The package to use.
Type: package
Default:
"pkgs.gitui"
Declared by:
<home-manager/modules/programs/gitui.nix>
|
programs.gitui.keyConfig
Key config in Ron file format. This is written to
$XDG_CONFIG_HOME/gitui/key_config.ron
.
Type: path or strings concatenated with “\n”
Default:
""
Example:
''
exit: Some(( code: Char('c'), modifiers: ( bits: 2,),)),
quit: Some(( code: Char('q'), modifiers: ( bits: 0,),)),
exit_popup: Some(( code: Esc, modifiers: ( bits: 0,),)),
''
Declared by:
<home-manager/modules/programs/gitui.nix>
|
programs.gitui.theme
Theme in Ron file format. This is written to
$XDG_CONFIG_HOME/gitui/theme.ron
.
Type: path or strings concatenated with “\n”
Default:
''
(
selected_tab: Reset,
command_fg: White,
selection_bg: Blue,
selection_fg: White,
cmdbar_bg: Blue,
cmdbar_extra_lines_bg: Blue,
disabled_fg: DarkGray,
diff_line_add: Green,
diff_line_delete: Red,
diff_file_added: LightGreen,
diff_file_removed: LightRed,
diff_file_moved: LightMagenta,
diff_file_modified: Yellow,
commit_hash: Magenta,
commit_time: LightCyan,
commit_author: Green,
danger_fg: Red,
push_gauge_bg: Blue,
push_gauge_fg: Reset,
tag_fg: LightMagenta,
branch_fg: LightYellow,
)
''
Declared by:
<home-manager/modules/programs/gitui.nix>
|
programs.gnome-shell.enable
Whether to enable GNOME Shell customization.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.extensions
List of GNOME Shell extensions.
Type: list of (submodule)
Default:
[ ]
Example:
[
{ package = pkgs.gnomeExtensions.dash-to-panel; }
{
id = "user-theme@gnome-shell-extensions.gcampax.github.com";
package = pkgs.gnome.gnome-shell-extensions;
}
]
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.extensions.*.package
Package providing a GNOME Shell extension in
$out/share/gnome-shell/extensions/${id}
.
Type: package
Example:
"pkgs.gnome.gnome-shell-extensions"
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.extensions.*.id
ID of the GNOME Shell extension. If not provided, it
will be obtained from package.extensionUuid
.
Type: string
Example:
"user-theme@gnome-shell-extensions.gcampax.github.com"
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.theme
Theme to use for GNOME Shell.
Type: null or (submodule)
Default:
null
Example:
{
name = "Plata-Noir";
package = pkgs.plata-theme;
}
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.theme.package
Package providing a GNOME Shell theme in
$out/share/themes/${name}/gnome-shell
.
Type: null or package
Default:
null
Example:
pkgs.plata-theme
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-shell.theme.name
Name of the GNOME Shell theme.
Type: string
Example:
"Plata-Noir"
Declared by:
<home-manager/modules/programs/gnome-shell.nix>
|
programs.gnome-terminal.enable
Whether to enable Gnome Terminal.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile
A set of Gnome Terminal profiles. Note, the name of a profile must be
a UUID. You can generate one, for example, using uuidgen
(from util-linux
).
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.allowBold
If true
, allow applications in the
terminal to make text boldface.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.audibleBell
Turn on/off the terminal’s bell.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.backspaceBinding
Which string the terminal should send to an application when the user presses the Backspace key.
auto
Attempt to determine the right value from the terminal’s IO settings.
ascii-backspace
Send an ASCII backspace character (0x08
).
ascii-delete
Send an ASCII delete character (0x7F
).
delete-sequence
Send the @7
control sequence.
tty
Send terminal’s “erase” setting.
Type: one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”
Default:
"ascii-delete"
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.boldIsBright
Whether bold text is shown in bright colors.
Type: null or boolean
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors
The terminal colors, null to use system default.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.backgroundColor
The background color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.boldColor
The bold color, null to use same as foreground.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.cursor
The color for the terminal cursor.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.cursor.background
The background color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.cursor.foreground
The foreground color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.foregroundColor
The foreground color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.highlight
The colors for the terminal’s highlighted area.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.highlight.background
The background color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.highlight.foreground
The foreground color.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.colors.palette
The terminal palette.
Type: list of string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.cursorBlinkMode
The cursor blink mode.
Type: one of “system”, “on”, “off”
Default:
"system"
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.cursorShape
The cursor shape.
Type: one of “block”, “ibeam”, “underline”
Default:
"block"
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.customCommand
The command to use to start the shell, or null for default shell.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.default
Whether this should be the default profile.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.deleteBinding
Which string the terminal should send to an application when the user presses the Delete key.
auto
Send the @7
control sequence.
ascii-backspace
Send an ASCII backspace character (0x08
).
ascii-delete
Send an ASCII delete character (0x7F
).
delete-sequence
Send the @7
control sequence.
tty
Send terminal’s “erase” setting.
Type: one of “auto”, “ascii-backspace”, “ascii-delete”, “delete-sequence”, “tty”
Default:
"delete-sequence"
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.font
The font name, null to use system default.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.loginShell
Run command as a login shell.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.scrollOnOutput
Whether to scroll when output is written.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.scrollbackLines
The number of scrollback lines to keep, null for infinite.
Type: null or signed integer
Default:
10000
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.showScrollbar
Whether the scroll bar should be visible.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.transparencyPercent
Background transparency in percent.
Type: null or integer between 0 and 100 (both inclusive)
Default:
null
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.profile.<name>.visibleName
The profile name.
Type: string
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.showMenubar
Whether to show the menubar by default
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.gnome-terminal.themeVariant
The theme variation to request
Type: one of “default”, “light”, “dark”, “system”
Default:
"default"
Declared by:
<home-manager/modules/programs/gnome-terminal.nix>
|
programs.go.enable
Whether to enable Go.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.package
The Go package to use.
Type: package
Default:
pkgs.go
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.packages
Packages to add to GOPATH.
Type: attribute set of path
Default:
{ }
Example:
{
"golang.org/x/text" = builtins.fetchGit "https://go.googlesource.com/text";
"golang.org/x/time" = builtins.fetchGit "https://go.googlesource.com/time";
}
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.extraGoPaths
Extra GOPATH
s relative to HOME
appended
after programs.go.goPath
, if that option is set.
Type: list of string
Default:
[ ]
Example:
[
"extraGoPath1"
"extraGoPath2"
]
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.goBin
GOBIN relative to HOME
Type: null or string
Default:
null
Example:
".local/bin.go"
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.goPath
Primary GOPATH
relative to
HOME
. It will be exported first and therefore
used by default by the Go tooling.
Type: null or string
Default:
null
Example:
"go"
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.go.goPrivate
The GOPRIVATE
environment variable controls
which modules the go command considers to be private (not
available publicly) and should therefore not use the proxy
or checksum database.
Type: list of string
Default:
[ ]
Example:
[
"*.corp.example.com"
"rsc.io/private"
]
Declared by:
<home-manager/modules/programs/go.nix>
|
programs.gpg.enable
Whether to enable GnuPG.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.package
The Gnupg package to use (also used by the gpg-agent service).
Type: package
Default:
pkgs.gnupg
Example:
pkgs.gnupg23
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.homedir
Directory to store keychains and configuration.
Type: path
Default:
"${config.home.homeDirectory}/.gnupg"
Example:
"${config.xdg.dataHome}/gnupg"
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.mutableKeys
If set to true
, you may manage your keyring as a user
using the gpg
command. Upon activation, the keyring
will have managed keys added without overwriting unmanaged keys.
If set to false
, the path
$GNUPGHOME/pubring.kbx
will become an immutable
link to the Nix store, denying modifications.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.mutableTrust
If set to true
, you may manage trust as a user using
the gpg command. Upon activation, trusted keys have
their trust set without overwriting unmanaged keys.
If set to false
, the path
$GNUPGHOME/trustdb.gpg
will be
overwritten on each activation, removing trust for
any unmanaged keys. Be careful to make a backup of your old
trustdb.gpg
before switching to immutable trust!
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.publicKeys
A list of public keys to be imported into GnuPG. Note, these key files will be copied into the world-readable Nix store.
Type: list of (submodule)
Default:
[ ]
Example:
[ { source = ./pubkeys.txt; } ]
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.publicKeys.*.source
Path of an OpenPGP public key file.
Type: path
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.publicKeys.*.text
Text of an OpenPGP public key.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.publicKeys.*.trust
The amount of trust you have in the key ownership and the care the owner puts into signing other keys. The available levels are
unknown
or 1
I don’t know or won’t say.
never
or 2
I do not trust.
marginal
or 3
I trust marginally.
full
or 4
I trust fully.
ultimate
or 5
I trust ultimately.
See the Key Management chapter of the GNU Privacy Handbook for more.
Type: null or one of “unknown”, 1, “never”, 2, “marginal”, 3, “full”, 4, “ultimate”, 5
Default:
null
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.scdaemonSettings
SCdaemon configuration options. Available options are described in scdaemon(1) .
Type: attribute set of (string or boolean or list of string)
Example:
{
disable-ccid = true;
}
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gpg.settings
GnuPG configuration options. Available options are described in gpg(1) .
Note that lists are converted to duplicate keys.
Type: attribute set of (string or boolean or list of string)
Example:
{
no-comments = false;
s2k-cipher-algo = "AES128";
}
Declared by:
<home-manager/modules/programs/gpg.nix>
|
programs.gradle.enable
Whether to enable Gradle Build Tool.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.package
The gradle package to use.
Type: package
Default:
pkgs.gradle
Example:
pkgs.gradle_7
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.home
The Gradle home directory, relative to home.homeDirectory
.
If set, the GRADLE_USER_HOME
environment variable will be
set accordingly. Defaults to .gradle
.
Type: string
Default:
".gradle"
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.initScripts
Definition of init scripts to link into the Gradle home directory.
For more information about init scripts, including naming conventions see https://docs.gradle.org/current/userguide/init_scripts.html.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
"maven-local.gradle".text = ''
allProject {
repositories {
mavenLocal()
}
}
'';
"another.init.gradle.kts".source = ./another.init.gradle.kts;
}
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.initScripts.<name>.source
Path of the init script file. If
text
is non-null then this option will automatically point
to a file containing that text.
Type: path
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.initScripts.<name>.text
Text of the init script file. if this option is null
then source
must be set.
Type: null or strings concatenated with “\n”
Default:
null
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.gradle.settings
Key value pairs to write to gradle.properties
in the Gradle
home directory.
Type: attribute set of (string, package, bool, int or float)
Default:
{ }
Example:
{
"org.gradle.caching" = true;
"org.gradle.parallel" = true;
"org.gradle.jvmargs" = "-XX:MaxMetaspaceSize=384m";
"org.gradle.home" = pkgs.jdk17;
};
Declared by:
<home-manager/modules/programs/gradle.nix>
|
programs.granted.enable
Whether to enable granted.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/granted.nix>
|
programs.granted.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/granted.nix>
|
programs.havoc.enable
Whether to enable Havoc terminal.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/havoc.nix>
|
programs.havoc.package
The havoc package to use.
Type: package
Default:
pkgs.havoc
Declared by:
<home-manager/modules/programs/havoc.nix>
|
programs.havoc.settings
Configuration written to
$XDG_CONFIG_HOME/havoc.cfg
. See https://raw.githubusercontent.com/ii8/havoc/master/havoc.cfg
for a list of available options.
Type: attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))
Default:
{ }
Example:
{
child.program = "bash";
window.opacity = 240;
window.margin = no;
terminal = {
rows = 80;
columns = 24;
scrollback = 2000;
};
bind = {
"C-S-c" = "copy";
"C-S-v" = "paste";
"C-S-r" = "reset";
"C-S-Delete" = "hard reset";
"C-S-j" = "scroll down";
"C-S-k" = "scroll up";
"C-S-Page_Down" = "scroll down page";
"C-S-Page_Up" = "scroll up page";
"C-S-End" = "scroll to bottom";
"C-S-Home" = "scroll to top";
};
}
Declared by:
<home-manager/modules/programs/havoc.nix>
|
programs.helix.enable
Whether to enable helix text editor.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.package
The package to use for helix.
Type: package
Default:
pkgs.helix
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.defaultEditor
Whether to configure hx as the default
editor using the EDITOR
environment variable.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.extraPackages
Extra packages available to hx.
Type: list of package
Default:
[ ]
Example:
[ pkgs.marksman ]
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.ignores
List of paths that should be globally ignored for file picker.
Supports the usual ignore and negative ignore (unignore) rules used in .gitignore
files.
Type: list of string
Default:
[ ]
Example:
[
".build/"
"!.gitignore"
]
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.languages
Language specific configuration at
$XDG_CONFIG_HOME/helix/languages.toml
.
See https://docs.helix-editor.com/languages.html for more information.
Type: (TOML value) or (list of (TOML value)) convertible to it
Default:
{ }
Example:
{
# the language-server option currently requires helix from the master branch at https://github.com/helix-editor/helix/
language-server.typescript-language-server = with pkgs.nodePackages; {
command = "${typescript-language-server}/bin/typescript-language-server";
args = [ "--stdio" "--tsserver-path=${typescript}/lib/node_modules/typescript/lib" ];
};
language = [{
name = "rust";
auto-format = false;
}];
}
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.settings
Configuration written to
$XDG_CONFIG_HOME/helix/config.toml
.
See https://docs.helix-editor.com/configuration.html for the full list of options.
Type: TOML value
Default:
{ }
Example:
{
theme = "base16";
editor = {
line-number = "relative";
lsp.display-messages = true;
};
keys.normal = {
space.space = "file_picker";
space.w = ":w";
space.q = ":q";
esc = [ "collapse_selection" "keep_primary_selection" ];
};
}
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.helix.themes
Each theme is written to
$XDG_CONFIG_HOME/helix/themes/theme-name.toml
.
Where the name of each attribute is the theme-name (in the example “base16”).
See https://docs.helix-editor.com/themes.html for the full list of options.
Type: attribute set of (TOML value)
Default:
{ }
Example:
{
base16 = let
transparent = "none";
gray = "#665c54";
dark-gray = "#3c3836";
white = "#fbf1c7";
black = "#282828";
red = "#fb4934";
green = "#b8bb26";
yellow = "#fabd2f";
orange = "#fe8019";
blue = "#83a598";
magenta = "#d3869b";
cyan = "#8ec07c";
in {
"ui.menu" = transparent;
"ui.menu.selected" = { modifiers = [ "reversed" ]; };
"ui.linenr" = { fg = gray; bg = dark-gray; };
"ui.popup" = { modifiers = [ "reversed" ]; };
"ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; };
"ui.selection" = { fg = black; bg = blue; };
"ui.selection.primary" = { modifiers = [ "reversed" ]; };
"comment" = { fg = gray; };
"ui.statusline" = { fg = white; bg = dark-gray; };
"ui.statusline.inactive" = { fg = dark-gray; bg = white; };
"ui.help" = { fg = dark-gray; bg = white; };
"ui.cursor" = { modifiers = [ "reversed" ]; };
"variable" = red;
"variable.builtin" = orange;
"constant.numeric" = orange;
"constant" = orange;
"attributes" = yellow;
"type" = yellow;
"ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; };
"string" = green;
"variable.other.member" = red;
"constant.character.escape" = cyan;
"function" = blue;
"constructor" = blue;
"special" = blue;
"keyword" = magenta;
"label" = magenta;
"namespace" = blue;
"diff.plus" = green;
"diff.delta" = yellow;
"diff.minus" = red;
"diagnostic" = { modifiers = [ "underlined" ]; };
"ui.gutter" = { bg = black; };
"info" = blue;
"hint" = dark-gray;
"debug" = dark-gray;
"warning" = yellow;
"error" = red;
};
}
Declared by:
<home-manager/modules/programs/helix.nix>
|
programs.hexchat.enable
Whether to enable HexChat, a graphical IRC client.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels
Configures $XDG_CONFIG_HOME/hexchat/servlist.conf
.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
oftc = {
autojoin = [
"#home-manager"
"#linux"
];
charset = "UTF-8 (Unicode)";
commands = [
"ECHO Buzz Lightyear sent you a message: 'To Infinity... and Beyond!'"
];
loginMethod = sasl;
nickname = "my_nickname";
nickname2 = "my_secondchoice";
options = {
acceptInvalidSSLCertificates = false;
autoconnect = true;
bypassProxy = true;
connectToSelectedServerOnly = true;
useGlobalUserInformation = false;
forceSSL = false;
};
password = "my_password";
realName = "my_realname";
servers = [
"irc.oftc.net"
];
userName = "my_username";
};
}
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.autojoin
Channels list to autojoin on connecting to server.
Type: list of string
Default:
[ ]
Example:
[
"#home-manager"
"#linux"
"#nix"
]
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.charset
Character set.
Type: null or string
Default:
null
Example:
"UTF-8 (Unicode)"
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.commands
Commands to be executed on connecting to server.
Type: list of string
Default:
[ ]
Example:
[ "ECHO Greetings fellow Nixer! ]
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.loginMethod
The login method. The allowed options are:
null
Default
"nickServMsg"
NickServ (/MSG NickServ
+ password)
"nickServ"
NickServ (/NICKSERV
+ password)
"challengeAuth"
Challenge Auth (username + password)
"sasl"
SASL (username + password)
"serverPassword"
Server password (/PASS
password)
"saslExternal"
SASL EXTERNAL (cert)
"customCommands"
Use “commands” field for auth. For example
commands = [ "/msg NickServ IDENTIFY my_password" ]
Type: null or one of “challengeAuth”, “customCommands”, “nickServ”, “nickServMsg”, “sasl”, “saslExternal”, “serverPassword”
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.nickname
Primary nickname.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.nickname2
Secondary nickname.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options
Channel options.
Type: null or (submodule)
Default:
null
Example:
{
autoconnect = true;
useGlobalUserInformation = true;
}
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.acceptInvalidSSLCertificates
Accept invalid SSL certificates.
Type: null or boolean
Default:
false
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.autoconnect
Autoconnect to network.
Type: null or boolean
Default:
false
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.bypassProxy
Bypass proxy.
Type: null or boolean
Default:
true
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.connectToSelectedServerOnly
Connect to selected server only.
Type: null or boolean
Default:
true
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.forceSSL
Use SSL for all servers.
Type: null or boolean
Default:
false
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.options.useGlobalUserInformation
Use global user information.
Type: null or boolean
Default:
false
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.password
Password to use. Note this password will be readable by all user’s in the Nix store.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.realName
Real name. Is used to populate the real name field that appears when
someone uses the WHOIS
command on your nick.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.servers
IRC Server Address List.
Type: list of string
Default:
[ ]
Example:
[
"irc.oftc.net"
]
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.channels.<name>.userName
User name. Part of your user@host
hostmask that
appears to other on IRC.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.overwriteConfigFiles
Enables overwriting HexChat configuration files
(hexchat.conf
, servlist.conf
).
Any existing HexChat configuration will be lost. Make sure to back up
any previous configuration before enabling this.
Enabling this setting is recommended, because everytime HexChat application is closed it overwrites Nix/Home Manager provided configuration files, causing:
Nix/Home Manager provided configuration to be out of sync with actual active HexChat configuration.
Nix/Home Manager updates to be blocked until configuration files are manually removed.
Type: null or boolean
Default:
false
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.settings
Configuration for $XDG_CONFIG_HOME/hexchat/hexchat.conf
, see
https://hexchat.readthedocs.io/en/latest/settings.html#list-of-settings
for supported values.
Type: null or (attribute set of string)
Default:
null
Example:
{
irc_nick1 = "mynick";
irc_username = "bob";
irc_realname = "Bart Simpson";
text_font = "Monospace 14";
};
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.hexchat.theme
Theme package for HexChat. Expects a derivation containing decompressed
theme files. Note, .hct
files are actually ZIP files,
as seen in example.
Type: null or package
Default:
null
Example:
source = pkgs.fetchzip {
url = "https://dl.hexchat.net/themes/Monokai.hct#Monokai.zip";
sha256 = "sha256-WCdgEr8PwKSZvBMs0fN7E2gOjNM0c2DscZGSKSmdID0=";
stripRoot = false;
};
Declared by:
<home-manager/modules/programs/hexchat.nix>
|
programs.himalaya.enable
Whether to enable the email client Himalaya CLI.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/himalaya.nix>
|
programs.himalaya.package
The himalaya package to use.
Type: package
Default:
pkgs.himalaya
Declared by:
<home-manager/modules/programs/himalaya.nix>
|
programs.himalaya.settings
Himalaya CLI global configuration. See https://pimalaya.org/himalaya/cli/latest/configuration/index.html#global-configuration for supported values.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/himalaya.nix>
|
programs.home-manager.enable
Whether to enable Home Manager.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/home-manager.nix>
|
programs.home-manager.path
The default path to use for Home Manager. When
null
, then the home-manager
channel, $HOME/.config/nixpkgs/home-manager
, and
$HOME/.nixpkgs/home-manager
will be attempted.
Type: null or string
Default:
null
Example:
"$HOME/devel/home-manager"
Declared by:
<home-manager/modules/programs/home-manager.nix>
|
programs.hstr.enable
Whether to enable Bash And Zsh shell history suggest box - easily view, navigate, search and manage your command history.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/hstr.nix>
|
programs.hstr.enableBashIntegration
Whether to enable Bash integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/hstr.nix>
|
programs.hstr.enableZshIntegration
Whether to enable Zsh integration.
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/hstr.nix>
|
programs.hstr.package
The hstr package to use.
Type: package
Default:
pkgs.hstr
Declared by:
<home-manager/modules/programs/hstr.nix>
|
programs.htop.enable
Whether to enable htop.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/htop.nix>
|
programs.htop.package
Package containing the htop program.
Type: package
Default:
pkgs.htop
Declared by:
<home-manager/modules/programs/htop.nix>
|
programs.htop.settings
Configuration options to add to
$XDG_CONFIG_HOME/htop/htoprc
.
Type: attribute set
Default:
{ }
Example:
{
color_scheme = 6;
cpu_count_from_one = 0;
delay = 15;
fields = with config.lib.htop.fields; [
PID
USER
PRIORITY
NICE
M_SIZE
M_RESIDENT
M_SHARE
STATE
PERCENT_CPU
PERCENT_MEM
TIME
COMM
];
highlight_base_name = 1;
highlight_megabytes = 1;
highlight_threads = 1;
} // (with config.lib.htop; leftMeters [
(bar "AllCPUs2")
(bar "Memory")
(bar "Swap")
(text "Zram")
]) // (with config.lib.htop; rightMeters [
(text "Tasks")
(text "LoadAverage")
(text "Uptime")
(text "Systemd")
]);
Declared by:
<home-manager/modules/programs/htop.nix>
|
programs.hyfetch.enable
Whether to enable hyfetch.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/hyfetch.nix>
|
programs.hyfetch.package
The hyfetch package to use.
Type: package
Default:
pkgs.hyfetch
Declared by:
<home-manager/modules/programs/hyfetch.nix>
|
programs.hyfetch.settings
JSON config for HyFetch
Type: JSON value
Default:
{ }
Example:
{
preset = "rainbow";
mode = "rgb";
color_align = {
mode = "horizontal";
};
}
Declared by:
<home-manager/modules/programs/hyfetch.nix>
|
programs.hyprlock.enable
Whether to enable Hyprlock, Hyprland’s GPU-accelerated lock screen utility.
Note that PAM must be configured to enable hyprlock to perform authentication. The package installed through home-manager will not be able to unlock the session without this configuration.
On NixOS, it can be enabled using:
security.pam.services.hyprlock = {};
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.hyprlock.package
The hyprlock package to use.
Type: package
Default:
pkgs.hyprlock
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.hyprlock.extraConfig
Extra configuration lines to add to ~/.config/hypr/hyprlock.conf
.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.hyprlock.importantPrefixes
List of prefix of attributes to source at the top of the config.
Type: list of string
Default:
[
"$"
"monitor"
"size"
"source"
]
Example:
[
"$"
"monitor"
"size"
]
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.hyprlock.settings
Hyprlock configuration written in Nix. Entries with the same key should be written as lists. Variables’ and colors’ names should be quoted. See https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/ for more examples.
Type: Hyprlock configuration value
Default:
{ }
Example:
{
general = {
disable_loading_bar = true;
grace = 300;
hide_cursor = true;
no_fade_in = false;
};
background = [
{
path = "screenshot";
blur_passes = 3;
blur_size = 8;
}
];
input-field = [
{
size = "200, 50";
position = "0, -80";
monitor = "";
dots_center = true;
fade_on_empty = false;
font_color = "rgb(202, 211, 245)";
inner_color = "rgb(91, 96, 120)";
outer_color = "rgb(24, 25, 38)";
outline_thickness = 5;
placeholder_text = '\'<span foreground="##cad3f5">Password...</span>'\';
shadow_passes = 2;
}
];
}
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.hyprlock.sourceFirst
Whether to enable putting source entries at the top of the configuration .
Type: boolean
Default:
true
Example:
true
Declared by:
<home-manager/modules/programs/hyprlock.nix>
|
programs.i3blocks.enable
Whether to enable i3blocks i3 status command scheduler.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/i3blocks.nix>
|
programs.i3blocks.package
Package providing i3blocks.
Type: package
Default:
pkgs.i3blocks
Declared by:
<home-manager/modules/programs/i3blocks.nix>
|
programs.i3blocks.bars
Configuration written to i3blocks config
Type: attribute set of (DAG of attribute set of (INI atom (null, int, bool, string, or float)))
Example:
{
top = {
# The title block
title = {
interval = "persist";
command = "xtitle -s";
};
};
bottom = {
time = {
command = "date +%r";
interval = 1;
};
# Make sure this block comes after the time block
date = lib.hm.dag.entryAfter [ "time" ] {
command = "date +%d";
interval = 5;
};
# And this block after the example block
example = lib.hm.dag.entryAfter [ "date" ] {
command = "echo hi $(date +%s)";
interval = 3;
};
};
}
Declared by:
<home-manager/modules/programs/i3blocks.nix>
|
programs.i3status.enable
Whether to enable i3status.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.enableDefault
Whether or not to enable the default configuration.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.package
The i3status package to use.
Type: package
Default:
pkgs.i3status
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.general
Configuration to add to i3status config
general
section.
See
i3status(1)
for options.
Type: attribute set of (boolean or signed integer or string)
Default:
{ }
Example:
{
colors = true;
color_good = "#e0e0e0";
color_degraded = "#d7ae00";
color_bad = "#f69d6a";
interval = 1;
}
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.modules
Modules to add to i3status config
file.
See
i3status(1)
for options.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
"volume master" = {
position = 1;
settings = {
format = "♪ %volume";
format_muted = "♪ muted (%volume)";
device = "pulse:1";
};
};
"disk /" = {
position = 2;
settings = {
format = "/ %avail";
};
};
}
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.modules.<name>.enable
Whether or not to enable this module.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.modules.<name>.position
Position of this module in i3status order
.
Type: signed integer or floating point number
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status.modules.<name>.settings
Configuration to add to this i3status module. See i3status(1) for options.
Type: attribute set of (boolean or signed integer or string)
Default:
{ }
Example:
{
format = "♪ %volume";
format_muted = "♪ muted (%volume)";
device = "pulse:1";
}
Declared by:
<home-manager/modules/programs/i3status.nix>
|
programs.i3status-rust.enable
Whether to enable a replacement for i3-status written in Rust.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.package
Package providing i3status-rust
Type: package
Default:
pkgs.i3status-rust
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.bars
Attribute set of i3status-rust bars, each with their own configuration.
Each bar name
generates a config file suffixed with
the bar’s name
from the attribute set, like so:
config-${name}.toml
.
This way, multiple config files can be generated, such as for having a top and a bottom bar.
See i3status-rust(1) for options.
Type: attribute set of (submodule)
Default:
{
default = {
blocks = [
{
alert = 10.0;
block = "disk_space";
info_type = "available";
interval = 60;
path = "/";
warning = 20.0;
}
{
block = "memory";
format = " $icon mem_used_percents ";
format_alt = " $icon $swap_used_percents ";
}
{
block = "cpu";
interval = 1;
}
{
block = "load";
format = " $icon $1m ";
interval = 1;
}
{
block = "sound";
}
{
block = "time";
format = " $timestamp.datetime(f:'%a %d/%m %R') ";
interval = 60;
}
];
};
}
Example:
bottom = {
blocks = [
{
block = "disk_space";
path = "/";
info_type = "available";
interval = 60;
warning = 20.0;
alert = 10.0;
}
{
block = "memory";
format_mem = " $icon $mem_used_percents ";
format_swap = " $icon $swap_used_percents ";
}
{
block = "cpu";
interval = 1;
}
{
block = "load";
interval = 1;
format = " $icon $1m ";
}
{ block = "sound"; }
{
block = "time";
interval = 60;
format = " $timestamp.datetime(f:'%a %d/%m %R') ";
}
];
settings = {
theme = {
theme = "solarized-dark";
overrides = {
idle_bg = "#123456";
idle_fg = "#abcdef";
};
};
};
icons = "awesome5";
theme = "gruvbox-dark";
};
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.bars.<name>.blocks
Configuration blocks to add to i3status-rust
config
. See
https://github.com/greshake/i3status-rust/blob/master/blocks.md
for block options.
Type: TOML value
Default:
[
{
block = "cpu";
}
{
alert = 10.0;
block = "disk_space";
format = " $icon root: $available.eng(w:2) ";
info_type = "available";
interval = 20;
path = "/";
warning = 20.0;
}
{
block = "memory";
format = " $icon $mem_total_used_percents.eng(w:2) ";
format_alt = " $icon_swap $swap_used_percents.eng(w:2) ";
}
{
block = "sound";
click = [
{
button = "left";
cmd = "pavucontrol";
}
];
}
{
block = "time";
format = " $timestamp.datetime(f:'%a %d/%m %R') ";
interval = 5;
}
]
Example:
[
{
block = "disk_space";
path = "/";
info_type = "available";
interval = 60;
warning = 20.0;
alert = 10.0;
}
{
block = "sound";
format = " $icon $output_name {$volume.eng(w:2) |}";
click = [
{
button = "left";
cmd = "pavucontrol --tab=3";
}
];
mappings = {
"alsa_output.pci-0000_00_1f.3.analog-stereo" = "";
"bluez_sink.70_26_05_DA_27_A4.a2dp_sink" = "";
};
}
];
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.bars.<name>.icons
The icons set to use. See https://github.com/greshake/i3status-rust/blob/master/doc/themes.md for a list of available icon sets.
Type: string
Default:
"none"
Example:
"awesome6"
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.bars.<name>.settings
Any extra options to add to i3status-rust
config
.
Type: TOML value
Default:
{ }
Example:
{
theme = {
theme = "solarized-dark";
overrides = {
idle_bg = "#123456";
idle_fg = "#abcdef";
};
};
}
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.i3status-rust.bars.<name>.theme
The theme to use. See https://github.com/greshake/i3status-rust/blob/master/doc/themes.md for a list of available themes.
Type: string
Default:
"plain"
Example:
"gruvbox-dark"
Declared by:
<home-manager/modules/programs/i3status-rust.nix>
|
programs.imv.enable
Whether to enable imv: a command line image viewer intended for use with tiling window managers.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/imv.nix>
|
programs.imv.package
The imv package to use.
Type: package
Default:
pkgs.imv
Declared by:
<home-manager/modules/programs/imv.nix>
|
programs.imv.settings
Configuration options for imv. See imv(5).
Type: attribute set of attribute set of (boolean or signed integer or string)
Default:
{ }
Example:
{
options.background = "ffffff";
aliases.x = "close";
}
Declared by:
<home-manager/modules/programs/imv.nix>
|
programs.info.enable
Whether to enable GNU Info.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/info.nix>
|
programs.ion.enable
Whether to enable the Ion Shell. Compatible with Redox and Linux.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/ion.nix>
|
programs.ion.package
The ion package to install. May be used to change the version.
Type: package
Default:
pkgs.ion
Declared by:
<home-manager/modules/programs/ion.nix>
|
programs.ion.initExtra
Ion script which is called during ion initialization.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/ion.nix>
|
programs.ion.shellAliases
An attribute set that maps aliases (the top level attribute names in this option) to command strings or directly to build outputs.
Type: attribute set of string
Default:
{ }
Example:
{
g = "git";
}
Declared by:
<home-manager/modules/programs/ion.nix>
|
programs.irssi.enable
Whether to enable the Irssi chat client.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.aliases
An attribute set that maps aliases to commands.
Type: attribute set of string
Default:
{ }
Example:
{
BYE = "quit";
J = "join";
}
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.extraConfig
These lines are appended to the Irssi configuration.
Type: strings concatenated with “\n”
Default:
""
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks
An attribute set of chat networks.
Type: attribute set of (submodule)
Default:
{ }
Example:
{
liberachat = {
nick = "hmuser";
server = {
address = "irc.libera.chat";
port = 6697;
autoConnect = true;
};
channels = {
nixos.autoJoin = true;
};
};
}
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.autoCommands
List of commands to execute on connect.
Type: list of string
Default:
[ ]
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.channels
Channels for the given network.
Type: attribute set of (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.channels.<name>.autoJoin
Whether to join this channel on connect.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.nick
Nickname in that network.
Type: string
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.saslExternal
Enable SASL external authentication. This requires setting a path in
programs.irssi.networks.<name>.server.ssl.certificateFile
.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.address
Address of the chat server.
Type: string
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.autoConnect
Whether Irssi connects to the server on launch.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.port
Port of the chat server.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default:
6667
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.ssl.enable
Whether SSL should be used.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.ssl.certificateFile
Path to a file containing the certificate used for client authentication to the server.
Type: null or path
Default:
null
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.server.ssl.verify
Whether the SSL certificate should be verified.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.irssi.networks.<name>.type
Type of the network.
Type: string
Default:
"IRC"
Declared by:
<home-manager/modules/programs/irssi.nix>
|
programs.java.enable
Install the Java development kit and set the
JAVA_HOME
variable.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/java.nix>
|
programs.java.package
Java package to install. Typical values are
pkgs.jdk
or pkgs.jre
.
Type: package
Default:
"pkgs.jdk"
Declared by:
<home-manager/modules/programs/java.nix>
|
programs.jetbrains-remote.enable
Whether to enable JetBrains remote development system.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/jetbrains-remote.nix>
|
programs.jetbrains-remote.ides
IDEs accessible to the JetBrains remote development system.
Type: list of package
Default:
[ ]
Example:
with pkgs.jetbrains; [ clion pycharm-professional ];
Declared by:
<home-manager/modules/programs/jetbrains-remote.nix>
|
programs.joplin-desktop.enable
Whether to enable joplin-desktop.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joplin-desktop.package
The joplin-desktop package to use.
Type: package
Default:
pkgs.joplin-desktop
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joplin-desktop.extraConfig
Use this to add other options to the Joplin config file. Settings are
written in JSON, so "sync.interval": 600
would be written as
"sync.interval" = 600
.
Type: attribute set
Default:
{ }
Example:
{
"markdown.plugin.mark" = true;
newNoteFocus = "title";
}
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joplin-desktop.general.editor
The editor command (may include arguments) that will be used to open a note. If none is provided Joplin will try to auto-detect the default editor.
Type: null or string
Default:
null
Example:
"kate"
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joplin-desktop.sync.interval
Set the synchronisation interval.
Type: one of “undefined”, “disabled”, “5m”, “10m”, “30m”, “1h”, “12h”, “1d”
Default:
"undefined"
Example:
"10m"
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joplin-desktop.sync.target
What is the type of sync target.
Type: one of “undefined”, “none”, “file-system”, “onedrive”, “nextcloud”, “webdav”, “dropbox”, “s3”, “joplin-server”, “joplin-cloud”
Default:
"undefined"
Example:
"dropbox"
Declared by:
<home-manager/modules/programs/joplin-desktop.nix>
|
programs.joshuto.enable
Whether to enable joshuto file manager.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.joshuto.package
The package to use for joshuto.
Type: package
Default:
pkgs.joshuto
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.joshuto.keymap
Configuration written to
$XDG_CONFIG_HOME/joshuto/keymap.toml
.
See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/keymap.toml.md for the full list of options. Note that this option will overwrite any existing keybinds.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.joshuto.mimetype
Configuration written to
$XDG_CONFIG_HOME/joshuto/mimetype.toml
.
See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/mimetype.toml.md for the full list of options
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.joshuto.settings
Configuration written to
$XDG_CONFIG_HOME/joshuto/joshuto.toml
.
See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/joshuto.toml.md for the full list of options.
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.joshuto.theme
Configuration written to
$XDG_CONFIG_HOME/joshuto/theme.toml
.
See https://github.com/kamiyaa/joshuto/blob/main/docs/configuration/theme.toml.md for the full list of options
Type: TOML value
Default:
{ }
Declared by:
<home-manager/modules/programs/joshuto.nix>
|
programs.jq.enable
Whether to enable the jq command-line JSON processor.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/jq.nix>
|
programs.jq.package
jq package to use.
Type: package
Default:
pkgs.jq
Declared by:
<home-manager/modules/programs/jq.nix>
|
programs.jq.colors
The colors used in colored JSON output.
See the Colors section of the jq manual.
Type: submodule
Default:
{
arrays = "1;37";
false = "0;37";
null = "1;30";
numbers = "0;37";
objects = "1;37";
strings = "0;32";
true = "0;37";
}
Example:
{
null = "1;30";
false = "0;31";
true = "0;32";
numbers = "0;36";
strings = "0;33";
arrays = "1;35";
objects = "1;37";
}
Declared by:
<home-manager/modules/programs/jq.nix>
|
programs.jujutsu.enable
Whether to enable a Git-compatible DVCS that is both simple and powerful.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/jujutsu.nix>
|
programs.jujutsu.package
The jujutsu package to use.
Type: package
Default:
pkgs.jujutsu
Declared by:
<home-manager/modules/programs/jujutsu.nix>
|
programs.jujutsu.ediff
Enable ediff as a merge tool
Type: boolean
Default:
config.programs.emacs.enable
Declared by:
<home-manager/modules/programs/jujutsu.nix>
|
programs.jujutsu.settings
Options to add to the config.toml
file. See
https://github.com/martinvonz/jj/blob/main/docs/config.md
for options.
Type: TOML value
Default:
{ }
Example:
{
user = {
email = "jdoe@example.org";
name = "John Doe";
};
}
Declared by:
<home-manager/modules/programs/jujutsu.nix>
|
programs.k9s.enable
Whether to enable k9s - Kubernetes CLI To Manage Your Clusters In Style.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.package
The k9s package to use.
Type: package
Default:
pkgs.k9s
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.aliases
Aliases written to $XDG_CONFIG_HOME/k9s/aliases.yaml
(linux)
or Library/Application Support/k9s/aliases.yaml
(darwin). See
https://k9scli.io/topics/aliases/ for supported values.
Type: YAML value
Default:
{ }
Example:
alias = {
# Use pp as an alias for Pod
pp = "v1/pods";
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.hotkey
Hotkeys written to $XDG_CONFIG_HOME/k9s/hotkeys.yaml
(linux)
or Library/Application Support/k9s/hotkeys.yaml
(darwin). See
https://k9scli.io/topics/hotkeys/ for supported values.
Type: YAML value
Default:
{ }
Example:
hotkey = {
# Make sure this is camel case
hotKey = {
shift-0 = {
shortCut = "Shift-0";
description = "Viewing pods";
command = "pods";
};
};
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.plugin
Plugins written to $XDG_CONFIG_HOME/k9s/plugins.yaml (linux)
or Library/Application Support/k9s/plugins.yaml
(darwin). See
https://k9scli.io/topics/plugins/ for supported values.
Type: YAML value
Default:
{ }
Example:
plugin = {
# Defines a plugin to provide a `ctrl-l` shortcut to
# tail the logs while in pod view.
fred = {
shortCut = "Ctrl-L";
description = "Pod logs";
scopes = [ "po" ];
command = "kubectl";
background = false;
args = [
"logs"
"-f"
"$NAME"
"-n"
"$NAMESPACE"
"--context"
"$CLUSTER"
];
};
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.settings
Configuration written to $XDG_CONFIG_HOME/k9s/config.yaml
(linux)
or Library/Application Support/k9s/config.yaml
(darwin), See
https://k9scli.io/topics/config/ for supported values.
Type: YAML value
Default:
{ }
Example:
k9s = {
refreshRate = 2;
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.skins
Skin files written to $XDG_CONFIG_HOME/k9s/skins/
(linux)
or Library/Application Support/k9s/skins/
(darwin). See
https://k9scli.io/topics/skins/ for supported values.
Type: attribute set of (YAML value)
Default:
{ }
Example:
my_blue_skin = {
k9s = {
body = {
fgColor = "dodgerblue";
};
};
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.k9s.views
Resource column views written to
$XDG_CONFIG_HOME/k9s/views.yaml (linux)
or Library/Application Support/k9s/views.yaml
(darwin).
See https://k9scli.io/topics/columns/ for supported values.
Type: YAML value
Default:
{ }
Example:
k9s = {
views = {
"v1/pods" = {
columns = [
"AGE"
"NAMESPACE"
"NAME"
"IP"
"NODE"
"STATUS"
"READY"
];
};
};
};
Declared by:
<home-manager/modules/programs/k9s.nix>
|
programs.kakoune.enable
Whether to enable the kakoune text editor.
Type: boolean
Default:
false
Example:
true
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.package
The kakoune-unwrapped package to use.
Type: package
Default:
pkgs.kakoune-unwrapped
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config
kakoune configuration options.
Type: null or (submodule)
Default:
{ }
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.alignWithTabs
Use tabs for the align command.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.autoComplete
Modes in which to display possible completions.
The kakoune default is [ "insert" "prompt" ]
.
Type: null or (list of (one of “insert”, “prompt”))
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.autoInfo
Contexts in which to display automatic information box.
The kakoune default is [ "command" "onkey" ]
.
Type: null or (list of (one of “command”, “onkey”, “normal”))
Default:
null
Example:
[
"command"
"normal"
]
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.autoReload
Reload buffers when an external modification is detected.
The kakoune default is "ask"
.
Type: null or one of “yes”, “no”, “ask”
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.colorScheme
Set the color scheme. To see available schemes, enter colorscheme at the kakoune prompt.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks
Global hooks. For documentation, see https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc.
Type: list of (submodule)
Default:
[ ]
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks.*.commands
Commands to run when the hook is activated.
Type: strings concatenated with “\n”
Default:
""
Example:
"set-option window indentwidth 2"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks.*.group
Add the hook to the named group.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks.*.name
The name of the hook. For a description, see https://github.com/mawww/kakoune/blob/master/doc/pages/hooks.asciidoc#default-hooks.
Type: one of “NormalIdle”, “NormalKey”, “InsertIdle”, “InsertKey”, “InsertChar”, “InsertDelete”, “InsertMove”, “WinCreate”, “WinClose”, “WinResize”, “WinDisplay”, “WinSetOption”, “BufSetOption”, “BufNewFile”, “BufOpenFile”, “BufCreate”, “BufWritePre”, “BufWritePost”, “BufReload”, “BufClose”, “BufOpenFifo”, “BufReadFifo”, “BufCloseFifo”, “RuntimeError”, “ModeChange”, “PromptIdle”, “GlobalSetOption”, “KakBegin”, “KakEnd”, “FocusIn”, “FocusOut”, “RawKey”, “InsertCompletionShow”, “InsertCompletionHide”, “ModuleLoaded”, “ClientCreate”, “ClientClose”, “RegisterModified”, “User”
Example:
"SetOption"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks.*.once
Remove the hook after running it once.
Type: boolean
Default:
false
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.hooks.*.option
Additional option to pass to the hook.
Type: null or string
Default:
null
Example:
"filetype=latex"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.incrementalSearch
Execute a search as it is being typed.
Type: boolean
Default:
true
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.indentWidth
The width of an indentation in spaces.
The kakoune default is 4
.
If 0
, a tab will be used instead.
Type: null or (unsigned integer, meaning >=0)
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.keyMappings
User-defined key mappings. For documentation, see https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc.
Type: list of (submodule)
Default:
[ ]
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.keyMappings.*.docstring
Optional documentation text to display in info boxes.
Type: null or string
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.keyMappings.*.effect
The sequence of keys to be mapped.
Type: string
Example:
":wq<ret>"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.keyMappings.*.key
The key to be mapped. See https://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc#mappable-keys for possible values.
Type: string
Example:
"<a-x>"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.keyMappings.*.mode
The mode in which the mapping takes effect.
Type: string
Example:
"user"
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.numberLines
Settings for the number lines highlighter.
Type: null or (submodule)
Default:
null
Declared by:
<home-manager/modules/programs/kakoune.nix>
|
programs.kakoune.config.numberLines.enable
Whether to enable the number lines highlighter.