Movatterモバイル変換


[0]ホーム

URL:


Appendix A. Home Manager Configuration Options
Prev   Next

Appendix A. Home Manager Configuration Options

_module.args

Additional arguments passed to each module in addition to oneslikelib,config,andpkgs,modulesPath.

This option is also available to all submodules. Submodules do notinherit args from their parent module, nor do they provide args totheir parent module or sibling submodules. The sole exception tothis is the argumentname which is provided byparent modules to a submodule and contains the attribute namethe submodule is bound to, or a unique generated name if it isnot bound to an attribute.

Some arguments are already passed by default, of which thefollowingcannot 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: ThespecialArgs argument passed toevalModules.

  • All attributes ofspecialArgs

    Whereas option values can generally depend on other option valuesthanks to laziness, this does not apply toimports, whichmust be computed statically before anything else.

    For this reason, callers of the module system can providespecialArgswhich are available during import resolution.

    For NixOS,specialArgs includesmodulesPath, which allows you to importextra modules from the nixpkgs package tree without having tosomehow make the module aware of the location of thenixpkgs 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 tothenixpkgs.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/thunderbird.nix>
<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 theparticipation 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 whentype 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 theattribute name of the calendar configuration.

Type:string(read only)

Declared by:

<home-manager/modules/accounts/calendar.nix>
accounts.calendar.accounts.<name>.pimsync.enable

Whether to enable synchronization using pimsync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/accounts/calendar.nix>
accounts.calendar.accounts.<name>.pimsync.extraLocalStorageDirectives

Extra directives that should be added under this accounts local storage directive

Type:anything

Default:[ ]

Declared by:

<home-manager/modules/accounts/calendar.nix>
accounts.calendar.accounts.<name>.pimsync.extraPairDirectives

Extra directives that should be added under this accounts pair directive

Type:anything

Default:[ ]

Example:

[  {    name = "collections";    params = [      "all"    ];  }]

Declared by:

<home-manager/modules/accounts/calendar.nix>
accounts.calendar.accounts.<name>.pimsync.extraRemoteStorageDirectives

Extra directives that should be added under this accounts remote storage directive

Type:anything

Default:[ ]

Example:

[  {    name = "interval";    params = [      60    ];  }]

Declared by:

<home-manager/modules/accounts/calendar.nix>
accounts.calendar.accounts.<name>.primary

Whether this is the primary account. Only one account may beset 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 anaccount 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>.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.calendar.accounts.<name>.thunderbird.color

Display color of the calendar in hex

Type:string

Default:""

Example:"#dc8add"

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.calendar.accounts.<name>.thunderbird.profiles

List of Thunderbird profiles for which this account should beenabled. If this list is empty (the default), this account willbe enabled for all declared profiles.

Type:list of string

Default:[ ]

Example:

[ "profile1" "profile2" ]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.calendar.accounts.<name>.thunderbird.readOnly

Mark calendar as read only

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/thunderbird.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 isbasic.

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 andthe 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 standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor 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 standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor 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. Eitherremote wins orlocal wins ora list that contains a command to run. By default, an errormessage 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 resultsare 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 vdirsyncermetasync 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 directionis impossible due to one storage being read-only.Defaults torevert.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#pair-sectionfor 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/updatedfile.

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 Pythonexpression that returns adatetime.datetimeobject.

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 tovdirsyncer.

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 absolute 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.

Seehttps://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorialfor 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 arelative path, in which case it is relative the homedirectory.

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/thunderbird.nix>
<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 theparticipation 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.addressbooks

If provided, each item on this list will generate anentry on khard configuration file as a separate addressbook(vdir).

This is used for hardcoding sub-directories under the localstorage path(accounts.contact.accounts.<name>.local.path) for khard. Thedefault value will set the aforementioned path as a single vdir.

Type:(list of string) or string convertible to it

Default:

[  ""]

Declared by:

<home-manager/modules/programs/khard.nix>
accounts.contact.accounts.<name>.khard.glob

The glob expansion to be searched for contacts whentype is set to discover.

Type:string

Default:"*"

Declared by:

<home-manager/modules/programs/khard.nix>
accounts.contact.accounts.<name>.khard.type

Either a single vdir located inaccounts.contact.accounts.<name>.local.pathor multiple automatically discovered vdirs inaccounts.contact.accounts.<name>.local.path/accounts.contact.accounts.<name>.khard.glob.

Type:one of “vdir”, “discover”

Default:"vdir"

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:".vcf"

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”

Default:"filesystem"

Declared by:

<home-manager/modules/accounts/contacts.nix>
accounts.contact.accounts.<name>.name

Unique identifier of the contact account. This is set to theattribute name of the contact configuration.

Type:string(read only)

Declared by:

<home-manager/modules/accounts/contacts.nix>
accounts.contact.accounts.<name>.pimsync.enable

Whether to enable synchronization using pimsync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/accounts/contacts.nix>
accounts.contact.accounts.<name>.pimsync.extraLocalStorageDirectives

Extra directives that should be added under this accounts local storage directive

Type:anything

Default:[ ]

Declared by:

<home-manager/modules/accounts/contacts.nix>
accounts.contact.accounts.<name>.pimsync.extraPairDirectives

Extra directives that should be added under this accounts pair directive

Type:anything

Default:[ ]

Example:

[  {    name = "collections";    params = [      "all"    ];  }]

Declared by:

<home-manager/modules/accounts/contacts.nix>
accounts.contact.accounts.<name>.pimsync.extraRemoteStorageDirectives

Extra directives that should be added under this accounts remote storage directive

Type:anything

Default:[ ]

Example:

[  {    name = "interval";    params = [      60    ];  }]

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>.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.contact.accounts.<name>.thunderbird.profiles

List of Thunderbird profiles for which this account should beenabled. If this list is empty (the default), this account willbe enabled for all declared profiles.

Type:list of string

Default:[ ]

Example:

[ "profile1" "profile2" ]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.contact.accounts.<name>.thunderbird.token

A token is generated when adding an address book manually to Thunderbird, this can be entered here.

Type:null or string

Default:null

Example:"secret_token"

Declared by:

<home-manager/modules/programs/thunderbird.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 isbasic.

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 andthe 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 standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor 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 standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor 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. Eitherremote wins orlocal wins ora list that contains a command to run. By default, an errormessage 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 resultsare 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 vdirsyncermetasync 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 directionis impossible due to one storage being read-only.Defaults torevert.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#pair-sectionfor 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/updatedfile.

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 Pythonexpression that returns adatetime.datetimeobject.

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 tovdirsyncer.

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 absolute 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.

Seehttps://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorialfor 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 arelative path, in which case it is relative the homedirectory.

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:

<home-manager/modules/programs/thunderbird.nix>
<home-manager/modules/programs/offlineimap>
<home-manager/modules/programs/notmuch>
<home-manager/modules/programs/neomutt>
<home-manager/modules/programs/mujmap.nix>
<home-manager/modules/programs/mu.nix>
<home-manager/modules/programs/msmtp>
<home-manager/modules/programs/meli.nix>
<home-manager/modules/programs/mbsync>
<home-manager/modules/programs/lieer.nix>
<home-manager/modules/programs/himalaya.nix>
<home-manager/modules/programs/getmail>
<home-manager/modules/programs/astroid>
<home-manager/modules/programs/alot>
<home-manager/modules/programs/aerc>
<home-manager/modules/services/imapnotify>
<home-manager/modules/accounts/email.nix>
accounts.email.accounts.<name>.enable

Whether this account is enabled. Potentially useful to allowsetting email configuration globally then enabling or disabling onspecific systems.

Type:boolean

Default:true

Declared by:

<home-manager/modules/accounts/email.nix>
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>
accounts.email.accounts.<name>.aerc.extraAccounts

Extra config added to the configuration section for this account in$HOME/.config/aerc/accounts.conf.Seeaerc-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>
accounts.email.accounts.<name>.aerc.extraBinds

Extra bindings specific to this account, added to$HOME/.config/aerc/binds.conf.Seeaerc-binds(5).

Type:attribute set of (strings concatenated with “\n” or 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>
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,useprograms.aerc.extraConfig.Seeaerc-config(5).

Type:attribute set of (strings concatenated with “\n” or 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>
accounts.email.accounts.<name>.aerc.imapAuth

Sets the authentication mechanism if imap is used as the incomingmethod.Seeaerc-imap(5).

Type:null or one of “oauthbearer”, “xoauth2”

Default:null

Example:"auth"

Declared by:

<home-manager/modules/programs/aerc>
accounts.email.accounts.<name>.aerc.imapOauth2Params

Sets the oauth2 params if authentication mechanism oauthbearer orxoauth2 is used.Seeaerc-imap(5).

Type:null or (submodule)

Default:null

Example:

{  token_endpoint = "<token_endpoint>";}

Declared by:

<home-manager/modules/programs/aerc>
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>
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>
accounts.email.accounts.<name>.aerc.imapOauth2Params.scope

The OAuth2 requested scope.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/aerc>
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>
accounts.email.accounts.<name>.aerc.smtpAuth

Sets the authentication mechanism if smtp is used as the outgoingmethod.Seeaerc-smtp(5).

Type:null or one of “none”, “plain”, “login”, “oauthbearer”, “xoauth2”

Default:"plain"

Example:"auth"

Declared by:

<home-manager/modules/programs/aerc>
accounts.email.accounts.<name>.aerc.smtpOauth2Params

Sets the oauth2 params if authentication mechanism oauthbearer orxoauth2 is used.Seeaerc-imap(5).

Type:null or (submodule)

Default:null

Example:

{  token_endpoint = "<token_endpoint>";}

Declared by:

<home-manager/modules/programs/aerc>
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>
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>
accounts.email.accounts.<name>.aerc.smtpOauth2Params.scope

The OAuth2 requested scope.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/aerc>
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>
accounts.email.accounts.<name>.aliases

Alternative identities of this account.

Type:list of (string matching the pattern .*@.* or (submodule))

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.Seealot’s wiki forexplanation about possible values.

Type:attribute set of string

Default:

{  type = "shellcommand";  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";}

Example:

{  type = "shellcommand";  command = "abook --mutt-query";  regexp = "'^(?P<email>[^@]+@[^\t]+)\t+(?P<name>[^\t]+)'";  ignorecase = "True";}

Declared by:

<home-manager/modules/programs/alot>
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>
accounts.email.accounts.<name>.alot.sendMailCommand

Command to send a mail. If msmtp is enabled for the account,then this is set tomsmtpq --read-envelope-from --read-recipients.

Type:null or string

Declared by:

<home-manager/modules/programs/alot>
accounts.email.accounts.<name>.astroid.enable

Whether to enable Astroid.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/astroid>
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>
accounts.email.accounts.<name>.astroid.sendMailCommand

Command to send a mail. If msmtp is enabled for the account,then this is set tomsmtpq --read-envelope-from --read-recipients.

Type:string

Declared by:

<home-manager/modules/programs/astroid>
accounts.email.accounts.<name>.flavor

Some email providers have peculiar behavior that requirespecial treatment. This option is therefore intended toindicate the nature of the provider.

When this indicates a specific provider then, for example,the IMAP, SMTP, and JMAP server configuration may be setautomatically.

Type:one of “davmail”, “fastmail.com”, “gmail.com”, “migadu.com”, “outlook.office365.com”, “plain”, “runbox.com”, “yandex.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>
accounts.email.accounts.<name>.getmail.delete

Enable if you want to delete read messages from the server. Mostusers should either enabledelete or disablereadAll.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/getmail>
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>
accounts.email.accounts.<name>.getmail.mailboxes

A non-empty list of mailboxes. To download all mail you canuse theALL mailbox.

Type:non-empty (list of string)

Default:[ ]

Example:

[  "INBOX"  "INBOX.spam"]

Declared by:

<home-manager/modules/programs/getmail>
accounts.email.accounts.<name>.getmail.readAll

Enable if you want to fetch all, even the read messages from theserver. Most users should either enabledelete ordisablereadAll.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/getmail>
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 ingpg --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.Seehttps://github.com/pimalaya/himalaya/blob/master/config.sample.toml for supported values.

Type:open submodule of (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.authentication

The authentication mechanism.

Type:null or string or one of “anonymous”, “apop”, “clear”, “cram_md5”, “digest_md5”, “gssapi”, “login”, “ntlm”, “plain”, “xoauth2”

Default:null

Example:"plain"

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. Ifnull 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 shouldbe used to validate the connection authenticity. Ifnull then the system default is used.Note, if set then the system default may still be accepted.

Type:null or absolute 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>
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>
accounts.email.accounts.<name>.imapnotify.extraArgs

Extra arguments to pass to goimapnotify.

Type:list of string

Default:[ ]

Example:

[  "-wait 1"]

Declared by:

<home-manager/modules/services/imapnotify>
accounts.email.accounts.<name>.imapnotify.extraConfig

Additional configuration to add for this account.

Type:JSON value

Default:{ }

Declared by:

<home-manager/modules/services/imapnotify>
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>
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>
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 andaccounts.email.accounts.<name>.jmap.sessionUrl are specified,host is preferred by applications when establishing asession.

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 andaccounts.email.accounts.<name>.jmap.host are specified,host is preferred by applications when establishing asession.

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 ifnotmuch inithas been used to configure this account outside of HomeManager.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/lieer.nix>
accounts.email.accounts.<name>.lieer.settings

Settings which are applied to.gmailieer.jsonfor the account.

See thelieer manualfor documentation of settings not explicitly covered by this module.

Type:open submodule of (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 usefulfor 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 historyis sometimes returned.

See thisGitHub issuefor 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 tolocal 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 toremote 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 theonCalendar option. Seesystemd.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 isstored. 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>
accounts.email.accounts.<name>.mbsync.create

Automatically create missing mailboxes within thegiven mail store.

Type:one of “none”, “maildir”, “imap”, “both”

Default:"none"

Example:"maildir"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.expunge

Permanently remove messages marked for deletion fromthe given mail store.

Type:one of “none”, “maildir”, “imap”, “both”

Default:"none"

Example:"both"

Declared by:

<home-manager/modules/programs/mbsync>
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:

{  TLSType = "IMAP";  TLSVersions = [ "+1.3" "+1.2" "-1.1" ];  PipelineDepth = 10;  Timeout = 60;};

Declared by:

<home-manager/modules/programs/mbsync>
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>
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>
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>
accounts.email.accounts.<name>.mbsync.flatten

If set, flattens the hierarchy within the maildir bysubstituting the canonical hierarchy delimiter/ with this value.

Type:null or string

Default:null

Example:"."

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups

Some email providers (Gmail) have a different directory hierarchy forsynchronized email messages. Namely, when using mbsync without specifyinga set of channels into a group, all synchronized directories end up beneaththe[Gmail]/ directory.

This option allows you to specify a group, and subsequently channels thatwill allow you to sync your mail into an arbitrary hierarchy.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels

List of channels that should be grouped together into this group. Whenperforming a synchronization, the groups are synchronized, rather thanthe individual channels.

Using these channels and then grouping them together allows for you todefine the maildir hierarchy as you see fit.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.extraConfig

Extra configuration lines to add toTHIS channel’sconfiguration.

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>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.farPattern

IMAP4 patterns for which mailboxes on the remote mail server to sync.IfPatterns are specified,farPatternis 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 patternINBOX.

Type:string

Default:""

Example:"[Gmail]/Sent Mail"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.name

The unique name for THIS channel in THIS group. The group will refer tothis channel by this name.

In addition, you can manually sync just this channel by specifying thisname to mbsync on the command line.

Type:string(read only)

Default:"‹name›"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.nearPattern

Name for where mail coming from the remote (far) mail server will end uplocally. The mailbox specified by the far pattern will be placed inthis directory.

If this is left as the default, then mbsync will default to the patternINBOX.

Type:string

Default:""

Example:"Sent"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.channels.<name>.patterns

Instead of synchronizingjust the mailboxes thatmatch thefarPattern, use it as a prefix which isnot matched against the patterns, and is not affected by mailbox listoverrides.

Type:list of string

Default:[ ]

Example:

[  "INBOX"]

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.groups.<name>.name

The name of this group for this account. These names are different thansome others, because they will hide channel names that are the same.

Type:string(read only)

Default:"‹name›"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.mbsync.patterns

Pattern of mailboxes to synchronize.

Type:list of string

Default:

[  "*"]

Declared by:

<home-manager/modules/programs/mbsync>
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>
accounts.email.accounts.<name>.mbsync.subFolders

The on-disk folder naming style. This option has noeffect whenflatten is used.

Type:one of “Verbatim”, “Maildir++”, “Legacy”

Default:"Verbatim"

Example:"Maildir++"

Declared by:

<home-manager/modules/programs/mbsync>
accounts.email.accounts.<name>.meli.enable

Whether to enable the meli mail client for this account.Requires SMTP settings…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/meli.nix>
accounts.email.accounts.<name>.meli.mailboxAliases

Folder display name

Type:attribute set of (attribute set)

Default:{ }

Example:

{  INBOX = {    alias = "📥 Inbox";  };  Sent = {    alias = "📤 Sent";  };}

Declared by:

<home-manager/modules/programs/meli.nix>
accounts.email.accounts.<name>.meli.mailboxes

Mailboxes to show in meli

Type:list of string

Default:

[  "Inbox"  "Sent"  "Trash"  "Drafts"]

Example:

[  "INBOX"  "Sent"  "Trash"  "Drafts"]

Declared by:

<home-manager/modules/programs/meli.nix>
accounts.email.accounts.<name>.msmtp.enable

Whether to enable msmtp.

If enabled then it is possible to use the--account command lineoption to send a message for a given account using themsmtp ormsmtpq tool.For example,msmtp --account=private wouldsend using the account defined inaccounts.email.accounts.private. If the--account option is notgiven then the primary account will be used.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/msmtp>
accounts.email.accounts.<name>.msmtp.extraConfig

Extra configuration options to add to~/.msmtprc.Seehttps://marlam.de/msmtp/msmtprc.txt forexamples.

Type:attribute set of string

Default:{ }

Example:

{  auth = "login";}

Declared by:

<home-manager/modules/programs/msmtp>
accounts.email.accounts.<name>.msmtp.tls.fingerprint

Fingerprint of a trusted TLS certificate.The fingerprint can be obtained by executingmsmtp --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>
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 ifmujmap.toml is managedoutside 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 tomujmap.tomlfor the account.

See themujmap projectfor documentation of settings not explicitly covered by this module.

Type:open submodule of (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 notmuchtags.

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 beingdownloaded. 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 sessionURL. Mutually exclusive withaccounts.email.accounts.<name>.mujmap.settings.session_url.

Ifnull, defaults toaccounts.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 HTTPauthentication.

Ifnull, defaults toaccounts.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 withaccounts.email.accounts.<name>.mujmap.settings.fqdn.

Ifnull, defaults toaccounts.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 thevalues of these files; please seehttps://github.com/elizagamedev/mujmap/blob/main/mujmap.toml.examplefor more details.

Type:open submodule of (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 theTrash name attribute.

If set to an empty string, this mailboxand its childmailboxes 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 theImportant name attribute and/or with the$Importantkeyword.

If set to an empty string, this mailbox,its childmailboxes, 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 theInbox name attribute.

If set to an empty string, this mailboxand its childmailboxes 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 notmuchtags.

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 theSent name attribute.

If set to an empty string, this mailboxand its childmailboxes 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 theJunk name attribute and/or with the$Junk keyword,except for messages with the$NotJunk keyword.

If set to an empty string, this mailbox,its childmailboxes, 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.

Ifnull, defaults toaccounts.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 theattribute 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>
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>
accounts.email.accounts.<name>.neomutt.extraMailboxes

List of extra mailboxes

Type:list of (string or (submodule))

Default:[ ]

Declared by:

<home-manager/modules/programs/neomutt>
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>
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>
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>
accounts.email.accounts.<name>.neomutt.showDefaultMailbox

Show the default mailbox (INBOX)

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/neomutt>
accounts.email.accounts.<name>.notmuch.enable

Whether to enable notmuch indexing.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/notmuch>
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>
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>
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>
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>
accounts.email.accounts.<name>.offlineimap.extraConfig.local

Extra configuration options to add to the local accountsection.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  sync_deletes = true;}

Declared by:

<home-manager/modules/programs/offlineimap>
accounts.email.accounts.<name>.offlineimap.extraConfig.remote

Extra configuration options to add to the remote accountsection.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  expunge = false;  maxconnections = 2;}

Declared by:

<home-manager/modules/programs/offlineimap>
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>
accounts.email.accounts.<name>.passwordCommand

A command, which when run writes the account password onstandard 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 beset 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 absolute 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.authentication

The authentication mechanism.

Type:null or string or one of “anonymous”, “apop”, “clear”, “cram_md5”, “digest_md5”, “gssapi”, “login”, “ntlm”, “plain”, “xoauth2”

Default:null

Example:"plain"

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. Ifnull 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 shouldbe used to validate the connection authenticity. Ifnull then the system default is used.Note, if set then the system default may still be accepted.

Type:null or absolute 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.messageFilters

List of message filters to add to this Thunderbird accountconfiguration.

Type:list of (submodule)

Default:[ ]

Example:

[  {    name = "Mark as Read on Archive";    enabled = true;    type = "128";    action = "Mark read";    condition = "ALL";  }]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.enabled

Whether this filter is currently active.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.action

Action to perform on matched messages.

Type:string

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.actionValue

Argument passed to the filter action, e.g. a folder path.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.condition

Condition to match messages against.

Type:string

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.extraConfig

Extra settings to apply to the filter

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.name

Name for the filter.

Type:string

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.text

The raw text of the filter.Note that this will override all other options.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.messageFilters.*.type

Type for this filter.

Type:string

Declared by:

<home-manager/modules/programs/thunderbird.nix>
accounts.email.accounts.<name>.thunderbird.perIdentitySettings

Extra settings to add to each identity of this Thunderbirdaccount configuration. Theid given asargument 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 beenabled. If this list is empty (the default), this account willbe 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.Theid given as argument is an automaticallygenerated 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 asthe 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 thatshould be used to validate the connection authenticity. Thispath may be overridden on a per-account basis.

Type:null or absolute 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 arelative path (e.g. the user setting this value as “MyMaildir”),in which case it is relative the home directory (e.g. resultingin “~/MyMaildir”).

Type:string

Default:"Maildir"

Declared by:

<home-manager/modules/accounts/email.nix>
dbus.packages

Packages whose D-Bus configuration files should be included inthe configuration of the D-Bus session-wide message bus. Specifically,files in «pkg»/share/dbus-1/services will be included in the user’s$XDG_DATA_HOME/dbus-1/services directory.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/dbus.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 typesas described in the GSettings schema. For example, if an option is of typeuint32 (u), you need to wrap the numberusing thelib.hm.gvariant.mkUint32 constructor.Otherwise, since Nix integers are implicitly coerced toint32(i), it would get stored in the database as such, and GSettingsmight be confused when loading the setting.

You might want to usedconf2nixto 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.Seehttps://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, forexample, allow fontconfig to discover fonts andconfigurations installed throughhome.packages andnix-env.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.antialiasing

Whether to enable font antialiasing.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile

Extra font config files that will be added to~/.config/fontconfig/conf.d/.Files are named likefontconfig/conf.d/{priority}-{label}.conf.

Type:attribute set of (submodule)

Default:{ }

Example:

{  commit-mono-options = {    enable = true;    priority = 80;    source = "./resources/fontconfig/commit-mono.conf";  };  tamzen = {    enable = true;    label = "tamzen-disable-antialiasing";    priority = 90;    text = ''      <?xml version="1.0"?>      <!DOCTYPE fontconfig SYSTEM "fonts.dtd">            <fontconfig>        <description>Disable anti-aliasing for Tamzen since it is a bitmap font</description>        <match target="pattern">          <test name="family" compare="eq" qual="any">            <string>Tamzen</string>          </test>          <edit name="antialias" mode="assign">            <bool>false</bool>          </edit>        </match>      </fontconfig>    '';  };}

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile.<name>.enable

Whether to enable Whether this font config file should be generated…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile.<name>.label

Label to use for the name of the config file.

Type:string

Default:"<name>"

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile.<name>.priority

Determines the order in which configs are loaded.Must be a value within the range of 0-99, where priority 0 is the highest priority and 99 is the lowest.

Type:integer between 0 and 99 (both inclusive)

Default:90

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile.<name>.source

Config file to source. Alternatively, use the ‘text’ option instead.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.configFile.<name>.text

Verbatim contents of the config file. If this option is null then the ‘source’ option must be set.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.defaultFonts.emoji

Per-user default emoji font(s). Multiple fonts may be listed incase 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 havinga color font installed (eg. Noto Color Emoji installed alongsideNoto Emoji), fontconfig will still choose the color font evenwhen 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 incase 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 listedin 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 incase multiple languages must be supported.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.hinting

The font hinting mode.

Type:null or one of “none”, “slight”, “medium”, “full”

Default:null

Example:"slight"

Declared by:

<home-manager/modules/misc/fontconfig.nix>
fonts.fontconfig.subpixelRendering

The sub-pixel rendering mode.

Type:null or one of “none”, “rgb”, “bgr”, “vertical-rgb”, “vertical-bgr”

Default:null

Example:"rgb"

Declared by:

<home-manager/modules/misc/fontconfig.nix>
gtk.enable

Whether to enable GTK theming and configuration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/gtk.nix>
gtk.colorScheme

Default color scheme for all GTK versions

Type:null or one of “dark”, “light”

Default:null

Declared by:

<home-manager/modules/misc/gtk.nix>
gtk.cursorTheme

Default cursor theme for all GTK versions.

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 installedto your profile. Ifnull then the cursor themeis 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

Default font for all GTK versions.

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 installedto your profile. Ifnull then the fontis 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.enable

Whether to enable GTK 2 configuration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.configLocation

The location of the GTK 2 configuration file.

Type:absolute path

Default:"${config.home.homeDirectory}/.gtkrc-2.0"

Example:"${config.xdg.configHome}/gtk-2.0/gtkrc"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.cursorTheme

Cursor theme for GTK 2 applications.

Type:null or (submodule)

Default:config.gtk.cursorTheme

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.cursorTheme.package

Package providing the cursor theme. This package will be installedto your profile. Ifnull then the cursor themeis 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/gtk2.nix>
gtk.gtk2.cursorTheme.name

The name of the cursor theme within the package.

Type:string

Example:"Vanilla-DMZ"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.cursorTheme.size

The size of the cursor.

Type:null or signed integer

Default:null

Example:16

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.extraConfig

Extra lines to add to~/.gtkrc-2.0.

Type:strings concatenated with “\n”

Default:""

Example:"gtk-can-change-accels = 1"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.font

Font for GTK 2 applications.

Type:null or (submodule)

Default:config.gtk.font

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.font.package

Package providing the font. This package will be installedto your profile. Ifnull then the fontis 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/gtk2.nix>
gtk.gtk2.font.name

The family name of the font within the package.

Type:string

Example:"DejaVu Sans"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.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/gtk2.nix>
gtk.gtk2.force

Whether to enable GTK 2 config force overwrite without creating a backup.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.iconTheme

Icon theme for GTK 2 applications.

Type:null or (submodule)

Default:config.gtk.iconTheme

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.iconTheme.package

Package providing the icon theme. This package will be installedto your profile. Ifnull then the icon themeis assumed to already be available in your profile.

Type:null or package

Default:null

Example:pkgs.adwaita-icon-theme

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.iconTheme.name

The name of the icon theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.theme

Theme for GTK 2 applications.

Type:null or (submodule)

Default:config.gtk.theme

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk2.theme.package

Package providing the theme. This package will be installedto your profile. Ifnull then the themeis 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/gtk2.nix>
gtk.gtk2.theme.name

The name of the theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk2.nix>
gtk.gtk3.enable

Whether to enable GTK 3 configuration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.bookmarks

File browser bookmarks.

Type:list of string

Default:[ ]

Example:

[  "file:///home/jane/Documents"]

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.colorScheme

Color scheme for GTK 3 applications.

Type:null or one of “dark”, “light”

Default:config.gtk.colorScheme

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.cursorTheme

Cursor theme for GTK 3 applications.

Type:null or (submodule)

Default:config.gtk.cursorTheme

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.cursorTheme.package

Package providing the cursor theme. This package will be installedto your profile. Ifnull then the cursor themeis 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/gtk3.nix>
gtk.gtk3.cursorTheme.name

The name of the cursor theme within the package.

Type:string

Example:"Vanilla-DMZ"

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.cursorTheme.size

The size of the cursor.

Type:null or signed integer

Default:null

Example:16

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.extraConfig

Extra settings for$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/gtk3.nix>
gtk.gtk3.extraCss

Extra CSS for$XDG_CONFIG_HOME/gtk-3.0/gtk.css.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.font

Font for GTK 3 applications.

Type:null or (submodule)

Default:config.gtk.font

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.font.package

Package providing the font. This package will be installedto your profile. Ifnull then the fontis 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/gtk3.nix>
gtk.gtk3.font.name

The family name of the font within the package.

Type:string

Example:"DejaVu Sans"

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.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/gtk3.nix>
gtk.gtk3.iconTheme

Icon theme for GTK 3 applications.

Type:null or (submodule)

Default:config.gtk.iconTheme

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.iconTheme.package

Package providing the icon theme. This package will be installedto your profile. Ifnull then the icon themeis assumed to already be available in your profile.

Type:null or package

Default:null

Example:pkgs.adwaita-icon-theme

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.iconTheme.name

The name of the icon theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.theme

Theme for GTK 3 applications.

Type:null or (submodule)

Default:config.gtk.theme

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk3.theme.package

Package providing the theme. This package will be installedto your profile. Ifnull then the themeis 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/gtk3.nix>
gtk.gtk3.theme.name

The name of the theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk3.nix>
gtk.gtk4.enable

Whether to enable GTK 4 configuration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.colorScheme

Color scheme for GTK 4 applications.

Type:null or one of “dark”, “light”

Default:config.gtk.colorScheme

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.cursorTheme

Cursor theme for GTK 4 applications.

Type:null or (submodule)

Default:config.gtk.cursorTheme

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.cursorTheme.package

Package providing the cursor theme. This package will be installedto your profile. Ifnull then the cursor themeis 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/gtk4.nix>
gtk.gtk4.cursorTheme.name

The name of the cursor theme within the package.

Type:string

Example:"Vanilla-DMZ"

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.cursorTheme.size

The size of the cursor.

Type:null or signed integer

Default:null

Example:16

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.extraConfig

Extra settings for$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/gtk4.nix>
gtk.gtk4.extraCss

Extra CSS for$XDG_CONFIG_HOME/gtk-4.0/gtk.css.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.font

Font for GTK 4 applications.

Type:null or (submodule)

Default:config.gtk.font

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.font.package

Package providing the font. This package will be installedto your profile. Ifnull then the fontis 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/gtk4.nix>
gtk.gtk4.font.name

The family name of the font within the package.

Type:string

Example:"DejaVu Sans"

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.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/gtk4.nix>
gtk.gtk4.iconTheme

Icon theme for GTK 4 applications.

Type:null or (submodule)

Default:config.gtk.iconTheme

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.iconTheme.package

Package providing the icon theme. This package will be installedto your profile. Ifnull then the icon themeis assumed to already be available in your profile.

Type:null or package

Default:null

Example:pkgs.adwaita-icon-theme

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.iconTheme.name

The name of the icon theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.theme

Theme for GTK 4 applications.

Type:null or (submodule)

Default:config.gtk.theme

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.gtk4.theme.package

Package providing the theme. This package will be installedto your profile. Ifnull then the themeis 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/gtk4.nix>
gtk.gtk4.theme.name

The name of the theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/misc/gtk/gtk4.nix>
gtk.iconTheme

Default icon theme for all GTK versions.

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 installedto your profile. Ifnull then the icon themeis assumed to already be available in your profile.

Type:null or package

Default:null

Example:pkgs.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

Default theme for all GTK versions.

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 installedto your profile. Ifnull then the themeis 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 forgdb in thedebug output.This option ensures that those are automatically fetched fromthe binary cache if available andgdb isconfigured 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 HomeManager and Nixpkgs. Using mismatched versions is likely to cause errorsand unexpected behavior. It is therefore highly recommended to use arelease of Home Manager that corresponds with your chosen release ofNixpkgs.

When this option is enabled and a mismatch is detected then a warningwill 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 HomeManager generation. Any entry here should be idempotent,meaning running twice or more times produces the same resultas running it once.

If the script block produces any observable side effect, suchas writing or deleting files, then itmust be placed after the specialwriteBoundary script block. Prior to thewrite boundary one can place script blocks that verifies, butdoes not modify, the state of the system and exits if anunexpected state is found. For example, thecheckLinkTargets script block checks forcollisions between non-managed files and files defined inhome.file.

A script block should respect theDRY_RUN variable. If it is setthen the actions taken by the script should be logged to standard outand not actually performed. A convenient shell functionrunis provided for activation script blocks. It is used as follows:

run {command}

Runs the given command on live run, otherwise prints the command tostandard output.

run --quiet {command}

Runs the given command on live run and sends its standard output to/dev/null, otherwise prints the command to standard output.

run --silence {command}

Runs the given command on live run and sends its standard and erroroutput to/dev/null, otherwise prints the command to standardoutput.

The--quiet and--silence flags are mutually exclusive.

A script block should also respect theVERBOSE variable, and ifset print information on standard out that may be useful for debuggingany issue that may arise. The variableVERBOSE_ARG is set to--verbose if verbose output is enabled. You can also use theprovided shell functionverboseEcho, which acts asecho 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.checks

Packages that are added as dependencies of the home’s build, usuallyfor the purpose of validating some part of the configuration.

Unlikehome.extraDependencies, these store paths do notbecome part of the built home configuration.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/home-environment.nix>
home.extraDependencies

A list of paths that should be included in the homeclosure but generally not visible.

For built-time checks thehome.checks option is more appropriatefor that purpose as checks should not leave a trace in the builthome configuration.

Type:list of path in the Nix store

Default:[ ]

Declared by:

<home-manager/modules/home-environment.nix>
home.extraOutputsToInstall

List of additional package outputs of the packageshome.packages that should be installed intothe 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 specificfiles to be disabled.

Type:boolean

Default:true

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.executable

Set the execute bit. Ifnull, defaults to the modeof thesource file or tofalsefor files created through thetext option.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.force

Whether the target path should be unconditionally replacedby the managed file source. Warning, this will silentlydelete the target regardless of whether it is a file orlink.

Type:boolean

Default:false

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.ignorelinks

Whenrecursive is enabled, adds-ignorelinks flag to lndir

It causes lndir to not treat symbolic links in the source directory specially.The link created in the target directory will point back to the corresponding(symbolic link) file in the source directory. If the link is to a directory

Type:boolean

Default:false

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.onChange

Shell commands to run when file has changed betweengenerations. The script will be runafter the new files have been linkedinto place.

Note, this code is always run whenrecursive isenabled.

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 optiondetermines whether the directory should be recursivelylinked to the target location. This option has no effectif the source is a file.

Iffalse (the default) then the targetwill be a symbolic link to the source directory. Iftrue then the target will be adirectory structure matching the source’s but whose leafsare 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. Ifhome.file.<name>.textis non-null then this option will automatically point to a filecontaining that text.

Type:absolute path

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.target

Path to target file relative toHOME.

Type:string

Default:name

Declared by:

<home-manager/modules/files.nix>
home.file.<name>.text

Text of the file. If this option is null thenhome.file.<name>.sourcemust 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:absolute 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 tonull todisable 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. Ifnull, then the systemconfiguration will be used.

This defaults tonull for stateversion ≥ 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. Ifnull, then thesystem configuration will be used.

This defaults tonull for stateversion ≥ 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.

Top-level options declared under this submodule are backend independentoptions. Options declared under namespaces such asx11are backend specific options. By default, only backend independent cursorconfigurations are generated. If you need configurations for specificbackends, you can toggle them via the enable option. For example,home.pointerCursor.x11.enablewill 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 generatethe gtk cursor configuration, butgtk.enable needsto be set for it to be applied.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/config/home-cursor.nix>
home.pointerCursor.enable

Whether to enable cursor config generation.

Type:boolean

Default:false

Example:true

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.dotIcons.enable

Whether to enable.icons config generation forhome.pointerCursor.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/config/home-cursor.nix>
home.pointerCursor.gtk.enable

Whether to enable gtk config generation forhome.pointerCursor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/config/home-cursor.nix>
home.pointerCursor.hyprcursor.enable

Whether to enable hyprcursor config generation.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/config/home-cursor.nix>
home.pointerCursor.hyprcursor.size

The cursor size for hyprcursor.

Type:signed integer

Default:"config.home.pointerCursor.size"

Example:32

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.sway.enable

Whether to enable sway config generation forhome.pointerCursor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/config/home-cursor.nix>
home.pointerCursor.x11.enable

Whether to enable x11 config generation forhome.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:absolute 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 prepend toPATH.

These directories are added to thePATH variable in adouble-quoted context, so expressions like$HOME areexpanded by the shell. However, since expressions like~ or* are escaped, they will end up in thePATHverbatim.

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.sessionSearchVariables

Extra directories to prepend to arbitrary PATH-likeenvironment variables (e.g.:MANPATH). The valueswill be concatenated by:.These directories are added to the environment variable in adouble-quoted context, so expressions like$HOME areexpanded by the shell. However, since expressions like~ or* are escaped, they will end up in the environmentverbatim.

Type:attribute set of list of string

Default:{ }

Example:

{  MANPATH = [    "$HOME/.npm-packages/man"    "\${xdg.configHome}/.local/share/man"  ];}

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 usingPOSIX.2 style variable references. For example, a variableparameter may be referenced as$parameter or${parameter}. Adefault valuefoo may be given as per${parameter:-foo} and, similarly, an alternatevaluebar can be given as per${parameter:+bar}.

Note, these variables may be set in any order so no sessionvariable may have a runtime dependency on another sessionvariable. In particular code like

home.sessionVariables = {  FOO = "Hello";  BAR = "$FOO World!";};

may not work as expected. If you need to reference anothersession variable (even if it is declared by using other optionslikexdg.configHome), 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 absolute 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.shell.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableShellIntegration

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shell.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableShellIntegration

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shell.enableIonIntegration

Whether to enable Ion integration.

Type:boolean

Default:home.shell.enableShellIntegration

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shell.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableShellIntegration

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shell.enableShellIntegration

Whether to globally enable shell integration for all supported shells.

Individual shell integrations can be overridden with their respectiveshell.enable<SHELL>Integration option. For example, the followingdeclaration globally disables shell integration for Bash:

home.shell.enableBashIntegration = false;

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shell.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableShellIntegration

Example:false

Declared by:

<home-manager/modules/misc/shell.nix>
home.shellAliases

An attribute set that maps aliases (the top level attribute namesin this option) to command strings or directly to build outputs.

This option should only be used to manage simple aliases that arecompatible across all shells. If you need to use a shell specificfeature then make sure to use a shell specific option, for exampleprograms.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 changeconfiguration defaults in a way that is incompatible withstateful data. This could, for example, include switching thedefault data format or location of a file.

Thestate version indicates which defaultsettings are in effect and will therefore help avoid breakingprogram configurations. Switching to a higher state versiontypically requires performing some manual steps, such as dataconversion 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”, “25.05”, “25.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

CustomizedglibcLocales package providingtheLOCALE_ARCHIVE_* environment variable.

This option only applies to the Linux platform.

When Home Manager is configured with NixOS, the default valuewill be set toi18n.glibcLocales from thesystem configuration.

Type:absolute 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.enable

Whether to enable an additional input method type.

Type:boolean

Default:true if the deprecated optionenabled is set, false otherwise

Example:true

Declared by:

<home-manager/modules/i18n/input-method/default.nix>
i18n.inputMethod.enabled

Deprecated - usetype andenable = true instead

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.fcitx5.fcitx5-with-addons

The fcitx5 package to use.

Type:package

Default:<derivation fcitx5-with-addons-5.1.16>

Example:pkgs.kdePackages.fcitx5-with-addons

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.ignoreUserConfig

Ignore the user configures.Warning: When this is enabled, theuser config files are totally ignored and the user dict can’t be savedand loaded.

Type:boolean

Default:false

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.quickPhrase

Quick phrases.

Type:attribute set of string

Default:{ }

Example:

{  smile = "(・∀・)";  angry = "( ̄ー ̄)";}

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.quickPhraseFiles

Quick phrase files.

Type:attribute set of absolute path

Default:{ }

Example:

{  words = ./words.mb;  numbers = ./numbers.mb;}

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.settings.addons

The addon configures inconf folder in ini format with global sections.Each item is written to the corresponding file.

Type:attribute set of (submodule)

Default:{ }

Example:

{  classicui.globalSection.Theme = "example";  pinyin.globalSection.EmojiEnabled = "True";}

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.settings.addons.<name>.globalSection

global section of an INI file (attrs of INI atom (null, bool, int, float or string))

Type:section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.settings.addons.<name>.sections

attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.settings.globalOptions

The global options inconfig file in ini format.

Type:open submodule of attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Behavior = {    ActiveByDefault = false;  };  Hotkey = {    EnumerateWithTriggerKeys = true;    EnumerateSkipFirst = false;    ModifierOnlyKeyTimeout = 250;  };}

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.settings.inputMethod

The input method configure inprofile file in ini format.

Type:open submodule of attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  GroupOrder."0" = "Default";  "Groups/0" = {    Name = "Default";    "Default Layout" = "us";    DefaultIM = "pinyin";  };  "Groups/0/Items/0".Name = "keyboard-us";  "Groups/0/Items/1".Name = "pinyin";}

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.themes

Themes to be written to$XDG_DATA_HOME/fcitx5/themes/${name}

Type:lazy attribute set of (submodule)

Default:{ }

Example:""

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.themes.<name>.highlightImage

Path to the SVG of the highlight.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.themes.<name>.panelImage

Path to the SVG of the panel.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.themes.<name>.theme

Thetheme.conf file of the theme.

See https://fcitx-im.org/wiki/Fcitx_5_Theme#Background_imagesfor more information.

Type:null or (attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))) or strings concatenated with “\n” or absolute path

Default:null

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.fcitx5.waylandFrontend

Use the Wayland input method frontend.SeeUsing Fcitx 5 on Wayland.

Type:boolean

Default:false

Declared by:

<home-manager/modules/i18n/input-method/fcitx5.nix>
i18n.inputMethod.kime.extraConfig

kime configuration. Refer tohttps://github.com/Riey/kime/blob/develop/docs/CONFIGURATION.mdfor details on supported values.

Type:strings concatenated with “\n”

Default:""

Example:

daemon:  modules: [Xim,Indicator]indicator:  icon_color: Whiteengine:  hangul:    layout: dubeolsik

Declared by:

<home-manager/modules/i18n/input-method/kime.nix>
i18n.inputMethod.type

Select the enabled input method. Input methods are software to inputsymbols that are not available on standard input devices.

Input methods are especially used to input Chinese, Japanese andKorean 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 usingi18n.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:The value of the deprecated optionenabled, defaulting to null

Example:"fcitx5"

Declared by:

<home-manager/modules/i18n/input-method/default.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 useof 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. Seelaunchd.plist(5) for details.

Type:open submodule of 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. Settingthis 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 whiledealing 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 tolaunchctl(1) that it should not submit this job to launchd whenloading a job or jobs. The value of this key does NOT reflect the current state of the job on the runningsystem. If you wish to know whether a job is loaded in launchd, reading this key from a configurationfile yourself is not a sufficient test. You should query launchd for the presence of the job usingthelaunchctl(1) list subcommand or use the ServiceManagement framework’sSMJobCopyDictionary() method.

Note that as of Mac OS X v10.6, this key’s value in a configuration file conveys a default value, whichis changed with the [-w] option of thelaunchctl(1) load and unload subcommands. These subcommands nolonger modify the configuration file, so the value displayed in the configuration file is not necessarilythe value thatlaunchctl(1) will apply. Seelaunchctl(1) for more information.

Please also be mindful that you should only use this key if the provided on-demand and KeepAlive criteriaare insufficient to describe the conditions under which your job needs to run. The cost to have ajob loaded in launchd is negligible, so there is no harm in loading a job which only runs once or veryrarely.

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 theglob(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 usevproc_transaction_begin(3) andvproc_transaction_end(3) to track outstanding transactions that need to be reconciled before theprocess can safely terminate. If no outstanding transactions are in progress, then launchd is free tosend 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 thejob.

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. Thevalue 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 isrunning as root. If UserName is set and GroupName is not, the the group will be set to the defaultgroup 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 withsetrlimit(2). The followingkeys 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 mayextend its break with thesbrk(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 themlock(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 daemonwill set thesysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits)value in addition to thesetrlimit(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 systemwide daemon will set thesysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid(HardResourceLimits) value in addition to thesetrlimit(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 alimit on the amount of physical memory to be given to a process; if memory is tight, the systemwill 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’sstack 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 whetherinitgroups(3) should be called before running the job. The defaultis 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 letdemand and conditions control the invocation. The default is false and therefore only demand will startthe job. The value may be set to true to unconditionally keep the job alive. Alternatively, a dictionaryof conditions may be specified to selectively control whether launchd keeps a job alive or not. Ifmultiple keys are provided, launchd ORs them, thus providing maximum flexibility to the job to refinethe logic and stall if necessary. If launchd finds no reason to restart the job, it falls back ondemand based invocation. Jobs that exit quickly and frequently when configured to be kept alive willbe 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 eventsources. Each sub-dictionary defines events for a particular eventsubsystem, such as “com.apple.iokit.matching”, which can be used tolaunch jobs based on the appearance of nodes in the IORegistry. Eachdictionary within the sub-dictionary specifies an event descriptor thatis specified to each event subsystem. With this key, the job promises touse the xpc_set_event_stream_handler(3) API to consume events. Seexpc_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 thejob 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.hostnameinsysctl.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.hostnameinsysctl.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 concertwith the -S flag tolaunchctl.

Type:null or string or list of string

Default:null

Declared by:

<home-manager/modules/launchd/default.nix>
launchd.agents.<name>.config.LowPriorityBackgroundIO

This optional key specifies whether the kernel should consider this daemon to be low priority whendoing file system I/O when the process is throttled with the Darwin-background classification.

Type:null or boolean

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 whendoing 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 mustbe 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 withlaunchd.

Type:null or (attribute set of (boolean or (submodule)))

Default:null

Example:

{  "org.nixos.service" = {    ResetAtClose = true;  };}

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 wastrue. This key has been deprecated and replaced in Mac OS X 10.5 and later with the more powerfulKeepAlive 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 applyresource limits based on what kind of job it is. If left unspecified, the system will apply lightresource limits to the job, throttling its CPU usage and I/O bandwidth. The following are valid values:

Background

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 theuser experience.

Standard

Standard jobs are equivalent to no ProcessType being set.

Adaptive

Adaptive jobs move between the Background and Interactive classifications based on activity overXPC connections. Seexpc_transaction_begin(3) for details.

Interactive

Interactive jobs run with the same resource limitations as apps, that is to say, none. Interactivejobs are critical to maintaining a responsive user experience, and this key should only beused 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 ofexecvp(3). If this key is missing, then the first element ofthe array of strings provided to the ProgramArguments will be used instead. This key is required inthe absence of the ProgramArguments key.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/launchd/default.nix>
launchd.agents.<name>.config.ProgramArguments

This key maps to the second argument ofexecvp(3). This key is required in the absence of the Programkey. Please note: many people are confused by this key. Please readexecvp(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 beingthat 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 tochroot(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.ServiceIPC

This optional key specifies whether the job participates in advancedcommunication with launchd. The default is false. This flag isincompatible with the inetdCompatibility key.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/launchd/default.nix>
launchd.agents.<name>.config.SessionCreate

This key specifies that the job should be spawned into a new securityaudit session rather than the default session for the context is belongsto. See auditon(2) for details.

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 whento run the job. The job must check-in to get a copy of the file descriptors using APIs outlined inlaunch(3). The keys of the top level Sockets dictionary can be anything. They are meant for the applicationdeveloper 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 willbe an array of descriptors. Daemon/Agent writers should consider all descriptors of a given key to beto be effectively equivalent, even though each file descriptor likely represents a different networkingprotocol which conforms to the criteria specified in the job configuration file.

The parameters below are used as inputs to callgetaddrinfo(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 themDNSResponder(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 thevalue is a hostname, thengetaddrinfo(3) will be used to join the correct multicast address for agiven socket family. If an explicit IPv4 or IPv6 address is given, it is required that the SockFamilyfamily 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 securelygenerated socket is created and the path is assigned to the environment variable that is inheritedby 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 toconnect(2) orbind(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 whetherlisten(2) orconnect(2) should be called on the created filedescriptor. 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 supportoctal, 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 toconnect(2) orbind(2) to.

Type:null or absolute 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 tosocket(2). The only value understood bythis 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 toconnect(2) orbind(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” andother 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 withsetrlimit(2). The followingkeys 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 mayextend its break with thesbrk(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 daemonwill set thesysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResourceLimits)value in addition to thesetrlimit(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 systemwide daemon will set thesysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid(HardResourceLimits) value in addition to thesetrlimit(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 alimit on the amount of physical memory to be given to a process; if memory is tight, the systemwill 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’sstack 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 usingstdio(3).

Type:null or absolute 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 usingstdio(3).

Type:null or absolute 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 usingstdio(3).

Type:null or absolute 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. The semantics aremuch likecrontab(5): Missing attributes are considered to be wildcard. Unlike cron which skipsjob invocations when the computer is asleep, launchd will start the job the next time the computer wakesup. If multiple intervals transpire before the computer is woken, those events will be coalesced intoone event upon waking from sleep.

Important

The list must not be empty and must not contain duplicate entries (attrsets which compare equally).

Caution

Since missing attrs become wildcards, an empty attrset effectively means “every minute”.

Type:null or (submodule) or unique (non-empty (list of (submodule)))

Default:null

Example:

[  {    Hour = 2;    Minute = 30;  }]

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 willbe started the next time the computer wakes up. If multiple intervals transpire before the computer iswoken, 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 inseconds, and by default, jobs will not be spawned more than once every 10 seconds. The principlebehind 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 ofprogram 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 timeout 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 toumask(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 isrunning 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 debuggerto 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 absolute 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 tochdir(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 listeningsocket is passed via the standard in/out/error file descriptors. If false, thenaccept(2) iscalled 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 thehome-manager-help tool, which opens a localcopy 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 Manageroptions. 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 canbe reached byman home-configuration.nix.

When looking at the manual page pretend that all references toNixOS stuff are actually references to Home Manager stuff.Thanks!

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/manual.nix>
meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
news.display

How unread and relevant news should be presented whenrunninghome-manager build andhome-manager switch.

The options are

silent

Do not print anything during build or switch. Thehome-manager news command stillworks for viewing the entries.

notify

The number of unread and relevant news entries will beprinted to standard output. Thehome-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.buildMachines

This option lists the machines to be used if distributed builds areenabled (seenix.distributedBuilds).Nix will perform derivations on those machines via SSH by copying theinputs to the Nix store on the remote machine, starting the build,then copying the output back to the local Nix store.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.hostName

The hostname of the build machine.

Type:string

Example:"nixbuilder.example.org"

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.mandatoryFeatures

A list of features mandatory for this builder. The builder willbe ignored for derivations that don’t require all features inthis list. All mandatory features are automatically included insupportedFeatures.

Type:list of string

Default:[ ]

Example:

[  "big-parallel"]

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.maxJobs

The number of concurrent jobs the build machine supports. Thebuild machine will enforce its own limits, but this allows hydrato schedule better since there is no work-stealing between buildmachines.

Type:signed integer

Default:1

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.protocol

The protocol used for communicating with the build machine.Usessh-ng if your remote builder and yourlocal Nix version support that improved protocol.

Usenull when trying to change the special localhost builderwithout a protocol which is for example used by hydra.

Type:one of <null>, “ssh”, “ssh-ng”

Default:"ssh"

Example:"ssh-ng"

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.publicHostKey

The (base64-encoded) public host key of this builder. The fieldis calculated viabase64 -w0 /etc/ssh/ssh_host_type_key.pub.If null, SSH will use its regular known-hosts file when connecting.

Type:null or string

Default:null

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.speedFactor

The relative speed of this builder. This is an arbitrary integerthat indicates the speed of this builder, relative to otherbuilders. Higher is faster.

Type:signed integer

Default:1

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.sshKey

The path to the SSH private key with which to authenticate onthe build machine. The private key must not have a passphrase.If null, the building user (root on NixOS machines) must have anappropriate ssh configuration to log in non-interactively.

Note that for security reasons, this path must point to a filein the local filesystem,not to the nix store.

Type:null or string

Default:null

Example:"/root/.ssh/id_buildhost_builduser"

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.sshUser

The username to log in as on the remote host. This user must beable to log in and run nix commands non-interactively. It mustalso be privileged to build derivations, so must be included innix.settings.trusted-users.

Type:null or string

Default:null

Example:"builder"

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.supportedFeatures

A list of features supported by this builder. The builder willbe ignored for derivations that require features not in thislist.

Type:list of string

Default:[ ]

Example:

[  "kvm"  "big-parallel"]

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.buildMachines.*.systems

The system types the build machine can execute derivations on.

Type:list of string

Default:[ ]

Example:

[  "x86_64-linux"  "aarch64-linux"]

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.channels

A declarative alternative to Nix channels. Whereas with stock channels,you would register URLs and fetch them into the Nix store withnix-channel(1), this option allows you to register the storepath directly. One particularly useful example is registering flakeinputs as channels.

This option can coexist with stock Nix channels. If the same channel isdefined 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 Nixcan parse the generated nix.conf.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/nix.nix>
nix.distributedBuilds

Whether to distribute builds to the machines listed innix.buildMachines.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/nix-remote-build.nix>
nix.extraOptions

Additional text appended tonix.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.dates

When to run the Nix garbage collector.

On Linux this is a string as defined bysystemd.time(7).

On Darwin it must be one of: hourly, daily, weekly, monthly, semiannually, annually, which are implemented as defined insystemd.time(7).

Type:(optionally newline-terminated) single-line string or list of string

Default:"weekly"

Example:"03:15"

Declared by:

<home-manager/modules/services/nix-gc.nix>
nix.gc.options

Options given tonix-collect-garbage when thegarbage 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 isstored on disk. When the timer is activated, the service unit istriggered immediately if it would have been triggered at least onceduring the time when the timer was inactive.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/services/nix-gc.nix>
nix.gc.randomizedDelaySec

Add a randomized delay before each garbage collection.The delay will be chosen between zero and this value.This value must be a time span in the format specified bysystemd.time(7)

Type:(optionally newline-terminated) single-line string

Default:"0"

Example:"45min"

Declared by:

<home-manager/modules/services/nix-gc.nix>
nix.keepOldNixPath

Whethernix.nixPath should keep the previously set values inNIX_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 thefrom reference needs to match exactly. If set,afrom reference likenixpkgs does notmatch with a reference likenixpkgs/nixos-20.03.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/nix.nix>
nix.registry.<name>.flake

The flake input to whichfrom> 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 whichfrom> 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; seenix.conf(5) for available options.The value declared here will be translated directly to the key-value pairs Nix expects.

Configuration specified innix.extraOptions will be appendedverbatim to the resulting config file.

Type:open submodule of 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:

{  sandbox = true;  show-trace = true;  system-features = [ "big-parallel" "kvm" "recursive-nix" ];}

Declared by:

<home-manager/modules/misc/nix.nix>
nixGL.packages

The nixGL package set containing GPU library wrappers. This can be usedto provide OpenGL and Vulkan access to applications on non-NixOS systemsby using(config.lib.nixGL.wrap <package>) for the default wrapper, or(config.lib.nixGL.wrappers.<wrapper> <package>) for any availablewrapper.

The wrapper functions are always available. If this option is empty (thedefault), they are a no-op. This is useful on NixOS where the wrappersare unnecessary.

Note that using any Nvidia wrapper requires building the configurationwith the--impure option.

Type:null or (attribute set)

Default:null

Example:inputs.nixGL.packages

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.defaultWrapper

The package wrapper function available for use as(config.lib.nixGL.wrap <package>). Intended to start programs on the main GPU.

Wrapper functions can be found underconfig.lib.nixGL.wrappers. Theycan be used directly, however, setting this option provides a convenientshorthand.

The following wrappers are available:

  • mesa

  • mesaPrime

  • nvidia

  • nvidiaPrime

Type:one of “mesa”, “mesaPrime”, “nvidia”, “nvidiaPrime”

Default:"mesa"

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.installScripts

For each wrapperwrp named in the provided list, a wrapper scriptnamednixGLWrp is installed into the environment. These scripts areuseful for running programs not installed via Home Manager.

The following wrappers are available:

  • mesa

  • mesaPrime

  • nvidia

  • nvidiaPrime

Type:null or (list of (one of “mesa”, “mesaPrime”, “nvidia”, “nvidiaPrime”))

Default:null

Example:

[  "mesa"  "mesaPrime"]

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.offloadWrapper

The package wrapper function available for use as(config.lib.nixGL.wrapOffload <package>). Intended to start programson the secondary GPU.

Wrapper functions can be found underconfig.lib.nixGL.wrappers. Theycan be used directly, however, setting this option provides a convenientshorthand.

The following wrappers are available:

  • mesa

  • mesaPrime

  • nvidia

  • nvidiaPrime

Type:one of “mesa”, “mesaPrime”, “nvidia”, “nvidiaPrime”

Default:"mesaPrime"

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.prime.card

Selects the non-default graphics card used for PRIME render offloading.The value can be:

  • a number, selecting the n-th non-default GPU;

  • a PCI bus id in the formpci-XXX_YY_ZZ_U;

  • a PCI id in the formvendor_id:device_id

For more information, consult the Mesa documentation on theDRI_PRIMEenvironment variable.

Type:string

Default:"1"

Example:"pci-0000_06_00_0"

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.prime.installScript

If this option is set, the wrapper scriptprime-offload is installedinto the environment. It allows starting programs on the secondary GPUselected by thenixGL.prime.card option. This makes sense when theprogram is not already using one of nixGL PRIME wrappers, or forprograms not installed from Nixpkgs.

This option can be set to either “mesa” or “nvidia”, making the scriptuse one or the other graphics library.

Type:null or one of “mesa”, “nvidia”

Default:null

Example:"mesa"

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.prime.nvidiaProvider

If this option is set, it overrides the offload provider for NvidiaPRIME offloading. Consult the proprietary Nvidia driver documentationon the__NV_PRIME_RENDER_OFFLOAD_PROVIDER environment variable.

Type:null or string

Default:null

Example:"NVIDIA-G0"

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixGL.vulkan.enable

Whether to enable Vulkan in nixGL wrappers.

This is disabled by default bacause Vulkan brings in several librariesthat can cause symbol version conflicts in wrapped programs. Yourmileage may vary.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/nixgl.nix>
nixpkgs.config

The configuration of the Nix Packages collection. (Fordetails, see the Nixpkgs documentation.) It allows you to setpackage configuration options.

Ifnull, then configuration is taken fromthe fallback location, for example,~/.config/nixpkgs/config.nix.

Note, this option will not apply outside your Home Managerconfiguration like when installing manually throughnix-env. If you want to apply it bothinside and outside Home Manager you can put it in a separatefile 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. (Fordetails, see the Nixpkgs documentation.) It allows you tooverride packages globally. This is a function that takes asan argument theoriginal Nixpkgs. Thefirst argument should be used for finding dependencies, andthe second should be used for overriding recipes.

Ifnull, then the overlays are taken fromthe fallback location, for example,~/.config/nixpkgs/overlays.

Likenixpkgs.config this option onlyapplies within the Home Manager configuration. Seenixpkgs.config for a suggested setup thatworks 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 inpam_env.conf(5).

Note, this option will become deprecated in the future and its use istherefore 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 tohttps://developers.yubico.com/yubico-pamfor 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 toHOME.

Type:string

Default:".yubico/authorized_yubikeys"

Declared by:

<home-manager/modules/misc/pam.nix>
programs.abaddon.enable

Whether to enable abaddon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/abaddon.nix>
programs.abaddon.package

The abaddon package to use.

Type:null or package

Default:pkgs.abaddon

Declared by:

<home-manager/modules/programs/abaddon.nix>
programs.abaddon.settings

Configuration settings for abaddon. All the available options can be found here:https://github.com/uowuo/abaddon?tab=readme-ov-file#settings

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  discord = {    autoconnect = true;    token = "MZ1yGvKTjE0rY0cV8i47CjAa.uRHQPq.Xb1Mk2nEhe-4iUcrGOuegj57zMC";  };  gui = {    alt_menu = true;    animations = false;    hide_to_tray = true;    stock_emojis = false;  };  notifications = {    enabled = false;  };  windows = {    hideconsole = true;  };}

Declared by:

<home-manager/modules/programs/abaddon.nix>
programs.abook.enable

Whether to enable Abook.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/abook.nix>
programs.abook.package

The abook package to use.

Type:null or package

Default:pkgs.abook

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.acd-cli.enable

Whether to enable acd-cli.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.acd-cli.package

The acd-cli package to use.

Type:null or package

Default:pkgs.acd-cli

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.acd-cli.cacheSettings

Cache configuration settings for acd-cli. All the available options can be found here:https://acd-cli.readthedocs.io/en/latest/configuration.html#cache-ini.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  blacklist = {    folders = [ ];  };  sqlite = {    busy_timeout = 30000;    filename = "nodes.db";    journal_mode = "wal";  };}

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.acd-cli.cliSettings

CLI configuration settings for acd-cli. All the available options can be found here:https://acd-cli.readthedocs.io/en/latest/configuration.html#acd-cli-ini.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  download = {    keep_corrupt = false;    keep_incomplete = true;  };  upload = {    timeout_wait = 10;  };}

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.acd-cli.clientSettings

Client configuration settings for acd-cli. All the available options can be found here:https://acd-cli.readthedocs.io/en/latest/configuration.html#acd-client-ini.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  endpoints = {    filename = "endpoint_data";    validity_duration = 259200;  };  transfer = {    chunk_retries = 1;    connection_timeout = 30;    dl_chunk_size = 524288000;    fs_chunk_size = 131072;    idle_timeout = 60;  };}

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.acd-cli.fuseSettings

FUSE configuration settings for acd-cli. All the available options can be found here:https://acd-cli.readthedocs.io/en/latest/configuration.html#fuse-ini.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  fs = {    block_size = 512;  };  read = {    open_chunk_limit = 10;  };  write = {    buffer_size = 32;    timeout = 30;  };}

Declared by:

<home-manager/modules/programs/acd-cli.nix>
programs.aerc.enable

Whether to enable aerc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aerc>
programs.aerc.package

The aerc package to use.

Type:null or package

Default:pkgs.aerc

Declared by:

<home-manager/modules/programs/aerc>
programs.aerc.extraAccounts

Extra lines added to$HOME/.config/aerc/accounts.conf.

Seeaerc-config(5).

Type:strings concatenated with “\n” or attribute set of (strings concatenated with “\n” or 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>
programs.aerc.extraBinds

Extra lines added to$HOME/.config/aerc/binds.conf.Global keybindings can be set in theglobal section.

Seeaerc-config(5).

Type:strings concatenated with “\n” or attribute set of (strings concatenated with “\n” or 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>
programs.aerc.extraConfig

Extra lines added to$HOME/.config/aerc/aerc.conf.

Seeaerc-config(5).

Type:strings concatenated with “\n” or attribute set of (strings concatenated with “\n” or 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>
programs.aerc.stylesets

Stylesets added to$HOME/.config/aerc/stylesets/.

Seeaerc-stylesets(7).

Type:attribute set of (strings concatenated with “\n” or attribute set of (strings concatenated with “\n” or attribute set of (values (null, bool, int, string, or float) or a list of values, that will be joined with a comma)))

Default:{ }

Example:

{ default = { ui = { "tab.selected.reverse" = "toggle"; }; }; };

Declared by:

<home-manager/modules/programs/aerc>
programs.aerc.templates

Templates added to$HOME/.config/aerc/templates/.

Seeaerc-templates(7).

Type:attribute set of strings concatenated with “\n”

Default:{ }

Example:

{ new_message = "Hello!"; };

Declared by:

<home-manager/modules/programs/aerc>
programs.aerospace.enable

Whether to enable AeroSpace window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aerospace.nix>
programs.aerospace.package

The aerospace package to use.

Type:null or package

Default:pkgs.aerospace

Declared by:

<home-manager/modules/programs/aerospace.nix>
programs.aerospace.extraConfig

Extra configuration to append to the aerospace.toml file.This allows you to add raw TOML content, including multiline strings.

Type:strings concatenated with “\n”

Default:""

Example:

alt-enter = '''exec-and-forget osascript -e '  tell application "Terminal"      do script      activate  end tell''''

Declared by:

<home-manager/modules/programs/aerospace.nix>
programs.aerospace.launchd.enable

Configure the launchd agent to manage the AeroSpace process.

The first time this is enabled, macOS will prompt you to allow this backgrounditem in System Settings.

You can verify the service is running correctly from your terminal.Run:launchctl list | grep aerospace

  • A running process will show a Process ID (PID) and a status of 0, for example:123450org.nix-community.home.aerospace

  • If the service has crashed or failed to start, the PID will be a dash and thestatus will be a non-zero number, for example:-1org.nix-community.home.aerospace

In case of failure, check the logs withcat /tmp/aerospace.err.log.

For more detailed service status, runlaunchctl print gui/$(id -u)/org.nix-community.home.aerospace.

NOTE: Enabling this option will configure AeroSpace tonot manage its ownlaunchd agent. Specifically, it will setstart-at-login = false andafter-login-command = [] in the configuration file, as those are now handledby Home Manager and launchd instead.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/aerospace.nix>
programs.aerospace.launchd.keepAlive

Whether the launchd service should be kept alive.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/aerospace.nix>
programs.aerospace.userSettings

AeroSpace configuration, seehttps://nikitabobko.github.io/AeroSpace/guide#configuring-aerospacefor supported values.

Type:TOML value

Default:{ }

Example:

{  gaps = {    outer.left = 8;    outer.bottom = 8;    outer.top = 8;    outer.right = 8;  };  mode.main.binding = {    alt-h = "focus left";    alt-j = "focus down";    alt-k = "focus up";    alt-l = "focus right";  };}

Declared by:

<home-manager/modules/programs/aerospace.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.package

The afew package to use.

Type:null or package

Default:pkgs.afew

Declared by:

<home-manager/modules/programs/afew.nix>
programs.afew.extraConfig

Extra lines added to afew configuration file. Availableconfiguration 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.ahoviewer.enable

Whether to enable ahoviewer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ahoviewer.nix>
programs.ahoviewer.package

The ahoviewer package to use.

Type:null or package

Default:pkgs.ahoviewer

Declared by:

<home-manager/modules/programs/ahoviewer.nix>
programs.ahoviewer.config

Configuration settings for ahoviewer. All the available optionscan be found editing the preferences in the GUI and looking at$XDG_CONFIG_HOME/ahoviewer/ahoviewer.cfg

Type:string or absolute path

Default:""

Example:

''  ZoomMode = "M";  Geometry :  {      x = 964;      y = 574;      w = 948;      h = 498;  };  BooruWidth = 382;  TagViewPosition = 318;  SmartNavigation = true;  StoreRecentFiles = false;  RememberLastFile = false;  SaveThumbnails = false;  AutoOpenArchive = false;  BooruBrowserVisible = true;''

Declared by:

<home-manager/modules/programs/ahoviewer.nix>
programs.ahoviewer.plugins

List of plugins for ahoviewer.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/ahoviewer.nix>
programs.aiac.enable

Whether to enable aiac.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aiac.nix>
programs.aiac.package

The aiac package to use.

Type:null or package

Default:pkgs.aiac

Declared by:

<home-manager/modules/programs/aiac.nix>
programs.aiac.settings

Configuration settings for aiac. All the available options can be found here:https://github.com/gofireflyio/aiac/?tab=readme-ov-file#configuration.

Type:TOML value

Default:{ }

Example:

{  backends = {    localhost = {      type = "ollama";      url = "http://localhost:11434/api";    };    official_openai = {      api_key = "API KEY";      default_model = "gpt-4o";      type = "openai";    };  };  default_backend = "official_openai";}

Declared by:

<home-manager/modules/programs/aiac.nix>
programs.aichat.enable

Whether to enable aichat, an All-in-one LLM CLI tool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aichat.nix>
programs.aichat.package

The aichat package to use.

Type:null or package

Default:pkgs.aichat

Declared by:

<home-manager/modules/programs/aichat.nix>
programs.aichat.agents

Agent-specific configurations. Seehttps://github.com/sigoden/aichat/wiki/Configuration-Guide#agent-specificfor supported values.

Type:attribute set of (YAML 1.1 value)

Default:{ }

Example:

{  llama = {    model = "llama3.2:latest";    temperature = 0.5;    use_tools = "web_search";  };  openai = {    agent_prelude = "default";    model = "openai:gpt-4o";    temperature = 0.5;    top_p = 0.7;    use_tools = "fs,web_search";  };}

Declared by:

<home-manager/modules/programs/aichat.nix>
programs.aichat.settings

Configuration written to$XDG_CONFIG_HOME/aichat/config.yamlon Linux or on Darwin ifxdg.enable is set, otherwise~/Library/Application Support/aichat/config.yaml.Seehttps://github.com/sigoden/aichat/blob/main/config.example.yamlfor supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  model = "ollama:mistral-small3.1:latest";  clients = [    {      type = "openai-compatible";      name = "ollama";      api_base = "http://localhost:11434/v1";      models = [        {          name = "mistral-small3.1:latest";          supports_function_calling = true;          supports_vision = true;        }      ];    }  ];}

Declared by:

<home-manager/modules/programs/aichat.nix>
programs.aider-chat.enable

Whether to enable aider-chat.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aider-chat.nix>
programs.aider-chat.package

The aider-chat package to use.

Type:null or package

Default:pkgs.aider-chat

Declared by:

<home-manager/modules/programs/aider-chat.nix>
programs.aider-chat.settings

Configuration settings for aider-chat. All the available options can be found here:https://aider.chat/docs/config/aider_conf.html#sample-yaml-config-file.

Type:YAML 1.1 value

Default:{ }

Example:

{  architect = true;  auto-accept-architect = false;  cache-prompts = true;  check-model-accepts-settings = false;  dark-mode = true;  dirty-commits = false;  lint = true;  show-model-warnings = false;  verify-ssl = false;}

Declared by:

<home-manager/modules/programs/aider-chat.nix>
programs.airlift.enable

Whether to enable airlift.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/airlift.nix>
programs.airlift.package

The airlift package to use.

Type:null or package

Default:pkgs.airlift

Declared by:

<home-manager/modules/programs/airlift.nix>
programs.airlift.settings

Configuration settings for airlift. All the available options can be found here:https://artifacthub.io/packages/helm/apache-airflow/airflow?modal=values.

Type:YAML 1.1 value

Default:{ }

Example:

{  cluster_config_file = "/path/to/cluster/config.yaml";  dag_path = "/path/to/dags";  extra_volume_mounts = [    "hostPath=/my/cool/path,containerPath=/my/mounted/path,name=a_unique_name"  ];  helm_chart_version = "1.0.0";  helm_values_file = "/path/to/values.yaml";  image = "apache/airflow:2.6.0";  plugin_path = "/path/to/plugins";  port = 8080;  post_start_dag_id = "example_dag_id";  requirements_file = "/path/to/requirements.txt";}

Declared by:

<home-manager/modules/programs/airlift.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 use.

Type:null or 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).Seehttps://github.com/alacritty/alacritty/tree/master#configurationfor 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.alacritty.theme

A theme from thealacritty-themerepository to import in the configuration.Seehttps://github.com/alacritty/alacritty-theme/tree/master/themesfor a list of available themes.If you would like to import your own theme, useprograms.alacritty.settings.general.import orprograms.alacritty.settings.colors directly.

Type:null or string

Default:null

Example:"solarized_dark"

Declared by:

<home-manager/modules/programs/alacritty.nix>
programs.alacritty.themePackage

The alacritty-theme package to use.

Type:package

Default:pkgs.alacritty-theme

Declared by:

<home-manager/modules/programs/alacritty.nix>
programs.algia.enable

Whether to enable algia.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/algia.nix>
programs.algia.package

The algia package to use.

Type:null or package

Default:pkgs.algia

Declared by:

<home-manager/modules/programs/algia.nix>
programs.algia.settings

Configuration settings for algia. All the available options can be found here:https://github.com/mattn/algia?tab=readme-ov-file#configuration

Type:JSON value

Default:{ }

Example:

{  privatekey = "nsecXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";  relays = {    "wss =//relay-jp.nostr.wirednet.jp" = {      read = true;      search = false;      write = true;    };  };}

Declared by:

<home-manager/modules/programs/algia.nix>
programs.aliae.enable

Whether to enable aliae.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.package

The aliae package to use.

Type:null or package

Default:pkgs.aliae

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.configLocation

Path where aliae should look for its config file. This doesn’t overridewhere Home-Manager places the generated config file. Changing this optioncould prevent aliae from using the settings defined in your Home-Managerconfiguration.

Type:string

Default:${config.home.homeDirectory}/.aliae.yaml

Example:"/Users/aliae/configs/aliae.yaml"

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.aliae.settings

Configuration settings for aliae. All the available options can be found here:https://aliae.dev/docs/setup/configuration#example.

Type:YAML 1.1 value

Default:{ }

Example:

{  alias = [    {      name = "a";      value = "aliae";    }    {      name = "hello-world";      type = "function";      value = "echo \"hello world\"";    }  ];  env = [    {      name = "EDITOR";      value = "code-insiders --wait";    }  ];}

Declared by:

<home-manager/modules/programs/aliae.nix>
programs.alistral.enable

Whether to enable alistral.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/alistral.nix>
programs.alistral.package

The alistral package to use.

Type:null or package

Default:pkgs.alistral

Declared by:

<home-manager/modules/programs/alistral.nix>
programs.alistral.settings

Configuration settings for alistral. You can see the details here:https://rustynova016.github.io/Alistral/config/config.html.

Type:JSON value

Default:{ }

Example:

{  default_user = "spanish_inquisition";  listenbrainz_url = "https://api.listenbrainz.org/1/";  musicbrainz_url = "http://musicbrainz.org/ws/2";}

Declared by:

<home-manager/modules/programs/alistral.nix>
programs.alot.enable

Whether to enable the Alot mail user agent. Alot uses theNotmuch email system and will therefore be automaticallyenabled for each email account that is managed by Notmuch.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/alot>
programs.alot.package

The alot package to use.

Type:null or package

Default:pkgs.alot

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings

Keybindings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.bufferlist

Bufferlist mode keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.envelope

Envelope mode keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.global

Global keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.search

Search mode keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.taglist

Taglist mode keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.bindings.thread

Thread mode keybindings.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
programs.alot.extraConfig

Extra lines added to alot configuration file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/alot>
programs.alot.hooks

Content of the hooks file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/alot>
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>
programs.alot.tags

How to display the tags.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/alot>
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>
programs.alot.tags.<name>.normal

How to display the tag when unfocused.Seehttps://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>
programs.alot.tags.<name>.translated

Fixed string representation for this tag. The tag can behidden from view, if the key translated is set to"", the empty string.

Type:null or string

Declared by:

<home-manager/modules/programs/alot>
programs.alot.tags.<name>.translation

A pair of strings that define a regular substitution tocompute the string representation on the fly usingre.sub.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/alot>
programs.am2rlauncher.enable

Whether to enable am2rlauncher.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/am2rlauncher.nix>
programs.am2rlauncher.package

The am2rlauncher package to use.

Type:null or package

Default:pkgs.am2rlauncher

Declared by:

<home-manager/modules/programs/am2rlauncher.nix>
programs.am2rlauncher.config

Config file for am2rlauncher in XML format. You can see the available optionsby modifying the settings in the GUI and looking at $XDG_CONFIG_HOME/AM2RLauncher/config.xml.

Type:string or absolute path

Default:""

Example:

''  <?xml version="1.0" encoding="utf-8"?>  <settings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" AutoUpdateAM2R="false" AutoUpdateLauncher="true" Language="English" MusicHQPC="false" MusicHQAndroid="false" MirrorIndex="0" ProfileIndex="null" CustomMirrorEnabled="false" CustomMirrorText="" ProfileDebugLog="true" Width="600" Height="600" IsMaximized="false" />''

Declared by:

<home-manager/modules/programs/am2rlauncher.nix>
programs.amber.enable

Whether to enable amber.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/amber.nix>
programs.amber.package

The amber package to use.

Type:null or package

Default:pkgs.amber

Declared by:

<home-manager/modules/programs/amber.nix>
programs.amber.ambrSettings

Configuration settings for amber’s ambr tool. All the available options can be found here:https://github.com/dalance/amber?tab=readme-ov-file#configurable-value.

Type:TOML value

Default:{ }

Example:

{  interactive = false;  regex = true;  row = true;  statistics = true;}

Declared by:

<home-manager/modules/programs/amber.nix>
programs.amber.ambsSettings

Configuration settings for amber’s ambs tool. All the available options can be found here:https://github.com/dalance/amber?tab=readme-ov-file#configurable-value.

Type:TOML value

Default:{ }

Example:

{  binary = true;  column = true;  recursive = false;  skipped = true;}

Declared by:

<home-manager/modules/programs/amber.nix>
programs.amfora.enable

Whether to enable amfora.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/amfora.nix>
programs.amfora.package

The amfora package to use.

Type:null or package

Default:pkgs.amfora

Declared by:

<home-manager/modules/programs/amfora.nix>
programs.amfora.bookmarks

Bookmarks file for amfora. It’s highly recommended that you editthis file through the program itself, and then look at$XDG_DATA_HOME/amfora/bookmarks.xml

Type:string or absolute path

Default:""

Example:

''  <?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE xbel    PUBLIC "+//IDN python.org//DTD XML Bookmark Exchange Language 1.1//EN//XML"           "http://www.python.org/topics/xml/dtds/xbel-1.1.dtd">  <xbel version="1.1">      <bookmark href="gemini://example.com/">          <title>Example Bookmark</title>      </bookmark>  </xbel>''

Declared by:

<home-manager/modules/programs/amfora.nix>
programs.amfora.settings

Configuration settings for amfora. All available options can be found here:https://github.com/makew0rld/amfora/blob/master/default-config.toml.

Type:TOML value

Default:{ }

Example:

{  a-general = {    ansi = true;    auto_redirect = false;    bullets = true;    color = true;    highlight_code = true;    highlight_style = "monokai";    home = "gemini://geminiprotocol.net";    http = "default";    search = "gemini://geminispace.info/search";  };}

Declared by:

<home-manager/modules/programs/amfora.nix>
programs.amoco.enable

Whether to enable amoco.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/amoco.nix>
programs.amoco.package

The amoco package to use.

Type:null or package

Default:pkgs.amoco

Declared by:

<home-manager/modules/programs/amoco.nix>
programs.amoco.config

Config file for amoco as a Python configuration module.

Type:string or absolute path

Default:""

Declared by:

<home-manager/modules/programs/amoco.nix>
programs.amp.enable

Whether to enable amp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/amp.nix>
programs.amp.package

The amp package to use.

Type:null or package

Default:pkgs.amp

Declared by:

<home-manager/modules/programs/amp.nix>
programs.amp.settings

Configuration settings for amp. All the details can befound here:https://amp.rs/docs/configuration/.

Type:YAML 1.1 value

Default:{ }

Example:

{  line_length_guide = [    80    100  ];  line_wrapping = true;  open_mode = {    exclusions = [      "**/.git"      "**/.svn"    ];  };  soft_tabs = true;  tab_width = 2;  theme = "solarized_dark";}

Declared by:

<home-manager/modules/programs/amp.nix>
programs.andcli.enable

Whether to enable andcli.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/andcli.nix>
programs.andcli.package

The andcli package to use.

Type:null or package

Default:pkgs.andcli

Declared by:

<home-manager/modules/programs/andcli.nix>
programs.andcli.settings

Configuration settings for andcli. All the details can be found here:https://github.com/tjblackheart/andcli/blob/7de13cc933eeb23d53558f76fefef226bd531c2c/internal/config/config.go#L16

Type:YAML 1.1 value

Default:{ }

Example:

{  options = {    show_tokens = true;    show_usernames = false;  };}

Declared by:

<home-manager/modules/programs/andcli.nix>
programs.animdl.enable

Whether to enable animdl.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/animdl.nix>
programs.animdl.package

The animdl package to use.

Type:null or package

Default:pkgs.animdl

Declared by:

<home-manager/modules/programs/animdl.nix>
programs.animdl.settings

Configuration settings for animdl. All the available options can be found here:https://github.com/justfoolingaround/animdl?tab=readme-ov-file#configurations.

Type:YAML 1.1 value

Default:{ }

Example:

{  default_player = "mpv";  default_provider = "animixplay";  ffmpeg = {    executable = "ffmpeg";    hls_download = false;    submerge = true;  };  quality_string = "best[subtitle]/best";  site_urls = {    animixplay = "https://www.animixplay.to/";  };}

Declared by:

<home-manager/modules/programs/animdl.nix>
programs.anime-downloader.enable

Whether to enable anime-downloader.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/anime-downloader.nix>
programs.anime-downloader.package

The anime-downloader package to use.

Type:null or package

Default:pkgs.anime-downloader

Declared by:

<home-manager/modules/programs/anime-downloader.nix>
programs.anime-downloader.settings

Configuration settings for anime-downloader. All available options can be found here:https://anime-downlader.readthedocs.io/en/latest/usage/config.html#config-json.

Type:JSON value

Default:{ }

Example:

{  dl = {    aria2c_for_torrents = false;    chunk_size = "10";    download_dir = ".";    external_downloader = "{aria2}";    fallback_qualities = [      "720p"      "480p"      "360p"    ];    file_format = "{anime_title}/{anime_title}_{ep_no}";    force_download = false;    player = null;    provider = "twist.moe";    quality = "1080p";    skip_download = false;    url = false;  };}

Declared by:

<home-manager/modules/programs/anime-downloader.nix>
programs.anki.enable

Whether to enable Anki.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.package

The anki package to use.

Type:package

Default:pkgs.anki

Declared by:

<home-manager/modules/programs/anki>
programs.anki.addons

List of Anki add-on packages to install.

Type:list of package

Default:[ ]

Example:

[  # When the add-on is already available in nixpkgs  pkgs.ankiAddons.anki-connect  # When the add-on is not available in nixpkgs  (pkgs.anki-utils.buildAnkiAddon (finalAttrs: {    pname = "recolor";    version = "3.1";    src = pkgs.fetchFromGitHub {      owner = "AnKing-VIP";      repo = "AnkiRecolor";      rev = finalAttrs.version;      sparseCheckout = [ "src/addon" ];      hash = "sha256-28DJq2l9DP8O6OsbNQCZ0pm4S6CQ3Yz0Vfvlj+iQw8Y=";    };    sourceRoot = "${finalAttrs.src.name}/src/addon";  }))  # When the add-on needs to be configured  pkgs.ankiAddons.passfail2.withConfig {    config = {      again_button_name = "not quite";      good_button_name = "excellent";      toggle_names_textcolors = 1;    };    user_files = ./dir-to-be-merged-into-addon-user-files-dir;  };]

Declared by:

<home-manager/modules/programs/anki>
programs.anki.answerKeys

Overrides for choosing what keyboard shortcut activates eachanswer button. The Anki default will be used for ones without anoverride defined.

Type:list of (submodule)

Default:[ ]

Example:

[  {    ease = 1;    key = "left";  }  {    ease = 2;    key = "up";  }  {    ease = 3;    key = "right";  }  {    ease = 4;    key = "down";  }]

Declared by:

<home-manager/modules/programs/anki>
programs.anki.answerKeys.*.ease

Number associated with an answer button.

By default, 1 = Again, 2 = Hard, 3 = Good, and 4 = Easy.

Type:signed integer

Example:3

Declared by:

<home-manager/modules/programs/anki>
programs.anki.answerKeys.*.key

Keyboard shortcut for this answer button. The shortcut should be inthe string format used byhttps://doc.qt.io/qt-6/qkeysequence.html.

Type:string

Example:"3"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.hideBottomBar

Hide bottom bar during review.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.hideBottomBarMode

When to hide the bottom bar whenhideBottomBar is enabled.

Type:null or one of “fullscreen”, “always”

Default:null

Example:"fullscreen"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.hideTopBar

Hide top bar during review.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.hideTopBarMode

When to hide the top bar whenhideTopBar is enabled.

Type:null or one of “fullscreen”, “always”

Default:null

Example:"fullscreen"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.language

Display language. Should be an underscore separated language tag.Seehttps://github.com/ankitects/anki/blob/main/pylib/anki/lang.py forsupported tags.

Type:non-empty string

Default:"en_US"

Example:"ja_JP"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.legacyImportExport

Use legacy (pre 2.1.55) import/export handling code.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/anki>
programs.anki.minimalistMode

Minimalist user interface mode.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.reduceMotion

Disable various animations and transitions of the user interface.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.spacebarRatesCard

Spacebar (or enter) also answers card.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.style

Widgets style.

Type:null or one of “anki”, “native”

Default:null

Example:"native"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.autoSync

Automatically sync on profile open/close.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.autoSyncMediaMinutes

Automatically sync media every X minutes. Set this to 0 to disableperiodic media syncing.

Type:null or (unsigned integer, meaning >=0)

Default:null

Example:15

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.keyFile

Path to a file containing the sync account sync key. This is different fromthe account password.

To get the sync key, follow these steps:

  • Enable this Home Manager module:programs.anki.enable = true

  • Open Anki.

  • Navigate to the sync settings page. (Tools > Preferences > Syncing)

  • Log in to your AnkiWeb account.

  • Select “Yes” to the prompt about saving preferences and syncing.

  • A Home Manager warning prompt will show. Select “Show details…”.

  • Get your sync key from the message: “syncKey changed from `None` to `<YOUR SYNC KEY WILL BE HERE>`”

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.networkTimeout

Network timeout in seconds.

Type:null or (unsigned integer, meaning >=0)

Default:null

Example:60

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.syncMedia

Synchronize audio and images too.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.url

Custom sync server URL. Seehttps://docs.ankiweb.net/sync-server.html.

Type:null or string

Default:null

Example:"http://example.com/anki-sync/"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.username

Sync account username.

Type:null or string

Default:null

Example:"lovelearning@email.com"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.sync.usernameFile

Path to a file containing the sync account username.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/anki>
programs.anki.theme

Theme to use.

Type:null or one of “followSystem”, “light”, “dark”

Default:null

Example:"dark"

Declared by:

<home-manager/modules/programs/anki>
programs.anki.uiScale

User interface scale.

Type:null or integer or floating point number between 0.0 and 1.0 (both inclusive)

Default:null

Example:1.0

Declared by:

<home-manager/modules/programs/anki>
programs.anki.videoDriver

Video driver to use.

Type:null or one of “opengl”, “angle”, “software”, “metal”, “vulkan”, “d3d11”

Default:null

Example:"opengl"

Declared by:

<home-manager/modules/programs/anki>
programs.anup.enable

Whether to enable anup.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/anup.nix>
programs.anup.package

The anup package to use.

Type:null or package

Default:pkgs.anup

Declared by:

<home-manager/modules/programs/anup.nix>
programs.anup.config

Config file for anup in RON (Rusty Object Notation) format.Available options can be found by looking at ~/.config/anup/config.ron.

Type:string or absolute path

Default:""

Declared by:

<home-manager/modules/programs/anup.nix>
programs.anvil-editor.enable

Whether to enable anvil-editor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/anvil-editor.nix>
programs.anvil-editor.package

The anvil-editor package to use.

Type:null or package

Default:pkgs.anvil-editor

Declared by:

<home-manager/modules/programs/anvil-editor.nix>
programs.anvil-editor.settings

Configuration settings for anvil-editor. All available options can be found here:https://anvil-editor.net/reference/config/#settingstoml.

Type:TOML value

Default:{ }

Example:

{  env = {    BAR = "FOO";    FOO = "BAR";  };  general = {    exec = [      "aad"      "ado"    ];  };  layout = {    column-tag = "New Cut Paste Snarf Zerox Delcol";  };  typesetting = {    replace-cr-with-tofu = false;  };}

Declared by:

<home-manager/modules/programs/anvil-editor.nix>
programs.anvil-editor.style

Style settings for anvil-editor. All available options can be found here:https://anvil-editor.net/reference/config/#stylejs.

Type:JSON value

Default:{ }

Example:

{  BodyBgColor = "#17223b";  GutterWidth = 14;  ScrollBgColor = "#6b778d";  ScrollFgColor = "#17223b";  TagBgColor = "#263859";  TagFgColor = "#fefefe";  WinBorderColor = "#000000";}

Declared by:

<home-manager/modules/programs/anvil-editor.nix>
programs.anyrun.enable

Whether to enable anyrun.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.package

The anyrun package to use.

Type:null or package

Default:pkgs.anyrun

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.closeOnClick

Close window when a click outside the main box is received.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.height

The minimum height of the runner, the runner will expand to fit all the entries.

This is a numeric option - pass either{ absolute = int; }; or{ fraction = float; };.when usingabsolute it sets the absolute value in pixels,when usingfraction, it sets a fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window

Type:submodule

Default:

{  absolute = 0;}

Example:

''  { absolute = 200; };  or  { fraction = 0.4; };''

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.height.absolute

Absolute value in pixels.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.height.fraction

Fraction of the screen.

Type:null or floating point number

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.hideIcons

Hide match and plugin info icons.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.hidePluginInfo

Hide the plugin info panel.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.ignoreExclusiveZones

Ignore exclusive zones, eg. Waybar.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.layer

Layer shell layer (background, bottom, top or overlay).

Type:one of “background”, “bottom”, “top”, “overlay”

Default:"overlay"

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.margin

Add a margin around the window to allow for CSS shadow styling.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.maxEntries

Limit amount of entries shown in total.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.plugins

List of anyrun plugins to use. Can either be packages, absolute plugin paths, or strings.

Type:null or (list of (package or string))

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.showResultsImmediately

Show search results immediately when Anyrun starts.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.width

The width of the runner.

This is a numeric option - pass either{ absolute = int; }; or{ fraction = float; };.when usingabsolute it sets the absolute value in pixels,when usingfraction, it sets a fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window

Type:submodule

Default:

{  absolute = 800;}

Example:

''  { absolute = 200; };  or  { fraction = 0.4; };''

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.width.absolute

Absolute value in pixels.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.width.fraction

Fraction of the screen.

Type:null or floating point number

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.x

The horizontal position, adjusted so that { relative = 0.5; } always centers the runner.

This is a numeric option - pass either{ absolute = int; }; or{ fraction = float; };.when usingabsolute it sets the absolute value in pixels,when usingfraction, it sets a fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window

Type:submodule

Default:

{  fraction = 0.5;}

Example:

''  { absolute = 200; };  or  { fraction = 0.4; };''

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.x.absolute

Absolute value in pixels.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.x.fraction

Fraction of the screen.

Type:null or floating point number

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.y

The vertical position, works the same as x.

This is a numeric option - pass either{ absolute = int; }; or{ fraction = float; };.when usingabsolute it sets the absolute value in pixels,when usingfraction, it sets a fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window

Type:submodule

Default:

{  fraction = 0.0;}

Example:

''  { absolute = 200; };  or  { fraction = 0.4; };''

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.y.absolute

Absolute value in pixels.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.config.y.fraction

Fraction of the screen.

Type:null or floating point number

Default:null

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.extraConfigFiles

Extra files to put in~/.config/anyrun, a wrapper overxdg.configFile.

Type:attribute set

Default:{ }

Example:

''  programs.anyrun.extraConfigFiles."plugin-name.ron".text = '''    Config(      some_option: true,    )  '''''

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.anyrun.extraCss

Extra CSS lines to add to~/.config/anyrun/style.css.

Type:null or strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/anyrun.nix>
programs.aria2.enable

Whether to enable aria2.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/aria2.nix>
programs.aria2.package

The aria2 package to use.

Type:null or package

Default:pkgs.aria2

Declared by:

<home-manager/modules/programs/aria2.nix>
programs.aria2.extraConfig

Extra lines added toaria2.conf file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/aria2.nix>
programs.aria2.settings

Options to add toaria2.conf file.Seearia2c(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.asciinema.enable

Whether to enable Enable installing asciinema and writing configuration file.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/asciinema.nix>
programs.asciinema.package

The asciinema package to use.

Type:null or package

Default:pkgs.asciinema

Declared by:

<home-manager/modules/programs/asciinema.nix>
programs.asciinema.settings

Declare-able configurations for asciinema written to$XDG_CONFIG_HOME/asciinema/config.toml.

Check official docs for available configurations;https://docs.asciinema.org/manual/cli/configuration/v3/#config-file

Type:TOML value

Default:{ }

Example:

{  notifications = {    command = "tmux display-message \"$TEXT\"";    enable = false;  };  playback = {    next_marker_key = "m";    pause_key = "^p";    speed = 2;    step_key = "s";  };  server = {    url = "https://asciinema.example.com";  };  session = {    add_marker_key = "^x";    capture_env = "SHELL,TERM,USER";    capture_input = true;    command = "/run/current-system/sw/bin/bash -l";    idle_time_limit = 2;    pause_key = "^p";    prefix_key = "^a";  };}

Declared by:

<home-manager/modules/programs/asciinema.nix>
programs.ashell.enable

Whether to enable ashell, a ready to go wayland status bar for hyprland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ashell.nix>
programs.ashell.package

The ashell package to use.

Type:null or package

Default:pkgs.ashell

Declared by:

<home-manager/modules/programs/ashell.nix>
programs.ashell.settings

Ashell configuration written to$XDG_CONFIG_HOME/ashell/config.toml (0.5.0+)or$XDG_CONFIG_HOME/ashell/config.yaml (<0.5.0).For available settings seehttps://github.com/MalpenZibo/ashell?tab=readme-ov-file#configuration.

Type:null or TOML value

Default:{ }

Example:

{  modules = {    center = [      "Window Title"    ];    left = [      "Workspaces"    ];    right = [      "SystemInfo"      [        "Clock"        "Privacy"        "Settings"      ]    ];  };  workspaces = {    visibilityMode = "MonitorSpecific";  };}

Declared by:

<home-manager/modules/programs/ashell.nix>
programs.ashell.systemd.enable

Whether to enable ashell systemd service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ashell.nix>
programs.ashell.systemd.target

The systemd target that will automatically start ashell.

If you set this to a WM-specific target, make sure that systemdintegration for that WM is enabled (for example,wayland.windowManager.hyprland.systemd.enable). This istypically true by default.

Type:string

Default:config.wayland.systemd.target

Example:"hyprland-session.target"

Declared by:

<home-manager/modules/programs/ashell.nix>
programs.astroid.enable

Whether to enable Astroid.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/astroid>
programs.astroid.package

The astroid package to use.

Type:null or package

Default:pkgs.astroid

Declared by:

<home-manager/modules/programs/astroid>
programs.astroid.externalEditor

You can use the following variables:

%1

file name

%2

server name

%3

socket ID

SeeCustomizing editoron 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>
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>
programs.astroid.pollScript

Script to run to fetch/update mails.

Type:string

Default:""

Example:"mbsync gmail"

Declared by:

<home-manager/modules/programs/astroid>
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 Bash integration.

If enabled, this will bindctrl-r to open the Atuin history.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.enableFishIntegration

Whether to enable Fish integration.

If enabled, this will bind the up-arrow key to open the Atuin history.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.enableZshIntegration

Whether to enable Zsh integration.

If enabled, this will bindctrl-r and the up-arrow key to open theAtuin history.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.package

The atuin package to use.

Type:package

Default:pkgs.atuin

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.daemon.enable

Whether to enable Atuin daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/atuin.nix>
programs.atuin.daemon.logLevel

Verbosity of Atuin daemon logging.

Type:null or one of “trace”, “debug”, “info”, “warn”, “error”

Default:null

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.

Seehttps://docs.atuin.sh/configuration/config/ for the full listof 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.atuin.themes

Each theme is written to$XDG_CONFIG_HOME/atuin/themes/theme-name.tomlwhere the name of each attribute is the theme-name

Seehttps://docs.atuin.sh/guide/theming/ for the full listof options.

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

Default:{ }

Example:

{  "my-theme" = {    theme.name = "My Theme";    colors = {      Base = "#000000";      Title = "#FFFFFF";    };  };}

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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/autojump.nix>
programs.autojump.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/autojump.nix>
programs.autojump.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/autojump.nix>
programs.autojump.package

The autojump package to use.

Type:package

Default:pkgs.autojump

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.package

The autorandr package to use.

Type:null or package

Default:pkgs.autorandr

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>.extraConfig

Extra lines to append to this profile’s config.

Type:strings concatenated with “\n”

Default:""

Example:

''  x-prop-non_desktop 0  some-key some-value''

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 thexrandr(1)option--scale-fromwill be used; when using factor method the option--scalewill be used.

This option is a shortcut version of the transform option and they are mutuallyexclusive.

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 toxrandr(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.Useautorandr --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

The aws package to use.

Type:null or 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 usecredential_process option to retrievethe IAM credentials from your favorite password manager during runtime,or use AWS IAM Identity Center to get short-term credentials.

Seehttps://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html.

Type:open submodule of 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:open submodule of 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:null or package

Default:pkgs.bacon

Declared by:

<home-manager/modules/programs/bacon.nix>
programs.bacon.settings

Bacon configuration written to eitherLibrary/Application Support/org.dystroy.bacon/prefs.toml(darwin) or$XDG_CONFIG_HOME/bacon/prefs.toml.For available settings seehttps://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 completionenabled 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 isnot 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 VTElibrary. This will let the terminal track the current workingdirectory.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/vte.nix>
programs.bash.package

The bash package to use.

Type:null or 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:null or 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:null or signed integer

Default:10000

Declared by:

<home-manager/modules/programs/bash.nix>
programs.bash.initExtra

Extra commands that should be run when initializing aninteractive 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 aninteractive 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 loginshell.

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:lazy attribute set of (string or signed integer or absolute path)

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 inthis 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.package

The bashmount package to use.

Type:null or package

Default:pkgs.bashmount

Declared by:

<home-manager/modules/programs/bashmount.nix>
programs.bashmount.extraConfig

Configuration written to$XDG_CONFIG_HOME/bashmount/config. Look athttps://github.com/jamielinux/bashmount/blob/master/bashmount.conffor 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. Thisdefaults tofalse for stateversion ≥ 19.03. For earlier versions beets is enabled ifprograms.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 1.1 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:null or package

Default:pkgs.bemenu

Declared by:

<home-manager/modules/programs/bemenu.nix>
programs.bemenu.settings

Configuration options for bemenu. Seebemenu(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:null or 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 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/borgmatic.nix>
programs.borgmatic.backups.<name>.hooks.extraConfig

Extra settings.

Type:YAML 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/borgmatic.nix>
programs.borgmatic.backups.<name>.location.excludeHomeManagerSymlinks

Whether to exclude Home Manager generated symbolic links fromthe backups. This facilitates restoring the whole homedirectory when the Nix store doesn’t contain the latestHome 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 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/borgmatic.nix>
programs.borgmatic.backups.<name>.location.patterns

Patterns to include/exclude.

See the output ofborg help patterns for the syntax. Pattern pathsare relative to/ even when a different recursion root is set.

Mutually exclusive withprograms.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 withprograms.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 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/borgmatic.nix>
programs.borgmatic.backups.<name>.retention.extraConfig

Extra settings.

Type:YAML 1.1 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 1.1 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 acustomizable interface.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/bottom.nix>
programs.bottom.package

The bottom package to use.

Type:null or package

Default:pkgs.bottom

Declared by:

<home-manager/modules/programs/bottom.nix>
programs.bottom.settings

Configuration written to$XDG_CONFIG_HOME/bottom/bottom.toml.

Seehttps://github.com/ClementTsang/bottom/blob/master/sample_configs/default_config.tomlfor 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:null or package

Default:pkgs.boxxy

Declared by:

<home-manager/modules/programs/boxxy.nix>
programs.boxxy.rules

List of boxxy rules

Type:list of (open submodule of (YAML 1.1 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.brave.nativeMessagingHosts

List of Brave Browser native messaging hosts to install.

Type:list of package

Default:[ ]

Example:

[  pkgs.kdePackages.plasma-browser-integration]

Declared by:

<home-manager/modules/programs/chromium.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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/broot.nix>
programs.broot.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/broot.nix>
programs.broot.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/broot.nix>
programs.broot.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/broot.nix>
programs.broot.package

The broot package to use.

Type:package

Default:pkgs.broot

Declared by:

<home-manager/modules/programs/broot.nix>
programs.broot.settings

Verbatim config entries

Type:open submodule of (JSON 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, seeVerb Definition Attributesin 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

keys (optional)

multiple keyboard keys each triggering execution

shortcut (optional)

an alternate way to call the verb (withoutthe arguments part)

leave_broot (optional)

whether to quit broot on execution(default:true)

from_shell (optional)

whether the verb must be executed from theparent shell (default:false)

Type:list of attribute set of (boolean or string or list of 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.package

The browserpass package to use.

Type:package

Default:pkgs.browserpass

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:null or package

Default:pkgs.btop

Declared by:

<home-manager/modules/programs/btop.nix>
programs.btop.extraConfig

Extra lines added to thebtop.conf file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/btop.nix>
programs.btop.settings

Options to add tobtop.conf file.Seehttps://github.com/aristocratos/btop#configurabilityfor 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.btop.themes

Themes to be written to$XDG_CONFIG_HOME/btop/themes/${name}.theme

Type:lazy attribute set of (absolute path or strings concatenated with “\n”)

Default:{ }

Example:

{  my-theme = ''    theme[main_bg]="#282a36"    theme[main_fg]="#f8f8f2"    theme[title]="#f8f8f2"    theme[hi_fg]="#6272a4"    theme[selected_bg]="#ff79c6"    theme[selected_fg]="#f8f8f2"    theme[inactive_fg]="#44475a"    theme[graph_text]="#f8f8f2"    theme[meter_bg]="#44475a"    theme[proc_misc]="#bd93f9"    theme[cpu_box]="#bd93f9"    theme[mem_box]="#50fa7b"    theme[net_box]="#ff5555"    theme[proc_box]="#8be9fd"    theme[div_line]="#44475a"    theme[temp_start]="#bd93f9"    theme[temp_mid]="#ff79c6"    theme[temp_end]="#ff33a8"    theme[cpu_start]="#bd93f9"    theme[cpu_mid]="#8be9fd"    theme[cpu_end]="#50fa7b"    theme[free_start]="#ffa6d9"    theme[free_mid]="#ff79c6"    theme[free_end]="#ff33a8"    theme[cached_start]="#b1f0fd"    theme[cached_mid]="#8be9fd"    theme[cached_end]="#26d7fd"    theme[available_start]="#ffd4a6"    theme[available_mid]="#ffb86c"    theme[available_end]="#ff9c33"    theme[used_start]="#96faaf"    theme[used_mid]="#50fa7b"    theme[used_end]="#0dfa49"    theme[download_start]="#bd93f9"    theme[download_mid]="#50fa7b"    theme[download_end]="#8be9fd"    theme[upload_start]="#8c42ab"    theme[upload_mid]="#ff79c6"    theme[upload_end]="#ff33a8"    theme[process_start]="#50fa7b"    theme[process_mid]="#59b690"    theme[process_end]="#6272a4"  '';}

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:null or package

Default:pkgs.bun

Declared by:

<home-manager/modules/programs/bun.nix>
programs.bun.settings

Configuration written to$XDG_CONFIG_HOME/.bunfig.toml.

Seehttps://bun.sh/docs/runtime/bunfigfor 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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/carapace.nix>
programs.carapace.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/carapace.nix>
programs.carapace.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/carapace.nix>
programs.carapace.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

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:null or package

Default:pkgs.cava

Declared by:

<home-manager/modules/programs/cava.nix>
programs.cava.settings

Settings to be written to the Cava configuration file. Seehttps://github.com/karlstav/cava/blob/master/example_files/config forall 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.cavalier.enable

Whether to enable Cava audio visualizer GUI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/cavalier.nix>
programs.cavalier.package

The cavalier package to use.

Type:null or package

Default:pkgs.cavalier

Declared by:

<home-manager/modules/programs/cavalier.nix>
programs.cavalier.settings.cava

Settings to be written to the underlying Cava configuration file. Seehttps://github.com/karlstav/cava/blob/master/example_files/config forall 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/cavalier.nix>
programs.cavalier.settings.general

Settings to be written to the Cavalier configuration file. Seehttps://github.com/NickvisionApps/Cavalier/blob/main/NickvisionCavalier.Shared/Models/Configuration.csfor all available options.

Type:JSON value

Default:{ }

Example:

{  ShowControls = true;  ColorProfiles = [    {      Name = "Default";      FgColors = [        "#ffed333b"        "#ffffa348"        "#fff8e45c"        "#ff57e389"        "#ff62a0ea"        "#ffc061cb"      ];      BgColors = [        "#ff1e1e2e"      ];      Theme = 1;    }  ];  ActiveProfile = 0;}

Declared by:

<home-manager/modules/programs/cavalier.nix>
programs.chawan.enable

Whether to enable chawan, A TUI web browser.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/chawan.nix>
programs.chawan.package

The chawan package to use.

Type:null or package

Default:pkgs.chawan

Declared by:

<home-manager/modules/programs/chawan.nix>
programs.chawan.settings

Configuration options for chawan.

Seecha-config(5)

Type:TOML value

Default:{ }

Example:

{  buffer = {    images = true;    autofocus = true;  };  page."C-k" = "() => pager.load('ddg:')";}

Declared by:

<home-manager/modules/programs/chawan.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:null or 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, seeChrome switches.

To search switches for other components, seeChromium 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 theChrome Web Store.

To install extensions outside of the Chrome Web Store setupdateUrl orcrxPath andversion as explained in theChromedocumentation.

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 absolute 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.chromium.nativeMessagingHosts

List of Chromium native messaging hosts to install.

Type:list of package

Default:[ ]

Example:

[  pkgs.kdePackages.plasma-browser-integration]

Declared by:

<home-manager/modules/programs/chromium.nix>
programs.claude-code.enable

Whether to enable Claude Code, Anthropic’s official CLI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.package

The claude-code package to use.

Type:null or package

Default:pkgs.claude-code

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.agents

Custom agents for Claude Code.The attribute name becomes the agent filename, and the value is either:

  • Inline content as a string with frontmatter

  • A path to a file containing the agent content with frontmatterAgents are stored in .claude/agents/ directory.

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Example:

{  code-reviewer = ''    ---    name: code-reviewer    description: Specialized code review agent    tools: Read, Edit, Grep    ---    You are a senior software engineer specializing in code reviews.    Focus on code quality, security, and maintainability.  '';  documentation = ./agents/documentation.md;}

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.agentsDir

Path to a directory containing agent files for Claude Code.Agent files from this directory will be symlinked to .claude/agents/.

Type:null or absolute path

Default:null

Example:./agents

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.commands

Custom commands for Claude Code.The attribute name becomes the command filename, and the value is either:

  • Inline content as a string

  • A path to a file containing the command contentCommands are stored in .claude/commands/ directory.

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Example:

{  changelog = ''    ---    allowed-tools: Bash(git log:*), Bash(git diff:*)    argument-hint: [version] [change-type] [message]    description: Update CHANGELOG.md with new entry    ---    Parse the version, change type, and message from the input    and update the CHANGELOG.md file accordingly.  '';  fix-issue = ./commands/fix-issue.md;  commit = ''    ---    allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)    description: Create a git commit with proper message    ---    ## Context    - Current git status: !`git status`    - Current git diff: !`git diff HEAD`    - Recent commits: !`git log --oneline -5`    ## Task    Based on the changes above, create a single atomic git commit with a descriptive message.  '';}

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.commandsDir

Path to a directory containing command files for Claude Code.Command files from this directory will be symlinked to .claude/commands/.

Type:null or absolute path

Default:null

Example:./commands

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.hooks

Custom hooks for Claude Code.The attribute name becomes the hook filename, and the value is the hook script content.Hooks are stored in .claude/hooks/ directory.

Type:attribute set of strings concatenated with “\n”

Default:{ }

Example:

{  post-commit = ''    #!/usr/bin/env bash    echo "Committed with message: $1"  '';  pre-edit = ''    #!/usr/bin/env bash    echo "About to edit file: $1"  '';}

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.hooksDir

Path to a directory containing hook files for Claude Code.Hook files from this directory will be symlinked to .claude/hooks/.

Type:null or absolute path

Default:null

Example:./hooks

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.mcpServers

MCP (Model Context Protocol) servers configuration

Type:attribute set of (JSON value)

Default:{ }

Example:

{  customTransport = {    customOption = "value";    timeout = 5000;    type = "websocket";    url = "wss://example.com/mcp";  };  database = {    args = [      "-y"      "@bytebase/dbhub"      "--dsn"      "postgresql://user:pass@localhost:5432/db"    ];    command = "npx";    env = {      DATABASE_URL = "postgresql://user:pass@localhost:5432/db";    };    type = "stdio";  };  filesystem = {    args = [      "-y"      "@modelcontextprotocol/server-filesystem"      "/tmp"    ];    command = "npx";    type = "stdio";  };  github = {    type = "http";    url = "https://api.githubcopilot.com/mcp/";  };}

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.memory.source

Path to a file containing memory content for CLAUDE.md.This option is mutually exclusive with memory.text.

Type:null or absolute path

Default:null

Example:./claude-memory.md

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.memory.text

Inline memory content for CLAUDE.md.This option is mutually exclusive with memory.source.

Type:null or strings concatenated with “\n”

Default:null

Example:

''  # Project Memory    ## Current Task  Implementing enhanced claude-code module for home-manager.    ## Key Files  - claude-code.nix: Main module implementation''

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.claude-code.settings

JSON configuration for Claude Code settings.json

Type:JSON value

Default:{ }

Example:

{  hooks = {    PostToolUse = [      {        hooks = [          {            command = "nix fmt $(jq -r '.tool_input.file_path' <<< '$CLAUDE_TOOL_INPUT')";            type = "command";          }        ];        matcher = "Edit|MultiEdit|Write";      }    ];    PreToolUse = [      {        hooks = [          {            command = "echo 'Running command: $CLAUDE_TOOL_INPUT'";            type = "command";          }        ];        matcher = "Bash";      }    ];  };  includeCoAuthoredBy = false;  model = "claude-3-5-sonnet-20241022";  permissions = {    additionalDirectories = [      "../docs/"    ];    allow = [      "Bash(git diff:*)"      "Edit"    ];    ask = [      "Bash(git push:*)"    ];    defaultMode = "acceptEdits";    deny = [      "WebFetch"      "Bash(curl:*)"      "Read(./.env)"      "Read(./secrets/**)"    ];    disableBypassPermissionsMode = "disable";  };  statusLine = {    command = "input=$(cat); echo \"[$(echo \"$input\" | jq -r '.model.display_name')] 📁 $(basename \"$(echo \"$input\" | jq -r '.workspace.current_dir')\")\"";    padding = 0;    type = "command";  };  theme = "dark";}

Declared by:

<home-manager/modules/programs/claude-code.nix>
programs.clock-rs.enable

Whether to enable clock-rs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/clock-rs.nix>
programs.clock-rs.package

The clock-rs package to use.

Type:null or package

Default:pkgs.clock-rs

Declared by:

<home-manager/modules/programs/clock-rs.nix>
programs.clock-rs.settings

The configuration file to be used for clock-rs

Type:TOML value

Default:{ }

Example:

general = {  color = "magenta";  interval = 250;  blink = true;  bold = true;};position = {  horizontal = "start";  vertical = "end";};date = {  fmt = "%A, %B %d, %Y";  use_12h = true;  utc = true;  hide_seconds = true;};

Declared by:

<home-manager/modules/programs/clock-rs.nix>
programs.cmus.enable

Whether to enable Enable cmus, the music player…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/cmus.nix>
programs.cmus.package

The cmus package to use.

Type:null or package

Default:pkgs.cmus

Declared by:

<home-manager/modules/programs/cmus.nix>
programs.cmus.extraConfig

Extra configuration to add to cmusrc.

Type:strings concatenated with “\n”

Default:""

Example:

''  set audio_backend = "mpd"  set status_display = "default"''

Declared by:

<home-manager/modules/programs/cmus.nix>
programs.cmus.theme

Select color theme. A list of available color themes can be foundhere:https://github.com/cmus/cmus/tree/master/data.

Type:strings concatenated with “\n”

Default:""

Example:"gruvbox"

Declared by:

<home-manager/modules/programs/cmus.nix>
programs.codex.enable

Whether to enable Lightweight coding agent that runs in your terminal.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/codex.nix>
programs.codex.package

The codex package to use.

Type:null or package

Default:pkgs.codex

Declared by:

<home-manager/modules/programs/codex.nix>
programs.codex.custom-instructions

Define custom guidance for the agents; this value is written to {file}~/.codex/AGENTS.md

Type:strings concatenated with “\n”

Default:""

Example:

''  - Always respond with emojis  - Only use git commands when explicitly requested''

Declared by:

<home-manager/modules/programs/codex.nix>
programs.codex.settings

Configuration written toCODEX_HOME/config.toml (0.2.0+)or~/.codex/config.yaml (<0.2.0). Per defaultCODEX_HOMEdefaults to ~/.codex.Seehttps://github.com/openai/codex/blob/main/codex-rs/config.md for supported values.

Type:null or TOML value

Default:{ }

Example:

{  model = "gemma3:latest";  model_provider = "ollama";  model_providers = {    ollama = {      name = "Ollama";      baseURL = "http://localhost:11434/v1";      envKey = "OLLAMA_API_KEY";    };  };}

Declared by:

<home-manager/modules/programs/codex.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>
programs.command-not-found.dbPath

Absolute path toprograms.sqlite. Bydefault this file will be provided by your channel(nixexprs.tar.xz).

Type:absolute path

Default:"/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite"

Declared by:

<home-manager/modules/programs/command-not-found>
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:null or package

Default:pkgs.comodoro

Declared by:

<home-manager/modules/programs/comodoro.nix>
programs.comodoro.settings

Comodoro configuration.Seehttps://pimalaya.org/comodoro/cli/configuration/ for supported values.

Type:open submodule of (TOML value)

Default:{ }

Declared by:

<home-manager/modules/programs/comodoro.nix>
programs.cudatext.enable

Whether to enable cudatext.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/cudatext.nix>
programs.cudatext.package

The cudatext package to use.

Type:null or package

Default:pkgs.cudatext

Declared by:

<home-manager/modules/programs/cudatext.nix>
programs.cudatext.hotkeys

Hotkeys for Cudatext. To see the available options, changethe settings in the dialog “Help | Command palette” andlook at the changes insettings/keys.json.

Type:JSON value

Default:{ }

Example:

{  "116" = {    name = "column select: page up";    s1 = [ ];  };  "153" = {    name = "delete char right (delete)";    s1 = [      "End"    ];  };  "2823" = {    name = "code tree: clear filter";    s1 = [      "Home"    ];  };  "655464" = {    name = "caret to line begin";    s1 = [ ];  };  "655465" = {    name = "caret to line end";    s1 = [ ];  };}

Declared by:

<home-manager/modules/programs/cudatext.nix>
programs.cudatext.lexerHotkeys

Hotkeys settings specific to each lexer.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  C = {    "153" = {      name = "delete char right (delete)";      s1 = [        "End"      ];    };    "655465" = {      name = "caret to line end";      s1 = [ ];    };  };  Python = {    "2823" = {      name = "code tree: clear filter";      s1 = [        "Home"      ];    };    "655464" = {      name = "caret to line begin";      s1 = [ ];    };  };}

Declared by:

<home-manager/modules/programs/cudatext.nix>
programs.cudatext.lexerSettings

User configuration settings specific to each lexer.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  C = {    numbers_style = 2;  };  Python = {    numbers_center = false;    numbers_style = 1;  };  Rust = {    numbers_center = false;    numbers_for_carets = true;    numbers_style = 2;  };}

Declared by:

<home-manager/modules/programs/cudatext.nix>
programs.cudatext.userSettings

User configuration for Cudatext.

Type:JSON value

Default:{ }

Example:

{  numbers_center = false;  numbers_for_carets = true;  numbers_style = 2;}

Declared by:

<home-manager/modules/programs/cudatext.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:null or 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 authorwhen you record a patch. If there are multiple entries, Darcswill 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.delta.enable

Whether to enable delta, a syntax highlighter for git diffs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/delta.nix>
programs.delta.enableGitIntegration

Whether to enable git integration for delta.

When enabled, delta will be configured as git’s pager and diff filter.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/delta.nix>
programs.delta.enableJujutsuIntegration

Whether to enable jujutsu integration for delta.

When enabled, delta will be configured as jujutsus’s pager, diff filter, and merge tool.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/delta.nix>
programs.delta.package

The delta package to use.

Type:package

Default:pkgs.delta

Declared by:

<home-manager/modules/programs/delta.nix>
programs.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/delta.nix>
programs.desktoppr.enable

Whether to enable managing the desktop picture/wallpaper on macOS using desktoppr.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.package

The desktoppr package to use.

Type:package

Default:pkgs.desktoppr

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings

The settings to set for desktoppr.

Type:open submodule of attribute set of anything

Default:{ }

Example:

{  picture = "/System/Library/Desktop Pictures/Solid Colors/Stone.png";}

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings.color

The background color that will be used behind the chosen picture whenit does not fill the screen.

Type:string matching the pattern [0-9a-fA-F]{6}

Default:"000000"

Example:"2E2E2E"

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings.picture

The path to the desktop picture/wallpaper to set. Can also be an HTTPor HTTPS URL to retrieve the picture from a remote URL at runtime.

Type:null or absolute path or string matching the pattern ^http(s)?://.*$

Default:null

Example:"/System/Library/Desktop Pictures/Solid Colors/Stone.png"

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings.scale

The scaling behavior to use when using an image.

Type:one of “fill”, “stretch”, “center”, “fit”

Default:"fill"

Example:"fit"

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings.setOnlyOnce

If false (the default), the desktop picture/wallpaper will be resetto the configured parameters on every system configuration change.

If true, the desktop picture/wallpaper will only be set when itdiffers from the one previously set. This allows the user to manuallychange the desktop picture/wallpaper after it has been set.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.desktoppr.settings.sha256

An optional SHA256 checksum of the desktop picture/wallpaper. If thespecified file does not match the checksum, it will not be set.

Type:null or string matching the pattern ^[a-f0-9]{64}$

Default:null

Example:"e1e594dec9343b721005a6bf06c48e0aac34ac9a77090e42b543bae9e1e0354a"

Declared by:

<home-manager/modules/programs/desktoppr.nix>
programs.diff-highlight.enable

Enable the contribdiff-highlight syntax highlighter.Seehttps://github.com/git/git/blob/master/contrib/diff-highlight/README,

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/diff-highlight.nix>
programs.diff-highlight.enableGitIntegration

Whether to enable git integration for diff-highlight.

When enabled, diff-highlight will be configured as git’s pager and diff filter.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/diff-highlight.nix>
programs.diff-highlight.pagerOpts

Arguments to be passed toless.

Type:list of string

Default:[ ]

Example:

[  "--tabs=4"  "-RFX"]

Declared by:

<home-manager/modules/programs/diff-highlight.nix>
programs.diff-so-fancy.enable

Whether to enable diff-so-fancy, a diff colorizer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/diff-so-fancy.nix>
programs.diff-so-fancy.enableGitIntegration

Whether to enable git integration for diff-so-fancy.

When enabled, diff-so-fancy will be configured as git’s pager and diff filter.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/diff-so-fancy.nix>
programs.diff-so-fancy.pagerOpts

Arguments to be passed toless.

Type:list of string

Default:

[  "--tabs=4"  "-RFX"]

Declared by:

<home-manager/modules/programs/diff-so-fancy.nix>
programs.diff-so-fancy.settings

Options to configure diff-so-fancy. Seehttps://github.com/so-fancy/diff-so-fancy#configuration for available options.

Type:attribute set of (string or boolean or signed integer)

Default:{ }

Example:

{  changeHunkIndicators = true;  markEmptyLines = true;  rulerWidth = 80;  stripLeadingSymbols = true;  useUnicodeRuler = true;}

Declared by:

<home-manager/modules/programs/diff-so-fancy.nix>
programs.difftastic.enable

Whether to enable difftastic, a structural diff tool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/difftastic.nix>
programs.difftastic.package

The difftastic package to use.

Type:package

Default:pkgs.difftastic

Declared by:

<home-manager/modules/programs/difftastic.nix>
programs.difftastic.git.enable

Whether to enable git integration for difftastic.

When enabled, difftastic will be configured as git’s external diff tool or difftooldepending on the value ofprograms.difftastic.git.diffToolMode.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/difftastic.nix>
programs.difftastic.git.diffToolMode

Whether to additionally configure difftastic as a git difftool.

Whenfalse, onlydiff.external is set (used forgit diff).Whentrue, bothdiff.external and difftool config are set (supporting bothgit diff andgit difftool).

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/difftastic.nix>
programs.difftastic.options

Configuration options fordifftastic. Seedifft --help

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  color = "dark";  sort-path = true;  tab-width = 8;}

Declared by:

<home-manager/modules/programs/difftastic.nix>
programs.dircolors.enable

Whether to manage.dir_colorsand setLS_COLORS.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/dircolors.nix>
programs.dircolors.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/dircolors.nix>
programs.dircolors.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/dircolors.nix>
programs.dircolors.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/dircolors.nix>
programs.dircolors.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/dircolors.nix>
programs.dircolors.package

The dircolors package to use.

Type:package

Default:pkgs.coreutils

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.Seedircolors --print-databasefor 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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.enableFishIntegration

Whether to enable Fish integration.

Note, enabling the direnv module will always activate its functionalityfor 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:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

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.

Seedirenv.toml(1).for the full list of options.

Type:TOML value

Default:{ }

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.mise.enable

Whether to enablemise,integration of use_mise for direnv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.mise.package

The mise package to use.

Type:package

Default:pkgs.mise

Declared by:

<home-manager/modules/programs/direnv.nix>
programs.direnv.nix-direnv.enable

Whether to enablenix-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:null or 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:null or package

Default:pkgs.discord

Declared by:

<home-manager/modules/programs/discocss.nix>
programs.distrobox.enable

Whether to enable distrobox.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/distrobox.nix>
programs.distrobox.enableSystemdUnit

Whatever to enable a Systemd Unit that automatically rebuilds yourcontainers when changes are detected.

Type:boolean

Default:"config.programs.distrobox.containers != { } && config.programs.distrobox.package != null"

Example:false

Declared by:

<home-manager/modules/programs/distrobox.nix>
programs.distrobox.package

The distrobox package to use.

Type:null or package

Default:pkgs.distrobox

Declared by:

<home-manager/modules/programs/distrobox.nix>
programs.distrobox.containers

A set of containers and all its respective configurations. Each option can be either abool, string or a list of strings. If passed a list, the option will be repeated for each element.See common-debian in the example config. All the available options for the containers can be foundin the distrobox-assemble documentation athttps://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-assemble.md.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default:{ }

Example:

{  common-debian = {    additional_packages = "git";    entry = true;    image = "debian:13";    init_hooks = [      "ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/docker"      "ln -sf /usr/bin/distrobox-host-exec /usr/local/bin/docker-compose"    ];  };  office = {    additional_packages = "libreoffice onlyoffice";    clone = "common-debian";    entry = true;  };  python-project = {    additional_packages = "python3 git";    image = "fedora:40";    init_hooks = "pip3 install numpy pandas torch torchvision";  };  random-things = {    clone = "common-debian";    entry = false;  };}

Declared by:

<home-manager/modules/programs/distrobox.nix>
programs.distrobox.settings

Configuration settings for Distrobox. All the available options can be found here:https://github.com/89luca89/distrobox?tab=readme-ov-file#configure-distrobox

Type:attribute set of (INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default:{ }

Example:

{  container_additional_volumes = "/example:/example1 /example2:/example3:ro";  container_always_pull = "1";  container_generate_entry = 0;  container_image_default = "registry.opensuse.org/opensuse/toolbox:latest";  container_init_hook = "~/.local/distrobox/a_custom_default_init_hook.sh";  container_manager = "docker";  container_manager_additional_flags = "--env-file /path/to/file --custom-flag";  container_name_default = "test-name-1";  container_pre_init_hook = "~/a_custom_default_pre_init_hook.sh";  container_user_custom_home = "$HOME/.local/share/container-home-test";  non_interactive = "1";  skip_workdir = "0";}

Declared by:

<home-manager/modules/programs/distrobox.nix>
programs.docker-cli.enable

Whether to enable management of docker client config.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/docker-cli.nix>
programs.docker-cli.configDir

Folder relative to the user’s home directory where the Docker CLI settings should be stored.

Type:string

Default:".docker"

Declared by:

<home-manager/modules/programs/docker-cli.nix>
programs.docker-cli.contexts

Attribute set of Docker context configurations. Each attribute name becomes the context Name; overriding requires lib.mkForce. See:<https://docs.docker.com/engine/manage-resources/contexts/

Type:attribute set of (open submodule of (JSON value))

Default:{ }

Example:

{  example = {    Metadata = { Description = "example1"; };    Endpoints.docker.Host = "unix://example2";  };}

Declared by:

<home-manager/modules/programs/docker-cli.nix>
programs.docker-cli.contexts.<name>.Name

Name of the Docker context. Defaults to the attribute name (the <name> in programs.docker-cli.contexts.<name>). Overriding requires lib.mkForce.

Type:string(read only)

Declared by:

<home-manager/modules/programs/docker-cli.nix>
programs.docker-cli.settings

Available configuration options for the Docker CLI see:<https://docs.docker.com/reference/cli/docker/#docker-cli-configuration-file-configjson-properties

Type:JSON value

Default:{ }

Example:

{  "proxies" = {    "default" = {      "httpProxy" = "http://proxy.example.org:3128";      "httpsProxy" = "http://proxy.example.org:3128";      "noProxy" = "localhost";    };  };

Declared by:

<home-manager/modules/programs/docker-cli.nix>
programs.earthly.enable

Whether to enable earthly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/earthly.nix>
programs.earthly.package

The earthly package to use.

Type:null or package

Default:pkgs.earthly

Declared by:

<home-manager/modules/programs/earthly.nix>
programs.earthly.settings

Configuration written to ~/.earthly/config.yml file.See https://docs.earthly.dev/docs/earthly-config for supported values.

Type:YAML 1.1 value

Default:{ }

Example:

global = {  disable_analytics = true;  disable_log_sharing = true;};

Declared by:

<home-manager/modules/programs/earthly.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 isnecessary 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 use.

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.element-desktop.enable

Whether to enable element-desktop.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/element-desktop.nix>
programs.element-desktop.package

The element-desktop package to use.

Type:null or package

Default:pkgs.element-desktop

Declared by:

<home-manager/modules/programs/element-desktop.nix>
programs.element-desktop.profiles

Extra profiles for Element. Those can be accessed using the“–profile $NAME” flag. The same warning and options applyhere.

Type:attribute set of (JSON value)

Default:{ }

Example:

''  {    work = {      default_server_config = {        "m.homeserver" = {            base_url = "https://matrix-client.matrix.org";            server_name = "matrix.org";        };        "m.identity_server" = {            base_url = "https://vector.im";        };      };    };    home = {      disable_custom_urls = false;      disable_guests = false;      disable_login_language_selector = false;      disable_3pid_login = false;    };    other = {      force_verification = false;      brand = "Element";      integrations_ui_url = "https://scalar.vector.im/";      integrations_rest_url = "https://scalar.vector.im/api";    };  }''

Declared by:

<home-manager/modules/programs/element-desktop.nix>
programs.element-desktop.settings

Configuration settings for Element’s default profiles.WARNING: Element doesn’t combine this config with the defaults,so make sure to configure most options. For details about thisbehavior and available configuration options see:https://github.com/element-hq/element-web/blob/develop/docs/config.md

Type:JSON value

Default:{ }

Example:

''  {    default_server_config = {      "m.homeserver" = {          base_url = "https://matrix-client.matrix.org";          server_name = "matrix.org";      };      "m.identity_server" = {          base_url = "https://vector.im";      };    };    disable_custom_urls = false;    disable_guests = false;    disable_login_language_selector = false;    disable_3pid_login = false;    force_verification = false;    brand = "Element";    integrations_ui_url = "https://scalar.vector.im/";    integrations_rest_url = "https://scalar.vector.im/api";  }''

Declared by:

<home-manager/modules/programs/element-desktop.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. Seehttps://www.gnu.org/software/emacs/manual/html_node/elisp/Init-File.htmlfor more.

Note, theinhibit-startup-message Emacs optioncannot be set here since Emacs disallows setting it from the defaultinitialization 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 ofavailable 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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/eww.nix>
programs.eww.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/eww.nix>
programs.eww.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/eww.nix>
programs.eww.package

The eww package to use.

Type:package

Default:pkgs.eww

Declared by:

<home-manager/modules/programs/eww.nix>
programs.eww.configDir

The directory that gets symlinked to$XDG_CONFIG_HOME/eww.

Type:null or absolute path

Default:null

Example:./eww-config-dir

Declared by:

<home-manager/modules/programs/eww.nix>
programs.eza.enable

Whether to enable eza, a modern replacement forls.

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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.enableIonIntegration

Whether to enable Ion integration.

Type:boolean

Default:home.shell.enableIonIntegration

Example:false

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:true

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.package

The eza package to use.

Type:null or package

Default:pkgs.eza

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.colors

Use terminal colors in output (--color argument).

Type:one of <null>, “auto”, “always”, “never”

Default:null

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).

Note, the support for Boolean values is deprecated.Setting this option totrue corresponds to--icons=auto.

Type:one of <null>, true, false, “auto”, “always”, “never”

Default:null

Declared by:

<home-manager/modules/programs/eza.nix>
programs.eza.theme

Written to$XDG_CONFIG_HOME/eza/theme.yml

Seehttps://github.com/eza-community/eza#custom-themes

Type:YAML 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/eza.nix>
programs.fabric-ai.enable

Whether to enable Fabric AI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fabric-ai.nix>
programs.fabric-ai.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/fabric-ai.nix>
programs.fabric-ai.enablePatternsAliases

Whether to enable aliases for all Fabric’s patterns.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fabric-ai.nix>
programs.fabric-ai.enableYtAlias

Whether to enable Fabric’syt alias.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/fabric-ai.nix>
programs.fabric-ai.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/fabric-ai.nix>
programs.fabric-ai.package

The fabric-ai package to use.

Type:null or package

Default:pkgs.fabric-ai

Declared by:

<home-manager/modules/programs/fabric-ai.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:null or package

Default:pkgs.fastfetch

Declared by:

<home-manager/modules/programs/fastfetch.nix>
programs.fastfetch.settings

Configuration written to$XDG_CONFIG_HOME/fastfetch/config.jsonc.Seehttps://github.com/fastfetch-cli/fastfetch/wiki/Json-Schemafor 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 tofind.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fd.nix>
programs.fd.package

The fd package to use.

Type:null or 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:null or 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 anaction, set its value to null. If you want to bind multiple buttons toan action, set its value to a list.Seehttps://man.finalrewind.org/1/feh/#BUTTONS_CONFIG_SYNTAX fordefault 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 keybindingset its value to null. If you want to bind multiple keys to an action,set its value to a list.Seehttps://man.finalrewind.org/1/feh/#KEYS_CONFIG_SYNTAX fordefault 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.feh.themes

Define themes for feh.Seehttps://man.finalrewind.org/1/feh/#THEMES_CONFIG_SYNTAX forimportant guidelines and limitations related to theme configuration.

Type:attribute set of list of string

Default:{ }

Example:

{  booth = [    "--full-screen"    "--hide-pointer"    "--slideshow-delay"    "20"  ];  example = [    "--info"    "foo bar"  ];  feh = [    "--image-bg"    "black"  ];  imagemap = [    "-rVq"    "--thumb-width"    "40"    "--thumb-height"    "30"    "--index-info"    "%n\\n%wx%h"  ];  present = [    "--full-screen"    "--sort"    "name"    "--hide-pointer"  ];  webcam = [    "--multiwindow"    "--reload"    "20"  ];}

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>
programs.firefox.enableGnomeExtensions

Whether to enable the GNOME Shell native host connector. Note, youalso need to set the NixOS optionservices.gnome.gnome-browser-connector.enable totrue.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.package

The Firefox package to use. If state version ≥ 19.09 thenthis should be a wrapped Firefox package. For earlier stateversions it should be an unwrapped Firefox package.Set tonull 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>
programs.firefox.darwinDefaultsId

The id for the darwin defaults in order to set policies

Type:null or string

Default:"org.mozilla.firefox.plist"

Example:"org.mozilla.firefox.plist"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.finalPackage

Resulting Firefox package.

Type:null or package(read only)

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.languagePacks

The language packs to install. Available language codes can be foundon the releases page:https://releases.mozilla.org/pub/firefox/releases/${version}/linux-x86_64/xpi/,replacing${version} with the version of Firefox you have. Ifthe version string of your Firefox derivative diverts from the upstreamversion, try setting therelease option.

Type:list of string

Default:[ ]

Example:

[  "en-GB"  "de"]

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.nativeMessagingHosts

Additional packages containing native messaging hosts that should bemade available to Firefox extensions.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.pkcs11Modules

Additional packages to be loaded as PKCS #11 modules in Firefox.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.policies

See list of policies.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  BlockAboutConfig = true;  DefaultDownloadDirectory = "\${home}/Downloads";  ExtensionSettings = {    "uBlock0@raymondhill.net" = {      default_area = "menupanel";      install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";      installation_mode = "force_installed";      private_browsing = true;    };  };}

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles

Attribute set of Firefox profiles.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.bookmarks

Declarative bookmarks.

Type:(submodule) or ((list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) convertible to it) convertible to it

Default:{ }

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.bookmarks.configFile

Configuration file to define custom bookmarks.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.bookmarks.force

Whether to force override existing custom bookmarks.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.bookmarks.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.firefox.profiles.<name>.bookmarks.settings

Custom bookmarks.

Type:(list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) 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";  }  "separator"  {    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>
programs.firefox.profiles.<name>.containers

Attribute set of container configurations. SeeMulti-AccountContainersfor 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>
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>
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>
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>
programs.firefox.profiles.<name>.containers.<name>.name

Container name, e.g., shopping.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.containersForce

Whether to force replace the existing containers configuration.This is recommended since Firefox will replace the symlink onevery launch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions

Submodule for installing and configuring extensions.

Type:(submodule) or (list of package) convertible to it

Default:{ }

Example:

{  packages = with pkgs.nur.repos.rycee.firefox-addons; [    ublock-origin  ];  settings."uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };}

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.packages

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 extensionsinside ‹name› after the first installation.

To automatically enable extensions add"extensions.autoDisableScopes" = 0;toprograms.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>
programs.firefox.profiles.<name>.extensions.exactPermissions

When enabled,programs.firefox.profiles.<profile>.extensions.settings.<extensionID>.permissionsmust specify the exact set of permissions that theextension will request.

This means that if the authorized permissions arebroader than what the extension requests, theassertion will fail.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.exhaustivePermissions

When enabled, the user must authorize requestedpermissions for all extensions fromprograms.firefox.profiles.<profile>.extensions.packagesinprograms.firefox.profiles.<profile>.extensions.settings.<extensionID>.permissions

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.force

Whether to override all previous firefox settings.

This is required when usingsettings.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.settings

Attribute set of options for each extension.The keys of the attribute set consist of the ID of the extensionor its UUID wrapped in curly braces.

Type:attribute set of (submodule)

Default:{ }

Example:

{  # Example with uBlock origin's extensionID  "uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };  # Example with Stylus' UUID-form extensionID  "{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}".settings = {    dbInChromeStorage = true; # required for Stylus  }}

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.settings.<name>.force

Forcibly override any existing configuration forthis extension.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.settings.<name>.permissions

Allowed permissions for this extension. Seehttps://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissionsfor a list of relevant permissions.

Type:null or (list of string)

Default:"Any permissions"

Example:

[  "activeTab"]

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extensions.settings.<name>.settings

Json formatted options for this extension.

Type:attribute set of (JSON value)

Default:{ }

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.extraConfig

Extra preferences to add touser.js.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/firefox>
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>
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>
programs.firefox.profiles.<name>.name

Profile name.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.path

Profile path.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.preConfig

Extra preferences to add touser.js, beforeprograms.firefox.profiles.<name>.settings.

Useprograms.firefox.profiles.<name>.extraConfig, unlessyou want to overwrite inprograms.firefox.profiles.<name>.settings, then use thisoption.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.search

Declarative search engine configuration.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.search.default

The default search engine used in the address bar and searchbar.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.search.engines

Attribute set of search engine configurations. Engines thatonly havemetaData specified will be treated as builtinto Firefox.

SeeSearchEngine.jsmin Firefox’s source for available options. We maintain amapping to let you specify all options in the referenced linkwithout underscores, but it may fall out of date with futureoptions.

Note,icon is also a special option added by HomeManager to make it convenient to specify absolute icon paths.

Type:attribute set of attribute set of (JSON value)

Default:{ }

Example:

{  nix-packages = {    name = "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 = {    name = "NixOS Wiki";    urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];    iconMapObj."16" = "https://wiki.nixos.org/favicon.ico";    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>
programs.firefox.profiles.<name>.search.force

Whether to force replace the existing searchconfiguration. This is recommended since Firefox willreplace the symlink for the search configuration on everylaunch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.search.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.firefox.profiles.<name>.search.order

The order the search engines are listed in. Any engines thataren’t included in this list will be listed after these in anunspecified order.

Type:list of string

Default:[ ]

Example:

[  "ddg"  "google"]

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.search.privateDefault

The default search engine used in the Private Browsing.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/firefox>
programs.firefox.profiles.<name>.settings

Attribute set of Firefox preferences.

Firefox only supports int, bool, and string types forpreferences, but home-manager will automaticallyconvert all other JSON-compatible values into strings.

Type:attribute set of (Firefox 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>
programs.firefox.profiles.<name>.userChrome

Custom Firefox user chrome CSS.

Type:strings concatenated with “\n” or absolute path

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>
programs.firefox.profiles.<name>.userContent

Custom Firefox user content CSS.

Type:strings concatenated with “\n” or absolute path

Default:""

Example:

''  /* Hide scrollbar in FF Quantum */  *{scrollbar-width:none !important}''

Declared by:

<home-manager/modules/programs/firefox>
programs.firefoxpwa.enable

Whether to enable Progressive Web Apps for Firefox.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.package

The firefoxpwa package to use.

Type:null or package

Default:pkgs.firefoxpwa

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles

Attribute set of profile options. The keys of that attribute set consist ofULIDs. A ULID is made of 26 characters, each of which is one of‘0123456789ABCDEFGHJKMNPQRSTVWXYZ’ (Excluding I, L, O and U). Seehttps://github.com/ulid/spec?tab=readme-ov-file#canonical-string-representation.

Type:attribute set of (submodule)

Default:{ }

Example:

{  "0123456789ABCDEFGHJKMNPQRSTVWXYZ".sites."ZYXWVTSRQPNMKJHGFEDCBA9876543210" = {    name = "MDN Web Docs";    url = "https://developer.mozilla.org/";    manifestUrl = "https://developer.mozilla.org/manifest.f42880861b394dd4dc9b.json";    desktopEntry.icon = pkgs.fetchurl {      url = "https://developer.mozilla.org/favicon-192x192.png";      sha256 = "0p8zgf2ba48l2pq1gjcffwzmd9kfmj9qc0v7zpwf2qd54fndifxr";    };  };}

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.name

Name of the profile.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.settings

Settings for this profile. Seehttps://github.com/filips123/PWAsForFirefox/blob/cb4fc76873cc51129d9290754768e6a340c521b2/native/src/components/profile.rs#L13-L34for a list of available options.

Type:JSON value

Default:{ }

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites

Attribute set of site options for this profile. The keys of that attribute setconsist of ULIDs. A ULID is made of 26 characters, each of which is one of‘0123456789ABCDEFGHJKMNPQRSTVWXYZ’ (Excluding I, L, O and U). Seehttps://github.com/ulid/spec?tab=readme-ov-file#canonical-string-representation.Site ULIDs must be unique across profiles.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.desktopEntry.enable

Whether to enable the desktop entry for this site.

Type:boolean

Default:"true if host platform is Linux"

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.desktopEntry.categories

Categories in which the entry should be shown in a menu.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.desktopEntry.icon

Icon to display in file manager, menus, etc.

Type:null or string or absolute path

Default:null

Example:

pkgs.fetchurl {  url = "https://developer.mozilla.org/favicon-192x192.png";  sha256 = "0p8zgf2ba48l2pq1gjcffwzmd9kfmj9qc0v7zpwf2qd54fndifxr";}

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.manifestUrl

URL of the site’s web app manifest.

Type:string

Example:"https://developer.mozilla.org/manifest.f42880861b394dd4dc9b.json"

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.name

Name of the site.

Type:string

Default:"‹name›"

Example:"MDN Web Docs"

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.settings

Settings for this site. Seehttps://github.com/filips123/PWAsForFirefox/blob/cb4fc76873cc51129d9290754768e6a340c521b2/native/src/components/site.rs#L98-L115for a list of available options.

Type:JSON value

Default:{ }

Example:

{  config = {    manifest_url = "https://developer.mozilla.org/manifest.f42880861b394dd4dc9b.json";  };}

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.profiles.<name>.sites.<name>.url

Start URL of the site.

Type:string

Example:"https://developer.mozilla.org/"

Declared by:

<home-manager/modules/programs/firefoxpwa.nix>
programs.firefoxpwa.settings

Settings to be written to the configuration file. Seehttps://github.com/filips123/PWAsForFirefox/blob/cb4fc76873cc51129d9290754768e6a340c521b2/native/src/storage.rs#L61-L77for a list of available options.

Type:JSON value

Default:{ }

Declared by:

<home-manager/modules/programs/firefoxpwa.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 use.

Type:package

Default:pkgs.fish

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds

Manage key bindings

Type:attribute set of (submodule)

Default:{ }

Example:

{  "alt-shift-b".command = "fish_commandline_append bat";  "alt-s".erase = true;  "alt-s".operate = "preset";}

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.enable

Whether to enable enable the bind. Set false if you want to ignore the bind.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.command

command that will be execute

Type:string or list of string (optional when erase is set to true)

Default:null

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.erase

Whether to enable remove bind.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.mode

Specify the bind mode that the bind is used in

Type:null or one of “default”, “insert”, “paste”

Default:null

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.operate

Operate on preset bindings or user bindings

Type:null or one of “preset”, “user”

Default:null

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.repaint

Whether to enable redraw prompt after command.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.setsMode

Change current mode after bind is executed

Type:null or one of “default”, “insert”, “paste”

Default:null

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.binds.<name>.silent

Whether to enable Operate silently.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.completions

Custom fish completions. For more information seehttps://fishshell.com/docs/current/completions.html.

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

Default:{ }

Example:

{  my-prog = ''    complete -c myprog -s o -l output  '';  my-app = {    body = ''      complete -c myapp -s -v    '';  };}

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.functions

Basic functions to add to fish. For more information seehttps://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.generateCompletions

Whether to enable the automatic generation of completions based upon installed man pages.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.interactiveShellInit

Shell script code called during interactive fish shellinitialisation.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.loginShellInit

Shell script code called during fish login shellinitialisation.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.plugins

The plugins to source inconf.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 andthe completion path. Theinit.fish andkey_binding.fish files are sourced ifthey exist.

Type:absolute path

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.preferAbbrs

If enabled, abbreviations will be preferred over aliases whenother modules define aliases for fish.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.shellAbbrs

An attribute set that maps aliases (the top level attribute namesin this option) to abbreviations. Abbreviations are expanded withthe 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 namesin 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 shellinitialisation.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/fish.nix>
programs.fish.shellInitLast

Shell script code called during interactive fish shellinitialisation, 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.floorp.enable

Whether to enable Floorp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.enableGnomeExtensions

Whether to enable the GNOME Shell native host connector. Note, youalso need to set the NixOS optionservices.gnome.gnome-browser-connector.enable totrue.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.package

The Floorp package to use. If state version ≥ 19.09 thenthis should be a wrapped Floorp package. For earlier stateversions it should be an unwrapped Floorp package.Set tonull to disable installing Floorp.

Type:null or package

Default:pkgs.floorp-bin

Example:

pkgs.floorp-bin.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/floorp.nix>
programs.floorp.darwinDefaultsId

The id for the darwin defaults in order to set policies

Type:null or string

Default:null

Example:"com.developer.app"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.finalPackage

Resulting Floorp package.

Type:null or package(read only)

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.languagePacks

The language packs to install. Available language codes can be foundon the releases page:https://releases.mozilla.org/pub/firefox/releases/${version}/linux-x86_64/xpi/,replacing${version} with the version of Floorp you have. Ifthe version string of your Firefox derivative diverts from the upstreamversion, try setting therelease option.

Type:list of string

Default:[ ]

Example:

[  "en-GB"  "de"]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.nativeMessagingHosts

Additional packages containing native messaging hosts that should bemade available to Floorp extensions.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.pkcs11Modules

Additional packages to be loaded as PKCS #11 modules in Firefox.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.policies

See list of policies.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  BlockAboutConfig = true;  DefaultDownloadDirectory = "\${home}/Downloads";  ExtensionSettings = {    "uBlock0@raymondhill.net" = {      default_area = "menupanel";      install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";      installation_mode = "force_installed";      private_browsing = true;    };  };}

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles

Attribute set of Floorp profiles.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.bookmarks

Declarative bookmarks.

Type:(submodule) or ((list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) convertible to it) convertible to it

Default:{ }

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.bookmarks.configFile

Configuration file to define custom bookmarks.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.bookmarks.force

Whether to force override existing custom bookmarks.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.bookmarks.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.floorp.profiles.<name>.bookmarks.settings

Custom bookmarks.

Type:(list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) 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";  }  "separator"  {    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/floorp.nix>
programs.floorp.profiles.<name>.containers

Attribute set of container configurations. SeeMulti-AccountContainersfor 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/floorp.nix>
programs.floorp.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/floorp.nix>
programs.floorp.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/floorp.nix>
programs.floorp.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/floorp.nix>
programs.floorp.profiles.<name>.containers.<name>.name

Container name, e.g., shopping.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.containersForce

Whether to force replace the existing containers configuration.This is recommended since Floorp will replace the symlink onevery launch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions

Submodule for installing and configuring extensions.

Type:(submodule) or (list of package) convertible to it

Default:{ }

Example:

{  packages = with pkgs.nur.repos.rycee.firefox-addons; [    ublock-origin  ];  settings."uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };}

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.packages

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 extensionsinside ‹name› after the first installation.

To automatically enable extensions add"extensions.autoDisableScopes" = 0;toprograms.floorp.profiles.<profile>.settings

Type:list of package

Default:[ ]

Example:

with pkgs.nur.repos.rycee.firefox-addons; [  privacy-badger]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.exactPermissions

When enabled,programs.floorp.profiles.<profile>.extensions.settings.<extensionID>.permissionsmust specify the exact set of permissions that theextension will request.

This means that if the authorized permissions arebroader than what the extension requests, theassertion will fail.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.exhaustivePermissions

When enabled, the user must authorize requestedpermissions for all extensions fromprograms.floorp.profiles.<profile>.extensions.packagesinprograms.floorp.profiles.<profile>.extensions.settings.<extensionID>.permissions

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.force

Whether to override all previous firefox settings.

This is required when usingsettings.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.settings

Attribute set of options for each extension.The keys of the attribute set consist of the ID of the extensionor its UUID wrapped in curly braces.

Type:attribute set of (submodule)

Default:{ }

Example:

{  # Example with uBlock origin's extensionID  "uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };  # Example with Stylus' UUID-form extensionID  "{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}".settings = {    dbInChromeStorage = true; # required for Stylus  }}

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.settings.<name>.force

Forcibly override any existing configuration forthis extension.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.settings.<name>.permissions

Allowed permissions for this extension. Seehttps://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissionsfor a list of relevant permissions.

Type:null or (list of string)

Default:"Any permissions"

Example:

[  "activeTab"]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extensions.settings.<name>.settings

Json formatted options for this extension.

Type:attribute set of (JSON value)

Default:{ }

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.extraConfig

Extra preferences to add touser.js.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.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/floorp.nix>
programs.floorp.profiles.<name>.isDefault

Whether this is a default profile.

Type:boolean

Default:"true if profile ID is 0"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.name

Profile name.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.path

Profile path.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.preConfig

Extra preferences to add touser.js, beforeprograms.firefox.profiles.<name>.settings.

Useprograms.firefox.profiles.<name>.extraConfig, unlessyou want to overwrite inprograms.firefox.profiles.<name>.settings, then use thisoption.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search

Declarative search engine configuration.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search.default

The default search engine used in the address bar and searchbar.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search.engines

Attribute set of search engine configurations. Engines thatonly havemetaData specified will be treated as builtinto Floorp.

SeeSearchEngine.jsmin Floorp’s source for available options. We maintain amapping to let you specify all options in the referenced linkwithout underscores, but it may fall out of date with futureoptions.

Note,icon is also a special option added by HomeManager to make it convenient to specify absolute icon paths.

Type:attribute set of attribute set of (JSON value)

Default:{ }

Example:

{  nix-packages = {    name = "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 = {    name = "NixOS Wiki";    urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];    iconMapObj."16" = "https://wiki.nixos.org/favicon.ico";    definedAliases = [ "@nw" ];  };  bing.metaData.hidden = true;  google.metaData.alias = "@g"; # builtin engines only support specifying one additional alias}

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search.force

Whether to force replace the existing searchconfiguration. This is recommended since Floorp willreplace the symlink for the search configuration on everylaunch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.floorp.profiles.<name>.search.order

The order the search engines are listed in. Any engines thataren’t included in this list will be listed after these in anunspecified order.

Type:list of string

Default:[ ]

Example:

[  "ddg"  "google"]

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.search.privateDefault

The default search engine used in the Private Browsing.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.floorp.profiles.<name>.settings

Attribute set of Floorp preferences.

Floorp only supports int, bool, and string types forpreferences, but home-manager will automaticallyconvert all other JSON-compatible values into strings.

Type:attribute set of (Floorp 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/floorp.nix>
programs.floorp.profiles.<name>.userChrome

Custom Floorp user chrome CSS.

Type:strings concatenated with “\n” or absolute path

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/floorp.nix>
programs.floorp.profiles.<name>.userContent

Custom Floorp user content CSS.

Type:strings concatenated with “\n” or absolute path

Default:""

Example:

''  /* Hide scrollbar in FF Quantum */  *{scrollbar-width:none !important}''

Declared by:

<home-manager/modules/programs/floorp.nix>
programs.foliate.enable

Whether to enable Foliate.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/foliate.nix>
programs.foliate.package

The foliate package to use.

Type:null or package

Default:pkgs.foliate

Declared by:

<home-manager/modules/programs/foliate.nix>
programs.foliate.settings

Added toconfig.dconf.settings undercom/github/johnfactotum/Foliate,the scheme is defined athttps://github.com/johnfactotum/foliate/blob/gtk4/data/com.github.johnfactotum.Foliate.gschema.xml

Type:attribute set of ((GVariant value) or attribute set of (GVariant value))

Default:{ }

Example:

{  myTheme = {    color-scheme = 0;    library = {      view-mode = "grid";      show-covers = true;    };    "viewer/view" = {      theme = "myTheme.json";    };    "viewer/font" = {      monospace = "Maple Mono";      default-size = 12;    };  };}

Declared by:

<home-manager/modules/programs/foliate.nix>
programs.foliate.themes

Each theme is written to$XDG_CONFIG_HOME/com.github.johnfactotum.Foliate/themes/NAME.json.Seehttps://github.com/johnfactotum/foliate/blob/gtk4/src/themes.jsfor implementation of themes in Foliate.

Type:attribute set of (JSON value or string or absolute path)

Default:{ }

Example:

{  label = "My Theme";  light = {    fg = "#89b4fa";    bg = "#1e1e2e";    link = "#89b4fa";  };  dark = { };}

Declared by:

<home-manager/modules/programs/foliate.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 use.

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. Seehttps://codeberg.org/dnkl/foot/src/branch/master/foot.inifor a list of available options.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

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.formiko.enable

Whether to enable formiko.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/formiko.nix>
programs.formiko.package

The formiko package to use.

Type:null or package

Default:pkgs.formiko

Declared by:

<home-manager/modules/programs/formiko.nix>
programs.formiko.settings

Configuration settings for formiko. All the available optionscan be found by looking at ~/.config/formiko.ini.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  editor = {    auto_indent = false;    check_spelling = false;    period_save = true;  };  main = {    auto_scroll = true;    parser = "json";    preview = 0;    writer = "tiny";  };}

Declared by:

<home-manager/modules/programs/formiko.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:null or 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 theGUI and observing the changes insettings.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:null or 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. Seefuzzel.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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/fzf.nix>
programs.fzf.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/fzf.nix>
programs.fzf.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/fzf.nix>
programs.fzf.package

The fzf package to use.

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 theALT-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 toFZF_DEFAULT_OPTS. Seehttps://github.com/junegunn/fzf/wiki/Color-schemesfor 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 fzfwhen 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 theCTRL-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 settingFZF_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

Ifprograms.fzf.tmux.enableShellIntegration is set totrue,shell integration will use these options for fzf-tmux.Seefzf-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:null or 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. Seehttps://github.com/mikf/gallery-dl#configurationfor supported values.

Type:JSON value

Default:{ }

Example:

{  extractor.base-directory = "~/Downloads";}

Declared by:

<home-manager/modules/programs/gallery-dl.nix>
programs.gcc.enable

Whether to enablegcc

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/gcc.nix>
programs.gcc.package

The gcc package to use.

Type:null or package

Default:pkgs.gcc

Declared by:

<home-manager/modules/programs/gcc.nix>
programs.gcc.colors

Settings forGCC_COLORS

Type:attribute set of string

Default:{ }

Example:

{  error = "01;31";}

Declared by:

<home-manager/modules/programs/gcc.nix>
programs.gemini-cli.enable

Whether to enable gemini-cli.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.package

The gemini-cli package to use.

Type:null or package

Default:pkgs.gemini-cli

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.commands

An attribute set of custom commands that will be globally available.The name of the attribute set will be the name of each command.You may use subdirectories to create namespaced commands, such asgit/fix becoming/git:fix.See https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/commands.md#custom-commands for more information.

Type:attribute set of (open submodule of string)

Default:{ }

Example:

changelog = {  prompt =    ''    Your task is to parse the `<version>`, `<change_type>`, and `<message>` from their input and use the `write_file` tool to correctly update the `CHANGELOG.md` file.    '';  description = "Adds a new entry to the project's CHANGELOG.md file.";};"git/fix" = { # Becomes /git:fix  prompt = "Please analyze the staged git changes and provide a code fix for the issue described here: {{args}}.";  description = "Generates a fix for a given GitHub issue.";};

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.commands.<name>.description

A brief, one-line description of what the command does.This text will be displayed next to your command in the /help menu.If you omit this field, a generic description will be generated from the filename.

Type:string

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.commands.<name>.prompt

The prompt that will be sent to the Gemini model when the command is executed.This can be a single-line or multi-line string.The special placeholder {{args}} will be replaced with the text the user typed after the command name.

Type:string

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.context

An attribute set of context files to create in~/.gemini/.The attribute name becomes the filename with.md extension automatically added.The value is either inline content or a path to a file.

Note: You can customize which context file names gemini-cli looks for by settingsettings.context.fileName. For example:

settings = {  context.fileName = ["AGENTS.md", "CONTEXT.md", "GEMINI.md"];};

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Example:

{  GEMINI = ''    # Global Context    You are a helpful AI assistant for software development.    ## Coding Standards    - Follow consistent code style    - Write clear comments    - Test your changes  '';  AGENTS = ./path/to/agents.md;  CONTEXT = ''    Additional context instructions here.  '';}

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.defaultModel

The default model to use for the CLI.Will be set as $GEMINI_MODEL.

Type:string

Default:"gemini-2.5-pro"

Example:"gemini-2.5-flash"

Declared by:

<home-manager/modules/programs/gemini-cli.nix>
programs.gemini-cli.settings

JSON config for gemini-cli

Type:JSON value

Default:{ }

Example:

{  "theme": "Default",  "vimMode": true,  "preferredEditor": "nvim",  "autoAccept": true}

Declared by:

<home-manager/modules/programs/gemini-cli.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

The gh package to use.

Type:package

Default:pkgs.gh

Declared by:

<home-manager/modules/programs/gh.nix>
programs.gh.extensions

gh extensions, seehttps://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.hosts

Host-specific configuration written to$XDG_CONFIG_HOME/gh/hosts.yml.

Type:YAML 1.1 value

Default:{ }

Example:

{  "github.com" = {    user = "<your_username>";  };}

Declared by:

<home-manager/modules/programs/gh.nix>
programs.gh.settings

Configuration written to$XDG_CONFIG_HOME/gh/config.yml.

Type:open submodule of (YAML 1.1 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:null or 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 1.1 value

Default:{ }

Example:

{  prSections = [{    title = "My Pull Requests";    filters = "is:open author:@me";  }];}

Declared by:

<home-manager/modules/programs/gh-dash.nix>
programs.ghostty.enable

Whether to enable Ghostty.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.enableBashIntegration

Whether to enable Bash integration.

This ensures that shell integration works in more scenarios, such asswitching shells within Ghostty. But it is not needed to have shellintegration.

Seehttps://ghostty.org/docs/features/shell-integration#manual-shell-integration-setupfor more information.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.enableFishIntegration

Whether to enable Fish integration.

This ensures that shell integration works in more scenarios, such asswitching shells within Ghostty. But it is not needed to have shellintegration.

Seehttps://ghostty.org/docs/features/shell-integration#manual-shell-integration-setupfor more information.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.enableZshIntegration

Whether to enable Zsh integration.

This ensures that shell integration works in more scenarios, such asswitching shells within Ghostty. But it is not needed to have shellintegration.

Seehttps://ghostty.org/docs/features/shell-integration#manual-shell-integration-setupfor more information.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.package

The ghostty package to use. Set programs.ghostty.package to null on platforms where ghostty is not available or marked broken

Type:null or package

Default:pkgs.ghostty

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.clearDefaultKeybinds

Whether to clear default keybinds.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.installBatSyntax

Whether to enable installation of Ghostty configuration syntax for bat.

Type:boolean

Default:true if programs.ghostty.package is not null

Example:true

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.installVimSyntax

Whether to enable installation of Ghostty configuration syntax for Vim.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.settings

Configuration written to$XDG_CONFIG_HOME/ghostty/config.

Seehttps://ghostty.org/docs/config/reference for more information.

Type:attribute set of (atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default:{ }

Example:

{  theme = "catppuccin-mocha";  font-size = 10;  keybind = [    "ctrl+h=goto_split:left"    "ctrl+l=goto_split:right"  ];}

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.systemd

Configuration for Ghostty’s systemd integration.This enables additional speed and features.

Seehttps://ghostty.org/docs/linux/systemd for more information.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.systemd.enable

Whether to enable the Ghostty systemd user service.

Type:boolean

Default:true on Linux,false otherwise

Example:true

Declared by:

<home-manager/modules/programs/ghostty.nix>
programs.ghostty.themes

Custom themes written to$XDG_CONFIG_HOME/ghostty/themes.

Seehttps://ghostty.org/docs/features/theme#authoring-a-custom-theme for more information.

Type:attribute set of attribute set of (atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default:{ }

Example:

{  catppuccin-mocha = {    background = "1e1e2e";    cursor-color = "f5e0dc";    foreground = "cdd6f4";    palette = [      "0=#45475a"      "1=#f38ba8"      "2=#a6e3a1"      "3=#f9e2af"      "4=#89b4fa"      "5=#f5c2e7"      "6=#94e2d5"      "7=#bac2de"      "8=#585b70"      "9=#f38ba8"      "10=#a6e3a1"      "11=#f9e2af"      "12=#89b4fa"      "13=#f5c2e7"      "14=#94e2d5"      "15=#a6adc8"    ];    selection-background = "353749";    selection-foreground = "cdd6f4";  };}

Declared by:

<home-manager/modules/programs/ghostty.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

The git package to use. Usepkgs.gitFullto gain access togit send-email for instance.

Type:package

Default:pkgs.git

Example:pkgs.gitFull

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.hooks

Configuration helper for Git hooks.Seehttps://git-scm.com/docs/githooksfor reference.

Type:attribute set of absolute 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 whenconditionmatches. Allowed conditions are described ingit-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 ingit-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 absolute 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.package

The git-lfs package to use.

Type:null or package

Default:pkgs.git-lfs

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.lfs.skipSmudge

Skip automatic downloading of objects on clone or pull.This requires a manualgit lfs pullevery time a new commit is checked out on your repository.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.maintenance.enable

Enable the automaticgit maintenance.

If you have SSH remotes, setprograms.git.package to agit version with SSH support (eg:pkgs.gitFull).

Seehttps://git-scm.com/docs/git-maintenance.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.maintenance.repositories

Repositories on whichgit maintenance should run.

Should be a list of absolute paths.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.maintenance.timers

Systemd timers to create for scheduledgit maintenance.

Key is passed to--schedule argument ingit maintenance runand value is passed toTimer.OnCalendar insystemd.user.timers.

Type:attribute set of string

Default:

{  daily = "Tue..Sun *-*-* 0:53:00";  hourly = "*-*-* 1..23:53:00";  weekly = "Mon 0:53:00";}

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.settings

Configuration written to$XDG_CONFIG_HOME/git/config.Seegit-config(1) for details.

Type: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.signing.format

The signing method to use when signing commits and tags.Valid values areopenpgp (OpenPGP/GnuPG),ssh (SSH), andx509 (X.509 certificates).

Type:null or one of “openpgp”, “ssh”, “x509”

Default:

"openpgp" for state version < 25.05,undefined for state version ≥ 25.05

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.signing.key

The default signing key fingerprint.

Set tonull to let the signer decide what signing keyto use depending on commit’s author.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.signing.signByDefault

Whether commits and tags should be signed by default.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/git.nix>
programs.git.signing.signer

Path to signer binary to use.

Type:null or string

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:null or 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. Seehttps://git-cliff.org/docs/configurationfor the documentation.

Type:TOML value

Default:{ }

Example:

{  header = "Changelog";  trim = true;}

Declared by:

<home-manager/modules/programs/git-cliff.nix>
programs.git-credential-keepassxc.enable

Whether to enablegit-credential-keepassxc

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/git-credential-keepassxc.nix>
programs.git-credential-keepassxc.package

The git-credential-keepassxc package to use.

Type:package

Default:pkgs.git-credential-keepassxc

Declared by:

<home-manager/modules/programs/git-credential-keepassxc.nix>
programs.git-credential-keepassxc.groups

The KeePassXC groups used for storing and fetching of credentials. Bydefault, the groups created bygit-credential-keepassxc configure [--group <GROUP>] are used.

Type:null or (list of string)

Default:null

Example:"Git"

Declared by:

<home-manager/modules/programs/git-credential-keepassxc.nix>
programs.git-credential-keepassxc.hosts

Hosts for whichgit-credential-keepassxc is enabled.

Type:list of string

Default:[ ]

Example:

[  "https://github.com"]

Declared by:

<home-manager/modules/programs/git-credential-keepassxc.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.git-credential-oauth.extraFlags

Extra command-line arguments passed to git-credential-oauth.

For valid arguments, seegit-credential-oauth(1).

Type:list of string

Default:[ ]

Example:[ "-device" ]

Declared by:

<home-manager/modules/programs/git-credential-oauth.nix>
programs.git-worktree-switcher.enable

Whether to enable git-worktree-switcher.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/git-worktree-switcher.nix>
programs.git-worktree-switcher.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/git-worktree-switcher.nix>
programs.git-worktree-switcher.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/git-worktree-switcher.nix>
programs.git-worktree-switcher.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/git-worktree-switcher.nix>
programs.git-worktree-switcher.package

The git-worktree-switcher package to use.

Type:package

Default:pkgs.git-worktree-switcher

Declared by:

<home-manager/modules/programs/git-worktree-switcher.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 gitui 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:absolute 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:absolute 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.glab.enable

Whether to enableglab

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/glab.nix>
programs.glab.package

The glab package to use.

Type:null or package

Default:pkgs.glab

Declared by:

<home-manager/modules/programs/glab.nix>
programs.glab.aliases

Aliases written to$XDG_CONFIG_HOME/glab-cli/aliases.yml.

Type:attribute set of string

Default:{ }

Example:

{  co = "mr checkout";}

Declared by:

<home-manager/modules/programs/glab.nix>
programs.glab.settings

Configuration written to$XDG_CONFIG_HOME/glab-cli/config.yml.

Type:YAML 1.1 value

Default:{ }

Example:

{  check_update = false;}

Declared by:

<home-manager/modules/programs/glab.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-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-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, itwill be obtained frompackage.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.package

The gnome-terminal package to use.

Type:null or package

Default:pkgs.gnome-terminal

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 bea UUID. You can generate one, for example, usinguuidgen(fromutil-linux).

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/gnome-terminal.nix>
programs.gnome-terminal.profile.<name>.allowBold

Iftrue, allow applications in theterminal 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 userpresses theBackspace 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 userpresses theDelete 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:null or package

Default:pkgs.go

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.packages

Packages to add to GOPATH.

Type:attribute set of absolute 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.env

Environment variables for Go. All the available optionscan be found running ‘go env’.

Type:open submodule of attribute set of string

Default:{ }

Example:

{  GOPATH = [    "${config.home.homeDirectory}/mygo"    "/another/go"    "/yet/another/go"  ];  GOPRIVATE = [    "*.corp.example.com"    "rsc.io/private"  ];  CXX = "g++";  GCCGO = "gccgo";  GOAMD64 = "v1";  GOARCH = "amd64";  GOAUTH = "netrc";};

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.env.GOPATH

List of directories that should be used by the Go tooling.

Type:string or list of string

Default:""

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.env.GOPRIVATE

Controls which modules the ‘go’ command considers to be private (notavailable publicly) and should therefore not use the proxy or checksum database.

Type:string or list of string

Default:""

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.telemetry

Options to configure Go telemetry mode.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.telemetry.date

The date indicating the date at which the modefilewas updated, in YYYY-MM-DD format. It’s used toreset the timeout before the next telemetry reportis uploaded when telemetry mode is set to “on”.

Type:string

Default:"1970-01-01"

Declared by:

<home-manager/modules/programs/go.nix>
programs.go.telemetry.mode

Go telemetry mode to be set.

Type:null or one of “off”, “local”, “on”

Default:null

Declared by:

<home-manager/modules/programs/go.nix>
programs.goto.enable

Whether to enablegoto

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/goto.nix>
programs.goto.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/goto.nix>
programs.goto.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/goto.nix>
programs.goto.package

The goto package to use.

Type:package

Default:pkgs.goto

Declared by:

<home-manager/modules/programs/goto.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:absolute path

Default:"${config.home.homeDirectory}/.gnupg"

Example:"${config.xdg.dataHome}/gnupg"

Declared by:

<home-manager/modules/programs/gpg.nix>
programs.gpg.mutableKeys

If set totrue, you may manage your keyring as a userusing thegpg command. Upon activation, the keyringwill have managed keys added without overwriting unmanaged keys.

If set tofalse, the path$GNUPGHOME/pubring.kbx will become an immutablelink to the Nix store, denying modifications.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/gpg.nix>
programs.gpg.mutableTrust

If set totrue, you may manage trust as a user usingthegpg command. Upon activation, trusted keys havetheir trust set without overwriting unmanaged keys.

If set tofalse, the path$GNUPGHOME/trustdb.gpg will beoverwritten on each activation, removing trust forany unmanaged keys. Be careful to make a backup of your oldtrustdb.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 fileswill 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:absolute 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 theowner puts into signing other keys. The available levels are

unknown or1

I don’t know or won’t say.

never or2

I donot trust.

marginal or3

I trust marginally.

full or4

I trust fully.

ultimate or5

I trust ultimately.

See theKey Management chapterof 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 describedinscdaemon(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 describedingpg(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:null or package

Default:pkgs.gradle

Example:pkgs.gradle_7

Declared by:

<home-manager/modules/programs/gradle.nix>
programs.gradle.home

The Gradle home directory, relative tohome.homeDirectory.

If set, theGRADLE_USER_HOME environment variable will beset 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 conventionssee 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. Iftext is non-null then this option will automatically pointto a file containing that text.

Type:absolute path

Declared by:

<home-manager/modules/programs/gradle.nix>
programs.gradle.initScripts.<name>.text

Text of the init script file. if this option is nullthensource 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 togradle.properties in the Gradlehome directory.

Type:open submodule of 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.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/granted.nix>
programs.granted.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/granted.nix>
programs.granted.package

The granted package to use.

Type:package

Default:pkgs.granted

Declared by:

<home-manager/modules/programs/granted.nix>
programs.grep.enable

Whether to enablegrep

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/grep.nix>
programs.grep.package

The grep package to use.

Type:null or package

Default:pkgs.gnugrep

Declared by:

<home-manager/modules/programs/grep.nix>
programs.grep.colors

Settings forGREP_COLORS

Type:attribute set of string

Default:{ }

Example:

{  error = "01;31";}

Declared by:

<home-manager/modules/programs/grep.nix>
programs.gurk-rs.enable

Whether to enable gurk-rs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/gurk-rs.nix>
programs.gurk-rs.package

The gurk-rs package to use.

Type:null or package

Default:pkgs.gurk-rs

Declared by:

<home-manager/modules/programs/gurk-rs.nix>
programs.gurk-rs.settings

Configuration written to$XDG_CONFIG_HOME/.config/gurk/gurk.tomlorLibrary/Application Support/gurk/gurk.toml. Options aredeclared athttps://github.com/boxdot/gurk-rs/blob/main/src/config.rs.Note thatsignal_db_path should be set.

Type:TOML value

Default:{ }

Example:

{  signal_db_path = "/home/USERNAME/.local/share/gurk/signal-db";  first_name_only = false;  show_receipts = true;  notifications = true;  bell = true;  colored_messages = false;  default_keybindings = true;  user = {    name = "MYNAME";    phone_number = "MYNUMBER";  };  keybindings =  { };}

Declared by:

<home-manager/modules/programs/gurk-rs.nix>
programs.halloy.enable

Whether to enable halloy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/halloy.nix>
programs.halloy.package

The halloy package to use.

Type:null or package

Default:pkgs.halloy

Declared by:

<home-manager/modules/programs/halloy.nix>
programs.halloy.settings

Configuration settings for halloy. All available options can befound here:https://halloy.chat/configuration/index.html. Note thathalloy requires at least oneserver to be configured, see example.

Type:TOML value

Default:{ }

Example:

{  "buffer.channel.topic" = {    enabled = true;  };  "servers.liberachat" = {    channels = [      "#halloy"    ];    nickname = "halloy-user";    server = "irc.libera.chat";  };}

Declared by:

<home-manager/modules/programs/halloy.nix>
programs.halloy.themes

Each theme is written to$XDG_CONFIG_HOME/halloy/themes/NAME.toml.Seehttps://halloy.chat/configuration/themes/index.html for more information.

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

Default:{ }

Example:

{  my-theme = {    general = {      background = "<string>";      border = "<string>";      horizontal_rule = "<string>";      unread_indicator = "<string>";    };    text = {      primary = "<string>";      secondary = "<string>";      tertiary = "<string>";      success = "<string>";      error = "<string>";    };  };}

Declared by:

<home-manager/modules/programs/halloy.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:null or package

Default:pkgs.havoc

Declared by:

<home-manager/modules/programs/havoc.nix>
programs.havoc.settings

Configuration written to$XDG_CONFIG_HOME/havoc.cfg. Seehttps://raw.githubusercontent.com/ii8/havoc/master/havoc.cfgfor 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 helix package to use.

Type:package

Default:pkgs.helix

Example:pkgs.evil-helix

Declared by:

<home-manager/modules/programs/helix.nix>
programs.helix.defaultEditor

Whether to configurehx as the defaulteditor using theEDITOR environment variable.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/helix.nix>
programs.helix.extraConfig

Extra lines to be appended to the config file.Use this if you would like to maintain order for helix settings (eg. for minor modes)

Type:strings concatenated with “\n”

Default:""

Example:

[keys.normal.g] # Reverse Alphabetical OrderG = "goto_file_end"g = "goto_file_start"

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.

Seehttps://docs.helix-editor.com/languages.htmlfor more information.

Type:(TOML value) or (list of (TOML value)) convertible to it

Default:{ }

Example:

{  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.

Seehttps://docs.helix-editor.com/configuration.htmlfor 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”).

Seehttps://docs.helix-editor.com/themes.htmlfor the full list of options.

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

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.package

The hexchat package to use.

Type:null or package

Default:pkgs.hexchat

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’sin 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 whensomeone uses theWHOIS 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 youruser@host hostmask thatappears 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 upany previous configuration before enabling this.

Enabling this setting is recommended, because everytime HexChatapplication is closed it overwrites Nix/Home Manager providedconfiguration files, causing:

  1. Nix/Home Manager provided configuration to be out of sync withactual active HexChat configuration.

  2. Nix/Home Manager updates to be blocked until configuration files aremanually 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, seehttps://hexchat.readthedocs.io/en/latest/settings.html#list-of-settingsfor 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 decompressedtheme 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:null or package

Default:pkgs.himalaya

Declared by:

<home-manager/modules/programs/himalaya.nix>
programs.himalaya.settings

Himalaya CLI global configuration.Seehttps://github.com/pimalaya/himalaya/blob/master/config.sample.toml for supported values.

Type:open submodule of (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.package

Thehome-manager package.

Type:package(read only)

Default:

pkgs.callPackage ../../home-manager { inherit (config.programs.home-manager) path; };

Declared by:

<home-manager/modules/programs/home-manager.nix>
programs.home-manager.path

The default path to use for Home Manager. Whennull, then thehome-managerchannel,$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 andmanage 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:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/hstr.nix>
programs.hstr.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

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

The htop package to use.

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 of (boolean or signed integer or string or list of (signed integer or string))

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.hwatch.enable

Whether to enable hwatch, a modern alternative to thewatch command.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/hwatch.nix>
programs.hwatch.package

The hwatch package to use.

Type:null or package

Default:pkgs.hwatch

Declared by:

<home-manager/modules/programs/hwatch.nix>
programs.hwatch.extraArgs

Extra command-line arguments to pass tohwatch.These will be used to populate theHWATCH environment variable.

Type:list of string

Default:[ ]

Example:

[  "--exec"  "--precise"]

Declared by:

<home-manager/modules/programs/hwatch.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 screenutility.

Note that PAM must be configured to enable hyprlock to performauthentication. The package installed through home-manager willnot beable 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:null or 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:

[  "$"  "bezier"  "monitor"  "size"]

Declared by:

<home-manager/modules/programs/hyprlock.nix>
programs.hyprlock.settings

Hyprlock configuration written in Nix. Entries with the same key shouldbe written as lists. Variables’ and colors’ names should be quoted. Seehttps://wiki.hypr.land/Hypr-Ecosystem/hyprlock/ for more examples.

Type:Hyprlock configuration value

Default:{ }

Example:

{  general = {    hide_cursor = true;    ignore_empty_input = true;  };  animations = {    enabled = true;    fade_in = {      duration = 300;      bezier = "easeOutQuint";    };    fade_out = {      duration = 300;      bezier = "easeOutQuint";    };  };  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.hyprpanel.enable

Whether to enable HyprPanel.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/hyprpanel>
programs.hyprpanel.package

The hyprpanel package to use.

Type:package

Default:pkgs.hyprpanel

Declared by:

<home-manager/modules/programs/hyprpanel>
programs.hyprpanel.settings

Configuration written to$XDG_CONFIG_HOME/hyprpanel/config.json.

Seehttps://hyprpanel.com/configuration/settings.html#home-manager-modulefor the full list of options.

Type:JSON value

Default:{ }

Example:

bar.battery.label = true;bar.bluetooth.label = false;bar.clock.format = "%H:%M:%S";bar.layouts = {  "*" = {    left = [      "dashboard"      "workspaces"      "media"    ];    middle = [ "windowtitle" ];    right = [      "volume"      "network"      "bluetooth"      "notifications"    ];  };};

Declared by:

<home-manager/modules/programs/hyprpanel>
programs.hyprpanel.systemd.enable

Whether to enable HyprPanel systemd integration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/hyprpanel>
programs.hyprshot.enable

Whether to enable Hyprshot the Hyprland screenshot utility.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/hyprshot.nix>
programs.hyprshot.package

The hyprshot package to use.

Type:null or package

Default:pkgs.hyprshot

Declared by:

<home-manager/modules/programs/hyprshot.nix>
programs.hyprshot.saveLocation

Set the$HYPRSHOT_DIR environment variable to the given location.

Hypershot will save screenshots to the first expression that resolves:

  • $HYPRSHOT_DIR

  • $XDG_PICTURES_DIR

  • $(xdg-user-dir PICTURES)

Type:null or string

Default:null

Example:"$HOME/Pictures/Screenshots"

Declared by:

<home-manager/modules/programs/hyprshot.nix>
programs.i3bar-river.enable

Whether to enable i3bar-river.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/i3bar-river.nix>
programs.i3bar-river.package

The i3bar-river package to use.

Type:null or package

Default:pkgs.i3bar-river

Declared by:

<home-manager/modules/programs/i3bar-river.nix>
programs.i3bar-river.settings

Configuration settings for i3bar-river. All available options can befound here:https://github.com/MaxVerevkin/i3bar-river?tab=readme-ov-file#configuration.

Type:TOML value

Default:{ }

Example:

{  background = "#282828ff";  color = "#ffffffff";  font = "monospace 10";  height = 24;  margin_bottom = 0;  margin_left = 0;  margin_top = 0;  separator = "#9a8a62ff";  "wm.river" = {    max_tag = 0;  };}

Declared by:

<home-manager/modules/programs/i3bar-river.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

The i3blocks package to use.

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 enablethe default configuration.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/i3status.nix>
programs.i3status.package

The i3status package to use.

Type:null or package

Default:pkgs.i3status

Declared by:

<home-manager/modules/programs/i3status.nix>
programs.i3status.general

Configuration to add to i3statusconfiggeneral section.Seei3status(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 i3statusconfig file.Seei3status(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 i3statusorder.

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.Seei3status(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

The i3status-rust package to use.

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 barname generates a config file suffixed withthe bar’sname from the attribute set, like so:config-${name}.toml.

This way, multiple config files can be generated, such as for having atop and a bottom bar.

Seei3status-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-rustconfig. Seehttps://github.com/greshake/i3status-rust/blob/master/blocks.mdfor 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. Seehttps://github.com/greshake/i3status-rust/blob/master/doc/themes.mdfor 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-rustconfig.

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. Seehttps://github.com/greshake/i3status-rust/blob/master/doc/themes.mdfor a list of available themes.

Type:string

Default:"plain"

Example:"gruvbox-dark"

Declared by:

<home-manager/modules/programs/i3status-rust.nix>
programs.iamb.enable

Whether to enable iamb.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/iamb.nix>
programs.iamb.package

The iamb package to use.

Type:null or package

Default:pkgs.iamb

Declared by:

<home-manager/modules/programs/iamb.nix>
programs.iamb.settings

Configuration written to$XDG_CONFIG_HOME/iamb/config.toml.

Seehttps://iamb.chat/configure.html for the full listof options.

Type:TOML value

Default:{ }

Example:

{  default_profile = "personal";  settings = {    notifications.enabled = true;    image_preview.protocol = {      type = "kitty";      size = {        height = 10;        width = 66;      };    };  };}

Declared by:

<home-manager/modules/programs/iamb.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:null or package

Default:pkgs.imv

Declared by:

<home-manager/modules/programs/imv.nix>
programs.imv.settings

Configuration options for imv. Seeimv(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.info.package

The texinfo package to use.

Type:package

Default:pkgs.texinfoInteractive

Declared by:

<home-manager/modules/programs/info.nix>
programs.inori.enable

Whether to enable inori.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/inori.nix>
programs.inori.package

The inori package to use.

Type:null or package

Default:pkgs.inori

Declared by:

<home-manager/modules/programs/inori.nix>
programs.inori.settings

Configuration written to$XDG_CONFIG_HOME/inori/config.toml.

Seehttps://github.com/eshrh/inori/blob/master/CONFIGURATION.md for available options.

Type:TOML value

Default:{ }

Example:

{  seek_seconds = 10;  dvorak_keybindings = true;}

Declared by:

<home-manager/modules/programs/inori.nix>
programs.intelli-shell.enable

Whether to enable intelli-shell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.package

The intelli-shell package to use.

Type:null or package

Default:pkgs.intelli-shell

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.settings

Configuration settings for intelli-shell. You can see all the available options here:https://github.com/lasantosr/intelli-shell/blob/main/default_config.toml.

Type:TOML value

Default:{ }

Example:

{  check_updates = false;  data_dir = "/home/myuser/my/custom/datadir";  logs = {    enabled = false;  };  theme = {    accent = "yellow";    comment = "italic green";    error = "dark red";    highlight = "darkgrey";    highlight_accent = "yellow";    highlight_comment = "italic green";    highlight_primary = "default";    highlight_secondary = "default";    highlight_symbol = "» ";    primary = "default";    secondary = "dim";  };}

Declared by:

<home-manager/modules/programs/intelli-shell.nix>
programs.intelli-shell.shellHotkeys

Settings for customizing the keybinding to integrate your shell with intelli-shell. You can see the detailshere:https://lasantosr.github.io/intelli-shell/guide/installation.html#customizing-shell-integration.

Type:attribute set of string

Default:{ }

Example:

{  bookmark_hotkey = "\\\\C-b";  fix_hotkey = "\\\\C-p";  search_hotkey = "\\\\C-t";  skip_esc_bind = "\\\\C-q";  variable_hotkey = "\\\\C-a";}

Declared by:

<home-manager/modules/programs/intelli-shell.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 use.

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 namesin 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.package

The irssi package to use.

Type:null or package

Default:pkgs.irssi

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 inprograms.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 forclient authentication to the server.

Type:null or absolute 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 theJAVA_HOME variable.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/java.nix>
programs.java.package

The java package to use.

Type:package

Default:pkgs.jdk

Example:pkgs.jre

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.jjui.enable

Whether to enable jjui - A terminal user interface for jujutsu.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/jjui.nix>
programs.jjui.package

The jjui package to use.

Type:null or package

Default:pkgs.jjui

Declared by:

<home-manager/modules/programs/jjui.nix>
programs.jjui.configDir

The directory to contain jjui configuration files.

Type:string

Default:

Darwin: "Library/Application Support/jjui" Linux: ${config.xdg.configHome}/jjui

Example:${config.home.homeDirectory}/.jjui

Declared by:

<home-manager/modules/programs/jjui.nix>
programs.jjui.settings

Options to add to theconfig.toml file. Seehttps://github.com/idursun/jjui/wiki/Configurationfor options.

Type:TOML value

Default:{ }

Example:

{  revisions = {    revset = "";    template = "builtin_log_compact";  };}

Declared by:

<home-manager/modules/programs/jjui.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 arewritten 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 anote. If none is provided Joplin will try to auto-detect the defaulteditor.

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 joshuto package to use.

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.

Seehttps://github.com/kamiyaa/joshuto/blob/main/docs/configuration/keymap.toml.mdfor 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.

Seehttps://github.com/kamiyaa/joshuto/blob/main/docs/configuration/mimetype.toml.mdfor 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.

Seehttps://github.com/kamiyaa/joshuto/blob/main/docs/configuration/joshuto.toml.mdfor 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.

Seehttps://github.com/kamiyaa/joshuto/blob/main/docs/configuration/theme.toml.mdfor 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

The jq package to use.

Type:null or package

Default:pkgs.jq

Declared by:

<home-manager/modules/programs/jq.nix>
programs.jq.colors

The colors used in colored JSON output, or null to use the defaults.

See theColors sectionof the jq manual.

Type:null or (submodule)

Default:null

Example:

{  null       = "1;30";  false      = "0;31";  true       = "0;32";  numbers    = "0;36";  strings    = "0;33";  arrays     = "1;35";  objects    = "1;37";  objectKeys = "1;34";}

Declared by:

<home-manager/modules/programs/jq.nix>
programs.jqp.enable

Whether to enable jqp, jq playground.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/jqp.nix>
programs.jqp.package

The jqp package to use.

Type:null or package

Default:pkgs.jqp

Declared by:

<home-manager/modules/programs/jqp.nix>
programs.jqp.settings

Jqp configuration

Type:YAML 1.1 value

Default:{ }

Example:

{  theme = {    chromaStyleOverrides = {      kc = "#009900 underline";    };    name = "monokai";  };}

Declared by:

<home-manager/modules/programs/jqp.nix>
programs.jrnl.enable

Whether to enable jrnl.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/jrnl.nix>
programs.jrnl.package

The jrnl package to use.

Type:null or package

Default:pkgs.jrnl

Declared by:

<home-manager/modules/programs/jrnl.nix>
programs.jrnl.settings

Configuration for the jrnl binary.Available configuration options are described in the jrnl documentation:https://jrnl.sh/en/stable/reference-config-file/.

Type:YAML 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/jrnl.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:null or 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 theconfig.toml file. Seehttps://github.com/martinvonz/jj/blob/main/docs/config.mdfor 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:null or 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)orLibrary/Application Support/k9s/aliases.yaml (darwin). Seehttps://k9scli.io/topics/aliases/ for supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  # Use pp as an alias for Pod  pp = "v1/pods";}

Declared by:

<home-manager/modules/programs/k9s.nix>
programs.k9s.hotKeys

Hotkeys written to$XDG_CONFIG_HOME/k9s/hotkeys.yaml (linux)orLibrary/Application Support/k9s/hotkeys.yaml (darwin). Seehttps://k9scli.io/topics/hotkeys/ for supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  shift-0 = {    shortCut = "Shift-0";    description = "Viewing pods";    command = "pods";  };}

Declared by:

<home-manager/modules/programs/k9s.nix>
programs.k9s.plugins

Plugins written to$XDG_CONFIG_HOME/k9s/plugins.yaml (linux)orLibrary/Application Support/k9s/plugins.yaml (darwin). Seehttps://k9scli.io/topics/plugins/ for supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  # 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)orLibrary/Application Support/k9s/config.yaml (darwin), Seehttps://k9scli.io/topics/config/ for supported values.

Type:YAML 1.1 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)orLibrary/Application Support/k9s/skins/ (darwin). Seehttps://k9scli.io/topics/skins/ for supported values.

Type:attribute set of (YAML 1.1 value or absolute path)

Default:{ }

Example:

{  my_blue_skin = {    k9s = {      body = {        fgColor = "dodgerblue";      };    };  };  my_red_skin = ./red_skin.yaml;}

Declared by:

<home-manager/modules/programs/k9s.nix>
programs.k9s.views

Resource column views written to$XDG_CONFIG_HOME/k9s/views.yaml (linux)orLibrary/Application Support/k9s/views.yaml (darwin).Seehttps://k9scli.io/topics/columns/ for supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  "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:null or package

Default:pkgs.kakoune-unwrapped

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.colorSchemePackage

A kakoune color schemes to add to your colors folder. This worksbecause kakoune recursively checks$XDG_CONFIG_HOME/kak/colors/. To apply the color scheme useprograms.kakoune.config.colorScheme = "theme".

Type:null or package

Default:null

Example:pkgs.kakounePlugins.kakoune-catppuccin

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, entercolorscheme 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, seehttps://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, seehttps://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 is4.If0, 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, seehttps://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. Seehttps://github.com/mawww/kakoune/blob/master/doc/pages/mapping.asciidoc#mappable-keysfor 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.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.numberLines.highlightCursor

Highlight the cursor line with a separate face.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.numberLines.relative

Show line numbers relative to the main cursor line.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.numberLines.separator

String that separates the line number column from thebuffer contents. The kakoune default is"|".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.scrollOff

How many lines and columns to keep visible around the cursor.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.scrollOff.columns

The number of columns to keep visible around the cursor.

Type:unsigned integer, meaning >=0

Default:0

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.scrollOff.lines

The number of lines to keep visible around the cursor.

Type:unsigned integer, meaning >=0

Default:0

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showMatching

Highlight the matching char of the character under theselections’ cursor using theMatchingCharface.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace

Settings for the show whitespaces highlighter.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.enable

Whether to enable the show whitespace highlighter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.lineFeed

The character to display for line feeds.The kakoune default is"¬".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.nonBreakingSpace

The character to display for non-breaking spaces.The kakoune default is"⍽".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.space

The character to display for spaces.The kakoune default is"·".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.tab

The character to display for tabs.The kakoune default is"→".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.showWhitespace.tabStop

The character to append to tabs to reach the width of a tabstop.The kakoune default is" ".

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.tabStop

The width of a tab in spaces. The kakoune default is6.

Type:null or (unsigned integer, meaning >=0)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui

Settings for the ncurses interface.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.enableMouse

Whether to enable mouse support.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.assistant

The assistant displayed in info boxes.

Type:one of “clippy”, “cat”, “dilbert”, “none”

Default:"clippy"

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.changeColors

Change color palette.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.setTitle

Change the title of the terminal emulator.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.shiftFunctionKeys

Amount by which shifted function keys are offset. Thatis, if the terminal sends F13 for Shift-F1, thisshould be12.

Type:null or (unsigned integer, meaning >=0)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.statusLine

Where to display the status line.

Type:one of “top”, “bottom”

Default:"bottom"

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.useBuiltinKeyParser

Bypass ncurses key parser and use an internal one.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.wheelDownButton

Button to send for wheel down events.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.ui.wheelUpButton

Button to send for wheel up events.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines

Settings for the wrap lines highlighter.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines.enable

Whether to enable the wrap lines highlighter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines.indent

Preserve line indentation when wrapping.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines.marker

Prefix wrapped lines with marker text.If notnull,the marker text will be displayed in the indentation if possible.

Type:null or string

Default:null

Example:"⏎"

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines.maxWidth

Wrap text at maxWidth, even if the window is wider.

Type:null or (unsigned integer, meaning >=0)

Default:null

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.config.wrapLines.word

Wrap at word boundaries instead of codepoint boundaries.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.defaultEditor

Whether to configurekak as the defaulteditor using theEDITOR environment variable.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.extraConfig

Extra configuration lines to add to$XDG_CONFIG_HOME/kak/kakrc.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.finalPackage

Resulting customized kakoune package.

Type:null or package(read only)

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.kakoune.plugins

List of kakoune plugins to install. To get a list ofsupported plugins run:nix-env -f '<nixpkgs>' -qaP -A kakounePlugins.

Requirespackage to not be set to have effect.

Type:list of package

Default:[ ]

Example:[ pkgs.kakounePlugins.kak-fzf ]

Declared by:

<home-manager/modules/programs/kakoune.nix>
programs.keepassxc.enable

Whether to enable KeePassXC.

Note

When this flag is set, KeePassXC’ builtin native messaging manifest forcommunication with its browser extension is automatically installed.This conflicts with KeePassXC’ builtin installation mechanism. Toprevent error messages, either setprograms.keepassxc.settings.Browser.UpdateBinaryPath tofalse, or untick the checkbox

Application Settings/Browser Integration/Advanced/Update native messaging manifest files at startup

in the GUI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/keepassxc.nix>
programs.keepassxc.package

The keepassxc package to use.

Type:null or package

Default:pkgs.keepassxc

Declared by:

<home-manager/modules/programs/keepassxc.nix>
programs.keepassxc.autostart

Whether to start KeePassXC automatically on login through the XDG autostart mechanism.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/keepassxc.nix>
programs.keepassxc.settings

Configuration written to$XDG_CONFIG_HOME/keepassxc/keepassxc.ini.

Seehttps://github.com/keepassxreboot/keepassxc/blob/647272e9c5542297d3fcf6502e6173c96f12a9a0/src/core/Config.cpp#L49-L223for the full list of options.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Browser.Enabled = true;  GUI = {    AdvancedSettings = true;    ApplicationTheme = "dark";    CompactMode = true;    HidePasswords = true;  };  SSHAgent.Enabled = true;}

Declared by:

<home-manager/modules/programs/keepassxc.nix>
programs.keychain.enable

Whether to enable keychain.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.enableXsessionIntegration

Whether to run keychain from your~/.xsession.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.package

The keychain package to use.

Type:package

Default:pkgs.keychain

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.agents

Agents to add.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.extraFlags

Extra flags to pass to keychain.

Type:list of string

Default:

[  "--quiet"]

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.inheritType

Inherit type to attempt from agent variables from the environment.

Type:null or one of “local”, “any”, “local-once”, “any-once”

Default:null

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.keychain.keys

Keys to add to keychain.

Type:list of string

Default:

[  "id_rsa"]

Declared by:

<home-manager/modules/programs/keychain.nix>
programs.khal.enable

Whether to enable khal, a CLI calendar application.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/khal>
programs.khal.package

The khal package to use.

Type:null or package

Default:pkgs.khal

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale

khal locale settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.dateformat

khal will display and understand all dates in this format.

Format strings are for Pythonstrftime, similarly tostrftime(3).

Type:string

Default:"%x"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.datetimeformat

khal will display and understand all datetimes in this format.

Format strings are for Pythonstrftime, similarly tostrftime(3).

Type:string

Default:"%c"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.default_timezone

Default for new events or if khal does not understand the timezonein an ical file.Ifnull, the timezone of your computer will be used.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.firstweekday

The first day of the week, where Monday is 0 and Sunday is 6.

Type:integer between 0 and 6 (both inclusive)

Default:0

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.local_timezone

khal will show all times in this timezone.Ifnull, the timezone of your computer will be used.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.longdateformat

khal will display and understand all dates in this format.It should contain a year (e.g.%Y).

Format strings are for Pythonstrftime, similarly tostrftime(3).

Type:string

Default:"%x"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.longdatetimeformat

khal will display and understand all datetimes in this format.It should contain a year (e.g.%Y).

Format strings are for Pythonstrftime, similarly tostrftime(3).

Type:string

Default:"%c"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.timeformat

khal will display and understand all times in this format.

Format strings are for Pythonstrftime, similarly tostrftime(3).

Type:string

Default:"%X"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.unicode_symbols

By default khal uses some Unicode symbols (as in “non-ASCII”) asindicators for things like repeating events.If your font, encoding etc. does not support those symbols, set thisto false (this will enable ASCII-based replacements).

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/khal>
programs.khal.locale.weeknumbers

Enable week numbers in calendar and interactive (ikhal) mode.As those are ISO week numbers, they only work properly iffirstweekday is set to 0.

Type:one of “off”, “left”, “right”

Default:"off"

Declared by:

<home-manager/modules/programs/khal>
programs.khal.settings

Configuration options to add to the various sections in the configuration file.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  default = {    default_calendar = "Calendar";    timedelta = "5d";  };  view = {    agenda_event_format =      "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol}{reset}";  };}

Declared by:

<home-manager/modules/programs/khal>
programs.khard.enable

Whether to enable Khard: an address book for the Unix console.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/khard.nix>
programs.khard.package

The khard package to use.

Type:package

Default:pkgs.khard

Declared by:

<home-manager/modules/programs/khard.nix>
programs.khard.settings

Khard settings. Seehttps://khard.readthedocs.io/en/latest/#configurationfor more information.

Type:open submodule of attribute set of attribute set of (boolean or string or list of string)

Default:{ }

Example:

{  general = {    default_action = "list";    editor = ["vim" "-i" "NONE"];  };  "contact table" = {    display = "formatted_name";    preferred_phone_number_type = ["pref" "cell" "home"];    preferred_email_address_type = ["pref" "work" "home"];  };  vcard = {    private_objects = ["Jabber" "Skype" "Twitter"];  };}

Declared by:

<home-manager/modules/programs/khard.nix>
programs.khard.settings.general.default_action

The default action to execute.

Type:string

Default:"list"

Declared by:

<home-manager/modules/programs/khard.nix>
programs.kickoff.enable

Whether to enable kickoff.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kickoff.nix>
programs.kickoff.package

The kickoff package to use.

Type:null or package

Default:pkgs.kickoff

Declared by:

<home-manager/modules/programs/kickoff.nix>
programs.kickoff.settings

Configuration settings for kickoff. All the available options can be foundhere:https://github.com/j0ru/kickoff/blob/main/assets/default_config.toml.

Type:TOML value

Default:{ }

Example:

''  padding = 100;  font_size = 32;  search.show_hidden_files = false;  history.decrease_interval = 48;    keybinding = {    paste = [ "ctrl+v" ];    execute = [ "KP_Enter" "Return" ];    complete = [ "Tab" ];  };''

Declared by:

<home-manager/modules/programs/kickoff.nix>
programs.kitty.enable

Whether to enable Kitty terminal emulator.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.enableGitIntegration

Whether to enable git integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.package

The kitty package to use.

Type:null or package

Default:pkgs.kitty

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.actionAliases

Define action aliases.

Type:attribute set of string

Default:{ }

Example:

{  "launch_tab" = "launch --cwd=current --type=tab";  "launch_window" = "launch --cwd=current --type=os-window";}

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.darwinLaunchOptions

Command-line options to use when launched by Mac OS GUI

Type:null or (list of string)

Default:null

Example:

[  "--single-instance"  "--directory=/tmp/my-dir"  "--listen-on=unix:/tmp/my-socket"]

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.environment

Environment variables to set or override.

Type:attribute set of string

Default:{ }

Example:

{  "LS_COLORS" = "1";}

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.extraConfig

Additional configuration to add to kitty.conf.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.font

The font to use.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.font.package

Package providing the font. This package will be installedto your profile. Ifnull then the fontis assumed to already be available in your profile.

Type:null or package

Default:null

Example:pkgs.dejavu_fonts

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.font.name

The family name of the font within the package.

Type:string

Example:"DejaVu Sans"

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.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/programs/kitty.nix>
programs.kitty.keybindings

Mapping of keybindings to actions.

Type:attribute set of string

Default:{ }

Example:

{  "ctrl+c" = "copy_or_interrupt";  "ctrl+f>2" = "set_font_size 20";}

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.mouseBindings

Mapping of mouse bindings to actions.

Type:attribute set of string

Default:{ }

Example:

{  "ctrl+left click" = "ungrabbed mouse_handle_click selection link prompt";  "left click" = "ungrabbed no-op";};

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.quickAccessTerminalConfig

Configuration written to$XDG_CONFIG_HOME/kitty/quick-access-terminal.conf. Seehttps://sw.kovidgoyal.net/kitty/kittens/quick-access-terminal/for the documentation.

Type:attribute set of (string or boolean or signed integer or floating point number)

Default:{ }

Example:

{  start_as_hidden = false;  hide_on_focus_loss = false;  background_opacity = 0.85;}

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.settings

Configuration written to$XDG_CONFIG_HOME/kitty/kitty.conf. Seehttps://sw.kovidgoyal.net/kitty/conf.htmlfor the documentation.

Type:attribute set of (string or boolean or signed integer or floating point number)

Default:{ }

Example:

{  scrollback_lines = 10000;  enable_audio_bell = false;  update_check_interval = 0;}

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.shellIntegration.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:

(cfg.shellIntegration.mode != null)&& !(elem "disabled" (splitString " " config.programs.kitty.shellIntegration.mode))

Example:false

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.shellIntegration.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:

(cfg.shellIntegration.mode != null)&& !(elem "disabled" (splitString " " config.programs.kitty.shellIntegration.mode))

Example:false

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.shellIntegration.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:

(cfg.shellIntegration.mode != null)&& !(elem "disabled" (splitString " " config.programs.kitty.shellIntegration.mode))

Example:false

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.shellIntegration.mode

Set the mode of the shell integration. This accepts the same optionsas theshell_integration option of Kitty. Note thatno-rc is always implied, unless this set tonull. Seehttps://sw.kovidgoyal.net/kitty/shell-integrationfor more details.

Type:null or string

Default:"no-rc"

Example:"no-cursor"

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kitty.themeFile

Apply a Kitty color theme. This option takes the file name of a themeinkitty-themes, without the.conf suffix. Seehttps://github.com/kovidgoyal/kitty-themes/tree/master/themes for alist of themes.

Type:null or string

Default:null

Example:"SpaceGray_Eighties"

Declared by:

<home-manager/modules/programs/kitty.nix>
programs.kodi.enable

Whether to enable Kodi.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kodi.package

The kodi package to use. Can be used to specify extensions.

Type:package

Default:pkgs.kodi

Example:pkgs.kodi.withPackages (exts: [ exts.pvr-iptvsimple ])

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kodi.addonSettings

Attribute set with the plugin namespace as toplevel key and the pluginssettings as lower level key/value pairs.

Kodi will still show the settings of plugins configured via thismechanism in the GUI and they appear to be mutable. This however isnot the case and the settings will stay as specified via Home Manager.

Type:null or (attribute set of attribute set of string)

Default:null

Example:

{ "service.xbmc.versioncheck".versioncheck_enable = "false"; }

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kodi.datadir

Directory to store configuration and metadata.

Type:absolute path

Default:"${config.home.homeDirectory}/.kodi"

Example:"${config.xdg.dataHome}/kodi"

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kodi.settings

Configuration to write to theadvancedsettings.xmlfile in kodis userdata directory. Settings specified here will beimmutable from inside kodi and be hidden from the GUI settings dialog.

Seehttps://kodi.wiki/view/Advancedsettings.xml asreference for how settings need to be specified.

The innermost attributes must be of type str.

Type:null or attribute sets or lists of strings

Default:null

Example:

{ videolibrary.showemptytvshows = "true"; }

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kodi.sources

Contents to populate the filesources.xml in kodisuserdata directory.

Seehttps://kodi.wiki/view/Sources.xml asreference for how sources need to be specified.

Kodi will still show the dialogs to modify sources in the GUI and theyappear to be mutable. This however is not the case and the sources willstay as specified via Home Manager.

The innermost attributes must be of type str.

Type:null or attribute sets or lists of strings

Default:null

Example:

{  video = {    default = "movies";    source = [      { name = "videos"; path = "/path/to/videos"; allowsharing = "true"; }      { name = "movies"; path = "/path/to/movies"; allowsharing = "true"; }    ];  };}

Declared by:

<home-manager/modules/programs/kodi.nix>
programs.kraftkit.enable

Whether to enable kraftkit - CLI to build and use customized unikernel VMs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kraftkit.nix>
programs.kraftkit.package

The kraft package to use.

Type:null or package

Default:pkgs.kraft

Declared by:

<home-manager/modules/programs/kraftkit.nix>
programs.kraftkit.settings

Configuration written to$XDG_CONFIG_HOME/kraftkit/config.yaml.

Type:YAML 1.1 value

Default:{ }

Example:

no_prompt = true;log = {  level = "info";  type = "fancy";};

Declared by:

<home-manager/modules/programs/kraftkit.nix>
programs.kubecolor.enable

Whether to enable kubecolor - Colorize your kubectl output.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kubecolor.nix>
programs.kubecolor.enableAlias

When set to true, it will create an alias for kubectl pointing tokubecolor, thus making kubecolor the default kubectl client.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/kubecolor.nix>
programs.kubecolor.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/kubecolor.nix>
programs.kubecolor.package

The kubecolor package to use.

Type:package

Default:pkgs.kubecolor

Declared by:

<home-manager/modules/programs/kubecolor.nix>
programs.kubecolor.settings

Configuration written to~/.kube/color.yaml (Linux)orLibrary/Application Support/kube/color.yaml (Darwin).Seehttps://kubecolor.github.io/reference/config/ for supportedvalues.

Type:YAML 1.1 value

Default:{ }

Example:

kubectl = lib.getExe pkgs.kubectlpreset = "dark";paging = "auto";

Declared by:

<home-manager/modules/programs/kubecolor.nix>
programs.kubeswitch.enable

Whether to enable the kubectx for operators.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.package

The kubeswitch package to use.

Type:package

Default:pkgs.kubeswitch

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.commandName

The name of the command to use

Type:string

Default:"kswitch"

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.kubeswitch.settings

Configuration written to~/.kube/switch-config.yaml.

Type:YAML 1.1 value

Default:{ }

Example:

{  kind = "SwitchConfig";  kubeconfigName = "*.myconfig";  kubeconfigStores = [    {      kind = "filesystem";      kubeconfigName = "*.myconfig";      paths = [        "~/.kube/my-other-kubeconfigs/"      ];    }  ];  version = "v1alpha1";}

Declared by:

<home-manager/modules/programs/kubeswitch.nix>
programs.lapce.enable

Whether to enable lapce.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.package

The lapce package to use.

Type:null or package

Default:pkgs.lapce

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.channel

Lapce channel to configure.Should correspond to the package channel.This is used to determine the correct configuration and data directories.

Type:one of “stable”, “nightly”

Default:"stable"

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.keymaps

Keymaps written to$XDG_CONFIG_HOME/lapce/keymaps.toml.Seehttps://github.com/lapce/lapce/blob/master/defaults/keymaps-common.toml for examples.

Type:TOML value

Default:[ ]

Example:

[  {    command = "open_log_file";    key = "Ctrl+Shift+L";  }]

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.plugins

Plugins to install.

Type:list of (submodule)

Default:[ ]

Example:

[  {    author = "MrFoxPro";    name = "lapce-nix";    version = "0.0.1";    hash = "sha256-...";  }  {    author = "dzhou121";    name = "lapce-rust";    version = "0.3.1932";    hash = "sha256-...";  }]

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.plugins.*.author

Author of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.plugins.*.hash

Hash of the plugin tarball.To find the hash leave this empty, rebuild and copy the hash from the error message.

Type:string

Default:""

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.plugins.*.name

Name of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.plugins.*.version

Version of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lapce.settings

Configuration written to$XDG_CONFIG_HOME/lapce/settings.toml.Seehttps://github.com/lapce/lapce/blob/master/extra/schemas/settings.json for schema.

Type:TOML value

Default:{ }

Example:

{  core = {    custom-titlebar = false;    color-theme = "Custom";    icon-theme = "Material Icons";  };  editor = {    font-family = "FiraCode Nerd Bold Font, monospace";    font-size = 22;    tab-width = 2;    cursor-surrounding-lines = 4;    render-whitespace = "all";    bracket-pair-colorization = true;    highlight-matching-brackets = true;  };  ui = {    font-size = 20;    open-editors-visible = false;  };  lapce-nix.lsp-path = "$\{pkgs.nil\}/bin/nil";}

Declared by:

<home-manager/modules/programs/lapce.nix>
programs.lazydocker.enable

Whether to enable lazydocker, a simple terminal UI for both docker and docker compose.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lazydocker.nix>
programs.lazydocker.package

The lazydocker package to use.

Type:null or package

Default:pkgs.lazydocker

Declared by:

<home-manager/modules/programs/lazydocker.nix>
programs.lazydocker.settings

Configuration written to$XDG_CONFIG_HOME/lazydocker/config.ymlon Linux or on Darwin ifxdg.enable is set, otherwise~/Library/Application Support/jesseduffield/lazydocker/config.yml.Seehttps://github.com/jesseduffield/lazydocker/blob/master/docs/Config.mdfor supported values.

Type:YAML 1.1 value

Default:

{  commandTemplates = {    dockerCompose = "docker compose";  };}

Example:

{  gui.theme = {    activeBorderColor = ["red" "bold"];    inactiveBorderColor = ["blue"];  };  commandTemplates.dockerCompose = "docker compose compose -f docker-compose.yml";}

Declared by:

<home-manager/modules/programs/lazydocker.nix>
programs.lazygit.enable

Whether to enable lazygit, a simple terminal UI for git commands.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.package

The lazygit package to use.

Type:null or package

Default:pkgs.lazygit

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.settings

Configuration written to$XDG_CONFIG_HOME/lazygit/config.ymlon Linux or on Darwin ifxdg.enable is set, otherwise~/Library/Application Support/lazygit/config.yml.Seehttps://github.com/jesseduffield/lazygit/blob/master/docs/Config.mdfor supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  gui.theme = {    lightTheme = true;    activeBorderColor = [ "blue" "bold" ];    inactiveBorderColor = [ "black" ];    selectedLineBgColor = [ "default" ];  };}

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazygit.shellWrapperName

Name of the shell wrapper to be called.

Type:string

Default:"lg"

Example:"lg"

Declared by:

<home-manager/modules/programs/lazygit.nix>
programs.lazysql.enable

Whether to enable lazysql.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lazysql.nix>
programs.lazysql.package

The lazysql package to use.

Type:null or package

Default:pkgs.lazysql

Declared by:

<home-manager/modules/programs/lazysql.nix>
programs.lazysql.settings

Configuration settings for lazysql.

Type:TOML value

Default:{ }

Example:{ }

Declared by:

<home-manager/modules/programs/lazysql.nix>
programs.ledger.enable

Whether to enable ledger, a double-entry accounting system.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ledger.nix>
programs.ledger.package

The ledger package to use.

Type:null or package

Default:pkgs.ledger

Declared by:

<home-manager/modules/programs/ledger.nix>
programs.ledger.extraConfig

Extra configuration to add to$XDG_CONFIG_HOME/ledger/ledgerrc.

Type:strings concatenated with “\n”

Default:""

Example:

--sort date--effective--date-format %Y-%m-%d

Declared by:

<home-manager/modules/programs/ledger.nix>
programs.ledger.settings

Configuration written to$XDG_CONFIG_HOME/ledger/ledgerrc.Seehttps://www.ledger-cli.org/3.0/doc/ledger3.html#Detailed-Option-Descriptionfor explanation about possible values.

Type:attribute set of (boolean or signed integer or string or list of string)

Default:{ }

Example:

{  date-format = "%Y-%m-%d";  file = [    "~/finances/journal.ledger"    "~/finances/assets.ledger"    "~/finances/income.ledger"  ];  sort = "date";  strict = true;}

Declared by:

<home-manager/modules/programs/ledger.nix>
programs.less.enable

Whether to enable less, opposite of more.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/less.nix>
programs.less.package

The less package to use.

Type:null or package

Default:pkgs.less

Declared by:

<home-manager/modules/programs/less.nix>
programs.less.config

Configuration forless, written to$XDG_CONFIG_HOME/lesskey.

Type:strings concatenated with “\n”

Default:""

Example:

''  #command  s        back-line  t        forw-line''

Declared by:

<home-manager/modules/programs/less.nix>
programs.less.options

GNU-style options to be set via$LESS.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  RAW-CONTROL-CHARS = true;  quiet = true;  wheel-lines = 3;}

Declared by:

<home-manager/modules/programs/less.nix>
programs.lesspipe.enable

Whether to enable lesspipe preprocessor for less.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lesspipe.nix>
programs.lesspipe.package

The lesspipe package to use.

Type:package

Default:pkgs.lesspipe

Declared by:

<home-manager/modules/programs/lesspipe.nix>
programs.lf.enable

Whether to enable lf.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.package

The lf package to use.

Type:package

Default:pkgs.lf

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.cmdKeybindings

Keys to bind to command line commands which can only be one of thebuiltin commands. Keys set to null or an empty string are deleted.

Type:attribute set of (null or string)

Default:{ }

Example:{ "<c-g>" = "cmd-escape"; }

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.commands

Commands to declare. Commands set to null or an empty string aredeleted.

Type:attribute set of (null or string)

Default:{ }

Example:

{  get-mime-type = "%xdg-mime query filetype \"$f\"";  open = "$$OPENER $f";}

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.extraConfig

Custom lfrc lines.

Type:strings concatenated with “\n”

Default:""

Example:

''  $mkdir -p ~/.trash''

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.keybindings

Keys to bind. Keys set to null or an empty string are deleted.

Type:attribute set of (null or string)

Default:{ }

Example:

{  D = "trash";  U = "!du -sh";  gg = null;  gh = "cd ~";  i = "$less $f";}

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.previewer.keybinding

Key to bind to the script atpreviewer.source andpipe through less. Setting to null will not bind any key.

Type:null or string

Default:null

Example:"i"

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.previewer.source

Script or executable to use to preview files. Sets lf’spreviewer option.

Type:null or absolute path

Default:null

Example:

pkgs.writeShellScript "pv.sh" ''  #!/bin/sh  case "$1" in      *.tar*) tar tf "$1";;      *.zip) unzip -l "$1";;      *.rar) unrar l "$1";;      *.7z) 7z l "$1";;      *.pdf) pdftotext "$1" -;;      *) highlight -O ansi "$1" || cat "$1";;  esac''

Declared by:

<home-manager/modules/programs/lf.nix>
programs.lf.settings

An attribute set of lf settings. See the lf documentation fordetailed descriptions of these options. Preferprograms.lf.previewer.* for setting lf’sprevieweroption. All string options are quoted with double quotes.

Type:attribute set of (string or signed integer or list of (string or signed integer) or boolean)

Default:{ }

Example:

{  number = true;  ratios = [    1    1    2  ];  tabstop = 4;}

Declared by:

<home-manager/modules/programs/lf.nix>
programs.librewolf.enable

Whether to enable LibreWolf. LibreWolf is a privacy enhanced Firefox fork.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.enableGnomeExtensions

Whether to enable the GNOME Shell native host connector. Note, youalso need to set the NixOS optionservices.gnome.gnome-browser-connector.enable totrue.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.package

The LibreWolf package to use. If state version ≥ 19.09 thenthis should be a wrapped LibreWolf package. For earlier stateversions it should be an unwrapped LibreWolf package.Set tonull to disable installing LibreWolf.

Type:null or package

Default:pkgs.librewolf

Example:

pkgs.librewolf.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/librewolf.nix>
programs.librewolf.darwinDefaultsId

The id for the darwin defaults in order to set policies

Type:null or string

Default:null

Example:"com.developer.app"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.finalPackage

Resulting LibreWolf package.

Type:null or package(read only)

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.languagePacks

The language packs to install. Available language codes can be foundon the releases page:https://releases.mozilla.org/pub/firefox/releases/${version}/linux-x86_64/xpi/,replacing${version} with the version of LibreWolf you have. Ifthe version string of your Firefox derivative diverts from the upstreamversion, try setting therelease option.

Type:list of string

Default:[ ]

Example:

[  "en-GB"  "de"]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.nativeMessagingHosts

Additional packages containing native messaging hosts that should bemade available to LibreWolf extensions.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.pkcs11Modules

Additional packages to be loaded as PKCS #11 modules in Firefox.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.policies

See list of policies.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  BlockAboutConfig = true;  DefaultDownloadDirectory = "\${home}/Downloads";  ExtensionSettings = {    "uBlock0@raymondhill.net" = {      default_area = "menupanel";      install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";      installation_mode = "force_installed";      private_browsing = true;    };  };}

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles

Attribute set of LibreWolf profiles.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.bookmarks

Declarative bookmarks.

Type:(submodule) or ((list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) convertible to it) convertible to it

Default:{ }

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.bookmarks.configFile

Configuration file to define custom bookmarks.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.bookmarks.force

Whether to force override existing custom bookmarks.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.bookmarks.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.librewolf.profiles.<name>.bookmarks.settings

Custom bookmarks.

Type:(list of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) or (attribute set of ((bookmark submodule) or (directory submodule) or value “separator” (singular enum))) 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";  }  "separator"  {    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/librewolf.nix>
programs.librewolf.profiles.<name>.containers

Attribute set of container configurations. SeeMulti-AccountContainersfor 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/librewolf.nix>
programs.librewolf.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/librewolf.nix>
programs.librewolf.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/librewolf.nix>
programs.librewolf.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/librewolf.nix>
programs.librewolf.profiles.<name>.containers.<name>.name

Container name, e.g., shopping.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.containersForce

Whether to force replace the existing containers configuration.This is recommended since LibreWolf will replace the symlink onevery launch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions

Submodule for installing and configuring extensions.

Type:(submodule) or (list of package) convertible to it

Default:{ }

Example:

{  packages = with pkgs.nur.repos.rycee.firefox-addons; [    ublock-origin  ];  settings."uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };}

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.packages

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 extensionsinside ‹name› after the first installation.

To automatically enable extensions add"extensions.autoDisableScopes" = 0;toprograms.librewolf.profiles.<profile>.settings

Type:list of package

Default:[ ]

Example:

with pkgs.nur.repos.rycee.firefox-addons; [  privacy-badger]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.exactPermissions

When enabled,programs.librewolf.profiles.<profile>.extensions.settings.<extensionID>.permissionsmust specify the exact set of permissions that theextension will request.

This means that if the authorized permissions arebroader than what the extension requests, theassertion will fail.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.exhaustivePermissions

When enabled, the user must authorize requestedpermissions for all extensions fromprograms.librewolf.profiles.<profile>.extensions.packagesinprograms.librewolf.profiles.<profile>.extensions.settings.<extensionID>.permissions

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.force

Whether to override all previous firefox settings.

This is required when usingsettings.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.settings

Attribute set of options for each extension.The keys of the attribute set consist of the ID of the extensionor its UUID wrapped in curly braces.

Type:attribute set of (submodule)

Default:{ }

Example:

{  # Example with uBlock origin's extensionID  "uBlock0@raymondhill.net".settings = {    selectedFilterLists = [      "ublock-filters"      "ublock-badware"      "ublock-privacy"      "ublock-unbreak"      "ublock-quick-fixes"    ];  };  # Example with Stylus' UUID-form extensionID  "{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}".settings = {    dbInChromeStorage = true; # required for Stylus  }}

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.settings.<name>.force

Forcibly override any existing configuration forthis extension.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.settings.<name>.permissions

Allowed permissions for this extension. Seehttps://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissionsfor a list of relevant permissions.

Type:null or (list of string)

Default:"Any permissions"

Example:

[  "activeTab"]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extensions.settings.<name>.settings

Json formatted options for this extension.

Type:attribute set of (JSON value)

Default:{ }

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.extraConfig

Extra preferences to add touser.js.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.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/librewolf.nix>
programs.librewolf.profiles.<name>.isDefault

Whether this is a default profile.

Type:boolean

Default:"true if profile ID is 0"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.name

Profile name.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.path

Profile path.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.preConfig

Extra preferences to add touser.js, beforeprograms.firefox.profiles.<name>.settings.

Useprograms.firefox.profiles.<name>.extraConfig, unlessyou want to overwrite inprograms.firefox.profiles.<name>.settings, then use thisoption.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search

Declarative search engine configuration.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search.default

The default search engine used in the address bar and searchbar.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search.engines

Attribute set of search engine configurations. Engines thatonly havemetaData specified will be treated as builtinto LibreWolf.

SeeSearchEngine.jsmin LibreWolf’s source for available options. We maintain amapping to let you specify all options in the referenced linkwithout underscores, but it may fall out of date with futureoptions.

Note,icon is also a special option added by HomeManager to make it convenient to specify absolute icon paths.

Type:attribute set of attribute set of (JSON value)

Default:{ }

Example:

{  nix-packages = {    name = "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 = {    name = "NixOS Wiki";    urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];    iconMapObj."16" = "https://wiki.nixos.org/favicon.ico";    definedAliases = [ "@nw" ];  };  bing.metaData.hidden = true;  google.metaData.alias = "@g"; # builtin engines only support specifying one additional alias}

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search.force

Whether to force replace the existing searchconfiguration. This is recommended since LibreWolf willreplace the symlink for the search configuration on everylaunch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.librewolf.profiles.<name>.search.order

The order the search engines are listed in. Any engines thataren’t included in this list will be listed after these in anunspecified order.

Type:list of string

Default:[ ]

Example:

[  "ddg"  "google"]

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.search.privateDefault

The default search engine used in the Private Browsing.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.profiles.<name>.settings

Attribute set of LibreWolf preferences.

LibreWolf only supports int, bool, and string types forpreferences, but home-manager will automaticallyconvert all other JSON-compatible values into strings.

Type:attribute set of (LibreWolf 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/librewolf.nix>
programs.librewolf.profiles.<name>.userChrome

Custom LibreWolf user chrome CSS.

Type:strings concatenated with “\n” or absolute path

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/librewolf.nix>
programs.librewolf.profiles.<name>.userContent

Custom LibreWolf user content CSS.

Type:strings concatenated with “\n” or absolute path

Default:""

Example:

''  /* Hide scrollbar in FF Quantum */  *{scrollbar-width:none !important}''

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.librewolf.settings

Attribute set of global LibreWolf settings and overrides. Refer tohttps://librewolf.net/docs/settings/for details on supported values.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  "webgl.disabled" = false;  "privacy.resistFingerprinting" = false;}

Declared by:

<home-manager/modules/programs/librewolf.nix>
programs.lieer.enable

Whether to enable lieer Gmail synchronization for notmuch.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lieer.nix>
programs.lieer.package

The lieer package to use.

Type:package

Default:pkgs.lieer

Declared by:

<home-manager/modules/programs/lieer.nix>
programs.looking-glass-client.enable

Whether to enable looking-glass-client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/looking-glass-client.nix>
programs.looking-glass-client.package

The looking-glass-client package to use.

Type:null or package

Default:pkgs.looking-glass-client

Declared by:

<home-manager/modules/programs/looking-glass-client.nix>
programs.looking-glass-client.settings

looking-glass-client settings.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  app = {    allowDMA = true;    shmFile = "/dev/kvmfr0";  };  win = {    fullScreen = true;    showFPS = false;    jitRender = true;  };  spice = {    enable = true;    audio = true;  };  input = {    rawMouse = true;    escapeKey = 62;  };}

Declared by:

<home-manager/modules/programs/looking-glass-client.nix>
programs.lsd.enable

Whether to enable lsd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.package

The lsd package to use.

Type:null or package

Default:pkgs.lsd

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.colors

Configuration written to$XDG_CONFIG_HOME/lsd/colors.yaml. Seehttps://github.com/lsd-rs/lsd/tree/v1.0.0#color-theme-file-content forsupported colors.

If this option is non-empty then thecolor.theme option isautomatically set to"custom".

Type:YAML 1.1 value or absolute path

Default:{ }

Example:

{  size = {    large = "dark_yellow";    none = "grey";    small = "yellow";  };}

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.icons

Configuration written to$XDG_CONFIG_HOME/lsd/icons.yaml. Seehttps://github.com/lsd-rs/lsd?tab=readme-ov-file#icon-theme-file-content fordetails.

Type:YAML 1.1 value or absolute path

Default:{ }

Example:

{  extension = {    go = "";    hs = "";  };  filetype = {    dir = "📂";    file = "📄";  };  name = {    ".cargo" = "";    ".trash" = "";  };}

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lsd.settings

Configuration written to$XDG_CONFIG_HOME/lsd/config.yaml. Seehttps://github.com/Peltoche/lsd#config-file-contentfor supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{  date = "relative";  ignore-globs = [    ".git"    ".hg"  ];}

Declared by:

<home-manager/modules/programs/lsd.nix>
programs.lutris.enable

Whether to enable lutris…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.package

The lutris package to use.

Type:package

Default:pkgs.lutris

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.defaultWinePackage

The wine/proton package to set as the default for lutris.It must still be set under proton/winePackages.

Type:null or package

Default:null

Example:"pkgs.proton-ge-bin"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.extraPackages

List of packages to pass as extraPkgs to lutris.Please note runners are not detected properly this way, use a proper option for those.

Type:list of package

Default:[ ]

Example:"with pkgs; [mangohud winetricks gamescope gamemode umu-launcher]"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.protonPackages

List of proton packages to be added for lutris to use with umu-launcher.

Type:list of package

Default:[ ]

Example:"[ pkgs.proton-ge-bin ]"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners

Attribute set of Lutris runners along with their configurations.Each runner must be named exactly as lutris expects onlutris --list-runners.Note that runners added here won’t be configurable through Lutris using the GUI.

Type:attribute set of (submodule)

Default:{ }

Example:

''  runners = {    cemu.package = pkgs.cemu;    pcsx2.config = {      system.disable_screen_saver = true;      runner.runner_executable = "$\{pkgs.pcsx2}/bin/pcsx2-qt";    };  };''

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners.<name>.package

The package to use for this runner, nix will try to find the executable for this package.A more specific path can be set by using settings.runner.runner_executable instead.Uncompatible with certain runners, such as wine.

Type:null or package

Default:null

Example:"pkgs.cemu"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners.<name>.settings

Settings passed directly to lutris for this runner’s config at XDG_CONFIG/lutris/runners.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners.<name>.settings.runner

Runner specific options.For references, you must look for the file of said runner on lutris’ source code.

Type:open submodule of (YAML 1.1 value)

Default:{ }

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners.<name>.settings.runner.runner_executable

Specific option to point to a runner executable directly, don’t set runner.package if you set this.Uncompatible with certain runners such as wine.

Type:string or absolute path

Default:""

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.runners.<name>.settings.system

Lutris system options for this runner.Reference for system options:https://github.com/lutris/lutris/blob/master/lutris/sysoptions.py#L78

Type:open submodule of (YAML 1.1 value)

Default:{ }

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.steamPackage

This must be the same you use for your system, or two instances will conflict,for example, if you configure steam through the nixos module, a good value is “osConfig.programs.steam.package”

Type:null or package

Default:null

Example:"pkgs.steam or osConfig.programs.steam.package"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.lutris.winePackages

List of wine packages to be added for lutris to use.

Type:list of package

Default:[ ]

Example:"[ pkgs.wineWow64Packages.full ]"

Declared by:

<home-manager/modules/programs/lutris.nix>
programs.man.enable

Whether to enable manual pages and themancommand. This also includes “man” outputs of allhome.packages.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/man.nix>
programs.man.package

The man package to use.

Type:package

Default:pkgs.man

Declared by:

<home-manager/modules/programs/man.nix>
programs.man.extraConfig

Additional fields to be added to the end of the user manpath config file.

Type:strings concatenated with “\n”

Default:""

Example:

''  MANDATORY_MANPATH /usr/man  SECTION 1 n l 8 3 0 2 3type 5 4 9 6 7''

Declared by:

<home-manager/modules/programs/man.nix>
programs.man.generateCaches

Whether to generate the manual page index caches usingmandb(8). This allows searching for a page orkeyword using utilities likeapropos(1).

This feature is disabled by default because it slows downbuilding. If you don’t mind waiting a few more seconds whenHome Manager builds a new generation, you may safely enablethis option.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/man.nix>
programs.mangohud.enable

Whether to enable Mangohud.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mangohud.nix>
programs.mangohud.enableSessionWide

Sets environment variables so thatMangoHud is started on any application that supports it.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/mangohud.nix>
programs.mangohud.package

The mangohud package to use.

Type:package

Default:pkgs.mangohud

Declared by:

<home-manager/modules/programs/mangohud.nix>
programs.mangohud.settings

Configuration written to$XDG_CONFIG_HOME/MangoHud/MangoHud.conf. Seehttps://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conffor the default configuration.

Type:attribute set of (boolean or signed integer or floating point number or string or absolute path or list of (signed integer or string))

Default:{ }

Example:

{  output_folder = ~/Documents/mangohud/;  full = true;}

Declared by:

<home-manager/modules/programs/mangohud.nix>
programs.mangohud.settingsPerApplication

Sets MangoHud settings per application.Configuration written to$XDG_CONFIG_HOME/MangoHud/{application_name}.conf. Seehttps://github.com/flightlessmango/MangoHud/blob/master/data/MangoHud.conffor the default configuration.

Type:attribute set of attribute set of (boolean or signed integer or floating point number or string or absolute path or list of (signed integer or string))

Default:{ }

Example:

{  mpv = {    no_display = true;  };}

Declared by:

<home-manager/modules/programs/mangohud.nix>
programs.matplotlib.enable

Whether to enable matplotlib, a plotting library for python.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/matplotlib.nix>
programs.matplotlib.config

Add terms to thematplotlibrc file tocontrol the default matplotlib behavior.

Type:attribute set of anything

Default:{ }

Example:

{  backend = "Qt5Agg";  axes = {    grid = true;    facecolor = "black";    edgecolor = "FF9900";  };  grid.color = "FF9900";}

Declared by:

<home-manager/modules/programs/matplotlib.nix>
programs.matplotlib.extraConfig

Additional commands for matplotlib that will be added to thematplotlibrc file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/matplotlib.nix>
programs.mbsync.enable

Whether to enable mbsync IMAP4 and Maildir mailbox synchronizer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mbsync>
programs.mbsync.package

The isync package to use.

Type:package

Default:pkgs.isync

Declared by:

<home-manager/modules/programs/mbsync>
programs.mbsync.extraConfig

Extra configuration lines to add to the mbsync configuration.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/mbsync>
programs.mbsync.groups

Definition of groups.

Type:attribute set of attribute set of list of string

Default:{ }

Example:

{  inboxes = {    account1 = [ "Inbox" ];    account2 = [ "Inbox" ];  };}

Declared by:

<home-manager/modules/programs/mbsync>
programs.mc.enable

Whether to enable Midnight Commander.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.package

The mc package to use.

Type:null or package

Default:pkgs.mc

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.extensionSettings

Settings formc/mc.ext.ini file. This setting completely replaces the default/etc/mc/mc.ext.ini.

Midnight Commander does not merge this file with the system default,so you should copy the original if you want to preserve default behavior and add your changes there.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  EPUB = {    Open = "fbreader %f &";    Shell = ".epub";  };}

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.fileHighlightSettings

Settings formc/filehighlight.ini file. This setting completely replaces the default/etc/mc/filehighlight.ini.

Midnight Commander does not merge this file with the system default, so you should copy the original if you want to preserve default behaviorand add your changes there.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  lua = {    extensions = "lua;luac";  };}

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.keymapSettings

Settings formc/mc.keymap file.

Any missing settings will fall back to the system default.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  panel = {    Up = "up;ctrl-k";  };}

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.panelsSettings

Settings formc/panels file.

Any missing settings will fall back to the system default.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Dirs = {    current_is_left = false;    other_dir = "/home";  };}

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mc.settings

Settings formc/ini file.

Any missing settings will fall back to the system default.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Panels = {    show_dot_files = false;  };}

Declared by:

<home-manager/modules/programs/mc.nix>
programs.mcfly.enable

Whether to enable mcfly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.enableLightTheme

Whether to enable light mode theme.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.package

The mcfly package to use.

Type:package

Default:pkgs.mcfly

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.fuzzySearchFactor

Whether to enable fuzzy searching.0 is off; higher numbers weight toward shorter matches.Values in the 2-5 range get good results so far.

Type:unsigned integer, meaning >=0

Default:0

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.fzf.enable

Whether to enable McFly fzf integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.interfaceView

Interface view to use.

Type:one of “TOP”, “BOTTOM”

Default:"TOP"

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.keyScheme

Key scheme to use.

Type:one of “emacs”, “vim”

Default:"emacs"

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.mcflyFzfPackage

The mcfly-fzf package to use.

Type:package

Default:pkgs.mcfly-fzf

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcfly.settings

Settings written to~/.config/mcfly/config.toml.

Note, if your McFly database is currently in~/.mcfly,then this option has no effect.Move the database to$XDG_DATA_DIR/mcfly/history.db andremove~/.mcfly to make the settings take effect. Seehttps://github.com/cantino/mcfly#database-location.

Type:TOML value

Default:{ }

Example:

{  colors = {    menubar = {      bg = "black";      fg = "red";    };    darkmode = {      prompt = "cyan";      timing = "yellow";      results_selection_fg = "cyan";      results_selection_bg = "black";      results_selection_hl = "red";    };  };}

Declared by:

<home-manager/modules/programs/mcfly.nix>
programs.mcp.enable

Whether to enable mcp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mcp.nix>
programs.mcp.servers

MCP server configurations written toXDG_CONFIG_HOME/.config/mcp/mcp.json

Type:JSON value

Default:{ }

Example:

{  everything = {    command = "npx";    args = [      "-y"      "@modelcontextprotocol/server-everything"    ];  };  context7 = {    url = "https://mcp.context7.com/mcp";    headers = {      CONTEXT7_API_KEY = "{env:CONTEXT7_API_KEY}";    };  };}

Declared by:

<home-manager/modules/programs/mcp.nix>
programs.meli.enable

Whether to enable meli email client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/meli.nix>
programs.meli.package

meli package to use

Type:package

Default:<derivation meli-0.8.12>

Declared by:

<home-manager/modules/programs/meli.nix>
programs.meli.includes

Paths of the various meli configuration files to include.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/meli.nix>
programs.meli.settings

Meli Configuration

Type:open submodule of (TOML value)

Default:{ }

Example:

{shortcuts = {contact-list = {            create_contact = "c";            edit_contact = "m";          };general = {  edit = "m";  scroll_up = "e";  scroll_down = "n";};composing = {  edit = "m";  scroll_up = "e";  scroll_down = "n";};listing = {  new_mail = "t";  set_seen = "s";};pager = {            scroll_up = "e";            scroll_down = "n";};}}

Declared by:

<home-manager/modules/programs/meli.nix>
programs.mercurial.enable

Whether to enable Mercurial.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.package

The mercurial package to use.

Type:package

Default:pkgs.mercurial

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.aliases

Mercurial aliases to define.

Type:attribute set of anything

Default:{ }

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.extraConfig

Additional configuration to add.

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

Default:{ }

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.ignores

List of globs for files to be globally ignored.

Type:list of string

Default:[ ]

Example:

[  "*~"  "*.swp"]

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.ignoresRegexp

List of regular expressions for files to be globally ignored.

Type:list of string

Default:[ ]

Example:

[  "^.*~$"  "^.*\\.swp$"]

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.userEmail

Default user email to use.

Type:string

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mercurial.userName

Default user name to use.

Type:string

Declared by:

<home-manager/modules/programs/mercurial.nix>
programs.mergiraf.enable

Whether to enable mergiraf.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mergiraf.nix>
programs.mergiraf.package

The mergiraf package to use.

Type:package

Default:pkgs.mergiraf

Declared by:

<home-manager/modules/programs/mergiraf.nix>
programs.micro.enable

Whether to enable micro, a terminal-based text editor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/micro.nix>
programs.micro.package

The micro package to use.

Type:null or package

Default:pkgs.micro

Declared by:

<home-manager/modules/programs/micro.nix>
programs.micro.settings

Configuration written to$XDG_CONFIG_HOME/micro/settings.json. Seehttps://github.com/zyedidia/micro/blob/master/runtime/help/options.mdfor supported values.

Type:JSON value

Default:{ }

Example:

{  autosu = false;  cursorline = false;}

Declared by:

<home-manager/modules/programs/micro.nix>
programs.mise.enable

Whether to enable mise.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.package

The mise package to use.

Type:null or package

Default:pkgs.mise

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.globalConfig

Config written to$XDG_CONFIG_HOME/mise/config.toml.

Seehttps://mise.jdx.dev/configuration.html#global-config-config-mise-config-tomlfor details on supported values.

Type:TOML value

Default:{ }

Example:

tools = {  node = "lts";  python = ["3.10" "3.11"];};aliases = {  my_custom_node = "20";};

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mise.settings

Settings written to$XDG_CONFIG_HOME/mise/settings.toml.

Seehttps://mise.jdx.dev/configuration.html#settings-file-config-mise-settings-tomlfor details on supported values.

Type:TOML value

Default:{ }

Example:

verbose = false;experimental = false;disable_tools = ["node"];

Declared by:

<home-manager/modules/programs/mise.nix>
programs.mods.enable

Whether to enable mods.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mods.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mods.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mods.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mods.package

The mods package to use.

Type:package

Default:pkgs.mods

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mods.settings

Configuration written to$XDG_CONFIG_HOME/mods/mods.yml.

Seehttps://github.com/charmbracelet/mods/blob/main/config_template.yml for the fulllist of options.

Type:YAML 1.1 value

Default:{ }

Example:

''  {    default-model = "llama3.2";    apis = {      ollama = {        base-url = "http://localhost:11434/api";        models = {          "llama3.2" = {            max-input-chars = 650000;          };        };      };    };  }''

Declared by:

<home-manager/modules/programs/mods.nix>
programs.mpv.enable

Whether to enable mpv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.package

The mpv package to use.

Type:package

Default:pkgs.mpv

Example:pkgs.mpv-unwrapped.wrapper { mpv = pkgs.mpv-unwrapped.override { vapoursynthSupport = true; }; youtubeSupport = true; }

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.bindings

Input configuration written to$XDG_CONFIG_HOME/mpv/input.conf. Seempv(1)for the full list of options.

Type:attribute set of string

Default:{ }

Example:

{  WHEEL_UP = "seek 10";  WHEEL_DOWN = "seek -10";  "Alt+0" = "set window-scale 0.5";}

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.config

Configuration written to$XDG_CONFIG_HOME/mpv/mpv.conf. Seempv(1)for the full list of options.

Type:attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default:{ }

Example:

{  profile = "gpu-hq";  force-window = true;  ytdl-format = "bestvideo+bestaudio";  cache-default = 4000000;}

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.defaultProfiles

Profiles to be applied by default. Options set by them are overriddenby options set inprograms.mpv.config.

Type:list of string

Default:[ ]

Example:

[  "gpu-hq"]

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.extraInput

Additional lines that are appended to$XDG_CONFIG_HOME/mpv/input.conf.Seempv(1) for the full list of options.

Type:strings concatenated with “\n”

Default:""

Example:

''  esc         quit                        #! Quit  #           script-binding uosc/video   #! Video tracks  # additional comments''

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.includes

List of configuration files to include at the end of mpv.conf.

Type:list of string

Default:[ ]

Example:

[  "~/path/to/config.inc";  "~/path/to/conditional.inc";]

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.profiles

Sub-configuration options for specific profiles written to$XDG_CONFIG_HOME/mpv/mpv.conf. Seeprograms.mpv.config for more information.

Type:attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default:{ }

Example:

{  fast = {    vo = "vdpau";  };  "protocol.dvd" = {    profile-desc = "profile for dvd:// streams";    alang = "en";  };}

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.scriptOpts

Script options added to$XDG_CONFIG_HOME/mpv/script-opts/. Seempv(1)for the full list of options of builtin scripts.

Type:attribute set of attribute set of (string or signed integer or boolean or floating point number or list of (string or signed integer or boolean or floating point number))

Default:{ }

Example:

{  osc = {    scalewindowed = 2.0;    vidscale = false;    visibility = "always";  };}

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpv.scripts

List of scripts to use with mpv.

Type:list of package

Default:[ ]

Example:[ pkgs.mpvScripts.mpris ]

Declared by:

<home-manager/modules/programs/mpv.nix>
programs.mpvpaper.enable

Whether to enable mpvpaper.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mpvpaper.nix>
programs.mpvpaper.package

The mpvpaper package to use.

Type:null or package

Default:pkgs.mpvpaper

Declared by:

<home-manager/modules/programs/mpvpaper.nix>
programs.mpvpaper.pauseList

List of program names that will cause mpvpaper to pause.Programs must be separated by spaces or newlines.

Type:strings concatenated with “\n”

Default:""

Example:

''  firefox  steam  obs''

Declared by:

<home-manager/modules/programs/mpvpaper.nix>
programs.mpvpaper.stopList

List of program names that will cause mpvpaper to stop.Programs must be separated by spaces or newlines.

Type:strings concatenated with “\n”

Default:""

Example:

''  firefox  steam  obs''

Declared by:

<home-manager/modules/programs/mpvpaper.nix>
programs.mr.enable

Whether to enable mr, a tool to manage all your version control repositories.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mr.nix>
programs.mr.package

The mr package to use.

Type:null or package

Default:pkgs.mr

Declared by:

<home-manager/modules/programs/mr.nix>
programs.mr.settings

Configuration written to$HOME/.mrconfigSeehttps://myrepos.branchable.com/for an example configuration.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string) or a non-empty list of them)

Default:{ }

Example:

{  foo = {    checkout = "git clone git@github.com:joeyh/foo.git";    update = "git pull --rebase";  };  ".local/share/password-store" = {    checkout = "git clone git@github.com:myuser/password-store.git";  };}

Declared by:

<home-manager/modules/programs/mr.nix>
programs.msmtp.enable

Whether to enable msmtp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/msmtp>
programs.msmtp.package

The msmtp package to use.

Type:package

Default:pkgs.msmtp

Declared by:

<home-manager/modules/programs/msmtp>
programs.msmtp.configContent

Content added to msmtp config.Seehttps://marlam.de/msmtp/msmtprc.txt for examples.

Note, if running msmtp fails with the error message “account defaultwas already defined” then you probably have an account command here.Account commands should be placed inaccounts.email.accounts.<name>.msmtp.extraConfig.

Type:strings concatenated with “\n”

Default:""

Example:

lib.mkOrder 1200 '''  set syslog''';

Declared by:

<home-manager/modules/programs/msmtp>
programs.mu.enable

Whether to enable mu, a maildir indexer and searcher.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mu.nix>
programs.mu.package

The mu package to use.

Type:package

Default:pkgs.mu

Declared by:

<home-manager/modules/programs/mu.nix>
programs.mu.home

Directory to store Mu’s database.

Type:absolute path

Default:config.xdg.cacheHome + "/mu"

Example:"\${config.home.homeDirectory}/Maildir/.mu"

Declared by:

<home-manager/modules/programs/mu.nix>
programs.mujmap.enable

Whether to enable mujmap Gmail synchronization for notmuch.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mujmap.nix>
programs.mujmap.package

The mujmap package to use.

Type:package

Default:pkgs.mujmap

Declared by:

<home-manager/modules/programs/mujmap.nix>
programs.mullvad-vpn.enable

Whether to enable Mullvad VPN.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mullvad-vpn.nix>
programs.mullvad-vpn.package

The mullvad-vpn package to use.

Type:null or package

Default:pkgs.mullvad-vpn

Declared by:

<home-manager/modules/programs/mullvad-vpn.nix>
programs.mullvad-vpn.settings

Written toXDG_CONFIG_HOME/Mullvad VPN/gui_settings.json or~/Library/Application Support/Mullvad VPN/gui_settings.json.Seehttps://github.com/mullvad/mullvadvpn-app/blob/main/desktop/packages/mullvad-vpn/src/main/gui-settings.tsfor options.

Type:JSON value

Default:{ }

Example:

{  animateMap = true;  autoConnect = false;  browsedForSplitTunnelingApplications = [ ];  changelogDisplayedForVersion = "";  enableSystemNotifications = true;  monochromaticIcon = false;  preferredLocale = "system";  startMinimized = false;  unpinnedWindow = true;  updateDismissedForVersion = "";}

Declared by:

<home-manager/modules/programs/mullvad-vpn.nix>
programs.mypy.enable

Whether to enable mypy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/mypy.nix>
programs.mypy.package

The mypy package to use.

Type:null or package

Default:pkgs.mypy

Declared by:

<home-manager/modules/programs/mypy.nix>
programs.mypy.settings

Configuration written to$XDG_CONFIG_HOME/mypy/config.

Seehttps://mypy.readthedocs.io/en/stable/config_file.htmlfor more information.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  mypy = {    warn_return_any = true;    warn_unused_configs = true;  };}

Declared by:

<home-manager/modules/programs/mypy.nix>
programs.navi.enable

Whether to enable Navi.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/navi.nix>
programs.navi.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/navi.nix>
programs.navi.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/navi.nix>
programs.navi.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/navi.nix>
programs.navi.package

The navi package to use.

Type:package

Default:pkgs.navi

Declared by:

<home-manager/modules/programs/navi.nix>
programs.navi.settings

Configuration written to$XDG_CONFIG_HOME/navi/config.yaml on Linux or$HOME/Library/Application Support/navi/config.yamlon Darwin. Seehttps://github.com/denisidoro/navi/blob/master/docs/config_file.mdfor more information.

Type:YAML 1.1 value

Default:{ }

Example:

{  cheats = {    paths = [      "~/cheats/"    ];  };}

Declared by:

<home-manager/modules/programs/navi.nix>
programs.ncmpcpp.enable

Whether to enable ncmpcpp - an ncurses Music Player Daemon (MPD) client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.package

The ncmpcpp package to use.

Type:package

Default:pkgs.ncmpcpp

Example:pkgs.ncmpcpp.override { visualizerSupport = true; }

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.bindings

List of keybindings.

Type:list of (submodule)

Default:[ ]

Example:

[  { key = "j"; command = "scroll_down"; }  { key = "k"; command = "scroll_up"; }  { key = "J"; command = [ "select_item" "scroll_down" ]; }  { key = "K"; command = [ "select_item" "scroll_up" ]; }]

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.bindings.*.command

Command or sequence of commands to be executed.

Type:string or list of string

Example:"scroll_down"

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.bindings.*.key

Key to bind.

Type:string

Example:"j"

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.mpdMusicDir

Value of thempd_music_dir setting. On Linux platforms thevalue ofservices.mpd.musicDirectory is used as thedefault ifservices.mpd.enable istrue.

Type:null or (string or absolute path convertible to it)

Default:

if pkgs.stdenv.hostPlatform.isLinux && config.services.mpd.enable then  config.services.mpd.musicDirectoryelse  null

Example:"~/music"

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncmpcpp.settings

Attribute set from name of a setting to its value. For available optionsseencmpcpp(1).

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  ncmpcpp_directory = "~/.local/share/ncmpcpp";}

Declared by:

<home-manager/modules/programs/ncmpcpp.nix>
programs.ncspot.enable

Whether to enable ncspot.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ncspot.nix>
programs.ncspot.package

The ncspot package to use.

Type:null or package

Default:pkgs.ncspot

Declared by:

<home-manager/modules/programs/ncspot.nix>
programs.ncspot.settings

Configuration written to$XDG_CONFIG_HOME/ncspot/config.toml.

Seehttps://github.com/hrkfdn/ncspot#configurationfor the full list of options.

Type:TOML value

Default:{ }

Example:

{  shuffle = true;  gapless = true;}

Declared by:

<home-manager/modules/programs/ncspot.nix>
programs.ne.enable

Whether to enable ne.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.package

The ne package to use.

Type:null or package

Default:pkgs.ne

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.automaticPreferences

Automatic preferences files for ne.

Type:attribute set of strings concatenated with “\n”

Default:{ }

Example:

{  nix = ''    TAB 0    TS 2  '';  js = ''    TS 4  '';}

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.defaultPreferences

Default preferences for ne.

Equivalent toprograms.ne.automaticPreferences.".default".

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.keybindings

Keybinding file for ne.

Type:strings concatenated with “\n”

Default:""

Example:

''  KEY 7f BS  SEQ "\x1b[1;5D" 7f''

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.menus

Menu configuration file for ne.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/ne.nix>
programs.ne.virtualExtensions

Virtual extensions configuration file for ne.

Type:strings concatenated with “\n”

Default:""

Example:

''  sh   1  ^#!\s*/.*\b(bash|sh|ksh|zsh)\s*  csh  1  ^#!\s*/.*\b(csh|tcsh)\s*''

Declared by:

<home-manager/modules/programs/ne.nix>
programs.neomutt.enable

Whether to enable the NeoMutt mail client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.package

The neomutt package to use.

Type:package

Default:pkgs.neomutt

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.binds

List of keybindings.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.binds.*.action

Specify the action to take.

Type:string

Example:"<enter-command>toggle sidebar_visible<enter><refresh>"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.binds.*.key

The key to bind.

If you want to bind ‘\Cp’ for example, which would be Ctrl + ‘p’, you need to escape twice: ‘\Cp’!

Type:string

Example:"<left>"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.binds.*.map

Select the menu to bind the command to.

Type:one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

Default:

[  "index"]

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.changeFolderWhenSourcingAccount

Whether to enable changing the folder when sourcing an account.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.checkStatsInterval

Enable and set the interval of automatic mail check.

Type:null or signed integer

Default:null

Example:60

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.editor

Select the editor used for writing mail.

Type:string

Default:"$EDITOR"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.extraConfig

Extra configuration appended to the end.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.macros

List of macros.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.macros.*.action

Specify the action to take.

Type:string

Example:"<enter-command>toggle sidebar_visible<enter><refresh>"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.macros.*.key

The key to bind.

If you want to bind ‘\Cp’ for example, which would be Ctrl + ‘p’, you need to escape twice: ‘\Cp’!

Type:string

Example:"<left>"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.macros.*.map

Select the menu to bind the command to.

Type:one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime” or list of (one of “alias”, “attach”, “browser”, “compose”, “editor”, “generic”, “index”, “mix”, “pager”, “pgp”, “postpone”, “query”, “smime”)

Default:

[  "index"]

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.settings

Extra configuration appended to the end.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sidebar

Options related to the sidebar.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sidebar.enable

Whether to enable sidebar support.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sidebar.format

Sidebar format. Check neomutt documentation for details.

Type:string

Default:"%D%?F? [%F]?%* %?N?%N/?%S"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sidebar.shortPath

By default sidebar shows the full path of the mailbox, butwith this enabled only the relative name is shown.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sidebar.width

Width of the sidebar

Type:signed integer

Default:22

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sort

Sorting method on messages.

Type:one of “date”, “date-received”, “from”, “mailbox-order”, “score”, “size”, “spam”, “subject”, “threads”, “to”, “reverse-date”, “reverse-date-received”, “reverse-from”, “reverse-mailbox-order”, “reverse-score”, “reverse-size”, “reverse-spam”, “reverse-subject”, “reverse-threads”, “reverse-to”, “last-date”, “last-date-received”, “last-from”, “last-mailbox-order”, “last-score”, “last-size”, “last-spam”, “last-subject”, “last-threads”, “last-to”, “reverse-last-date”, “reverse-last-date-received”, “reverse-last-from”, “reverse-last-mailbox-order”, “reverse-last-score”, “reverse-last-size”, “reverse-last-spam”, “reverse-last-subject”, “reverse-last-threads”, “reverse-last-to”

Default:"threads"

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.sourcePrimaryAccount

Whether to enable source the primary account by default.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.unmailboxes

Setunmailboxes * at the start of account configurations.It removes previous sidebar mailboxes when sourcing an account configuration.

Seehttp://www.mutt.org/doc/manual/#mailboxes for more information.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neomutt>
programs.neomutt.vimKeys

Enable vim-like bindings.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neomutt>
programs.neovide.enable

Whether to enable Neovide, No Nonsense Neovim Client in Rust.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/neovide.nix>
programs.neovide.package

The neovide package to use.

Type:null or package

Default:pkgs.neovide

Declared by:

<home-manager/modules/programs/neovide.nix>
programs.neovide.settings

Neovide configuration.For available settings seehttps://neovide.dev/config-file.html.For any option not found will need to be done in your neovim’s config instead.

Type:TOML value

Default:{ }

Example:

{  fork = false;  frame = "full";  idle = true;  maximized = false;  neovim-bin = "/usr/bin/nvim";  no-multigrid = false;  srgb = false;  tabs = true;  theme = "auto";  title-hidden = true;  vsync = true;  wsl = false;  font = {    normal = [];    size = 14.0;  };}

Declared by:

<home-manager/modules/programs/neovide.nix>
programs.neovim.enable

Whether to enable Neovim.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.package

The neovim package to use.

Type:package

Default:pkgs.neovim-unwrapped

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.coc.enable

Whether to enable Coc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.coc.package

The coc-nvim package to use.

Type:package

Default:pkgs.vimPlugins.coc-nvim

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.coc.pluginConfig

Script to configure CoC. Must be viml.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.coc.settings

Extra configuration lines to add to$XDG_CONFIG_HOME/nvim/coc-settings.jsonSeehttps://github.com/neoclide/coc.nvim/wiki/Using-the-configuration-filefor options.

Type:JSON value

Default:{ }

Example:

{  "suggest.noselect" = true;  "suggest.enablePreview" = true;  "suggest.enablePreselect" = false;  "suggest.disableKind" = true;  languageserver = {    haskell = {      command = "haskell-language-server-wrapper";      args = [ "--lsp" ];      rootPatterns = [        "*.cabal"        "stack.yaml"        "cabal.project"        "package.yaml"        "hie.yaml"      ];      filetypes = [ "haskell" "lhaskell" ];    };  };};

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.defaultEditor

Whether to configurenvim as the defaulteditor using theEDITOR environment variable.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraConfig

Custom vimrc lines.

Type:strings concatenated with “\n”

Default:""

Example:

''  set nobackup''

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraLuaConfig

Custom lua lines.

Type:strings concatenated with “\n”

Default:""

Example:

''  vim.opt.nobackup = true''

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraLuaPackages

The extra Lua packages required for your plugins to work.This option accepts a function that takes a Lua package set as an argument,and selects the required Lua packages from this package set.See the example for more info.

Type:(function that evaluates to a(n) list of package) or (list of package) convertible to it

Default:ps: [ ]

Example:luaPkgs: with luaPkgs; [ luautf8 ]

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraPackages

Extra packages available to nvim.

Type:list of package

Default:[ ]

Example:[ pkgs.shfmt ]

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraPython3Packages

The extra Python 3 packages required for your plugins to work.This option accepts a function that takes a Python 3 package set as an argument,and selects the required Python 3 packages from this package set.See the example for more info.

Type:(function that evaluates to a(n) list of package) or (list of package) convertible to it

Default:ps: [ ]

Example:pyPkgs: with pyPkgs; [ python-language-server ]

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.extraWrapperArgs

Extra arguments to be passed to the neovim wrapper.This option sets environment variables required for building and running binarieswith external package managers like mason.nvim.

Type:list of string

Default:[ ]

Example:

[  "--suffix"  "LIBRARY_PATH"  ":"  "${lib.makeLibraryPath [ pkgs.stdenv.cc.cc pkgs.zlib ]}"  "--suffix"  "PKG_CONFIG_PATH"  ":"  "${lib.makeSearchPathOutput "dev" "lib/pkgconfig" [ pkgs.stdenv.cc.cc pkgs.zlib ]}"]

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.finalPackage

Resulting customized neovim package.

Type:package(read only)

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.generatedConfigViml

Generated vimscript config.

Type:strings concatenated with “\n”(read only)

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.generatedConfigs

Generated configurations with as key their language (set via type).

Type:attribute set of strings concatenated with “\n”(read only)

Example:

{  viml = ''    " Generated by home-manager    map <leader> ,  '';  lua = ''    -- Generated by home-manager    vim.opt.background = "dark"  '';}

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.plugins

List of vim plugins to install optionally associated withconfiguration to be placed in init.vim.

This option is mutually exclusive withconfigure.

Type:list of (package or (submodule))

Default:[ ]

Example:

with pkgs.vimPlugins; [  yankring  vim-nix  { plugin = vim-startify;    config = "let g:startify_change_to_vcs_root = 0";  }]

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.viAlias

Symlinkvi tonvim binary.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.vimAlias

Symlinkvim tonvim binary.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.vimdiffAlias

Aliasvimdiff tonvim -d.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.withNodeJs

Enable node provider. Set totrue touse Node plugins.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.withPython3

Enable Python 3 provider. Set totrue touse Python 3 plugins.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.neovim.withRuby

Enable ruby provider.

Type:null or boolean

Default:true

Declared by:

<home-manager/modules/programs/neovim.nix>
programs.newsboat.enable

Whether to enable the Newsboat feed reader.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.package

The newsboat package to use.

Type:null or package

Default:pkgs.newsboat

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.autoFetchArticles.enable

Whether to enable automatic article fetcher timer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.autoFetchArticles.onCalendar

How often to fetch new articles.

Seesystemd.time(7) for more information about the format.

Type:string

Default:"daily"

Example:"weekly"

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.autoReload

Whether to enable automatic reloading while newsboat is running.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.autoVacuum.enable

Whether to enable automatic cleaning of the newsboat cache.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.autoVacuum.onCalendar

How often to run the cleaning command.

Seesystemd.time(7) for more information about the format.

Type:string

Default:"weekly"

Example:"monthly"

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.browser

External browser to use.

Type:string

Default:${pkgs.xdg-utils}/bin/xdg-open

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.extraConfig

Extra configuration values that will be appended to the end.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.maxItems

Maximum number of items per feed, 0 for infinite.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.queries

A list of queries to use.

Type:attribute set of string

Default:{ }

Example:

{  foo = "rssurl =~ \"example.com\"";}

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.reloadThreads

How many threads to use for updating the feeds.

Type:signed integer

Default:5

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.reloadTime

Time in minutes between reloads.

Type:null or signed integer

Default:60

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.urls

List of news feeds. Leave it empty if you want to manage feedsimperatively, for example, using Syncthing.

Type:list of (submodule)

Default:[ ]

Example:

[  {    tags = [      "foo"      "bar"    ];    url = "http://example.com";  }]

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.urls.*.tags

Feed tags.

Type:list of string

Default:[ ]

Example:

[  "foo"  "bar"]

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.urls.*.title

Feed title.

Type:null or string

Default:null

Example:"ORF News"

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.newsboat.urls.*.url

Feed URL.

Type:string

Example:"http://example.com"

Declared by:

<home-manager/modules/programs/newsboat.nix>
programs.nh.enable

Whether to enable nh, yet another Nix CLI helper.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.package

The nh package to use.

Type:package

Default:pkgs.nh

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.clean.enable

Whether to enable periodic garbage collection for user profile and nix store with nh cleanuser.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.clean.dates

How often cleanup is performed.

On linux the format is described insystemd.time(7).

On Darwin it must be one of: hourly, daily, weekly, monthly, semiannually, annually, which are implemented as defined insystemd.time(7).

Type:(optionally newline-terminated) single-line string

Default:"weekly"

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.clean.extraArgs

Options given to nh clean when the service is run automatically.

Seenh clean all --help for more information.

Type:(optionally newline-terminated) single-line string

Default:""

Example:"--keep 5 --keep-since 3d"

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.darwinFlake

The string that will be used for theNH_DARWIN_FLAKE environment variable.

NH_DARWIN_FLAKE is used by nh as the default flake for performingnh darwin actions, such asnh darwin switch.Setting this will take priority over theflake option.

Type:null or (optionally newline-terminated) single-line string or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.flake

The path that will be used for theFLAKE environment variable.

FLAKE is used by nh as the default flake for performing actions,likenh os switch.

Type:null or (optionally newline-terminated) single-line string or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.homeFlake

The string that will be used for theNH_HOME_FLAKE environment variable.

NH_HOME_FLAKE is used by nh as the default flake for performingnh homeactions, such asnh home switch.Setting this will take priority over theflake option.

Type:null or (optionally newline-terminated) single-line string or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nh.osFlake

The string that will be used for theNH_OS_FLAKE environment variable.

NH_OS_FLAKE is used by nh as the default flake for performingnh osactions, such asnh os switch.Setting this will take priority over theflake option.

Type:null or (optionally newline-terminated) single-line string or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nh.nix>
programs.nheko.enable

Whether to enable Qt desktop client for Matrix.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nheko.nix>
programs.nheko.package

The nheko package to use.

Type:null or package

Default:pkgs.nheko

Declared by:

<home-manager/modules/programs/nheko.nix>
programs.nheko.settings

Attribute set of Nheko preferences (converted to an INI file).

For now, it is recommended to run nheko and sign-in before filling inthe configuration settings in this module, as nheko writes the accesstoken to$XDG_CONFIG_HOME/nheko/nheko.conf thefirst time we sign in, and we need that data into these settings for thecorrect functionality of the application.

This a temporary inconvenience, however, as nheko has plans to move theauthentication stuff into the local database they currently use. Oncethis happens, this will no longer be an issue.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  general.disableCertificateValidation = false;  auth = {    accessToken = "SECRET";    deviceId = "MY_DEVICE";    homeServer = "https://matrix-client.matrix.org:443";    userId = "@@user:matrix.org";  };  settings.scaleFactor = 1.0;  sidebar.width = 416;  user = {    alertOnNotification = true;    animateImagesOnHover = false;    "sidebar\\roomListWidth" = 308;  };}

Declared by:

<home-manager/modules/programs/nheko.nix>
programs.niriswitcher.enable

Whether to enable niriswitcher, an application switcher for niri.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/niriswitcher.nix>
programs.niriswitcher.package

The niriswitcher package to use.

Type:null or package

Default:pkgs.niriswitcher

Declared by:

<home-manager/modules/programs/niriswitcher.nix>
programs.niriswitcher.settings

niriswitcher configuration.For available settings seehttps://github.com/isaksamsten/niriswitcher/?tab=readme-ov-file#options.

Type:null or TOML value

Default:null

Example:

{  keys = {    modifier = "Super";    switch = {      next = "Tab";      prev = "Shift+Tab";    };  };  center_on_focus = true;  appearance = {    system_theme = "dark";    icon_size = 64;  };}

Declared by:

<home-manager/modules/programs/niriswitcher.nix>
programs.niriswitcher.style

CSS style of the switcher.https://github.com/isaksamsten/niriswitcher/?tab=readme-ov-file#themesfor the documentation.

If the value is set to a path literal, then the path will be used as the CSS file.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  .application-name {    opacity: 1;    color: rgba(255, 255, 255, 0.6);  }  .application.selected .application-name {    color: rgba(255, 255, 255, 1);  }''

Declared by:

<home-manager/modules/programs/niriswitcher.nix>
programs.nix-index.enable

Whether to enable nix-index, a file database for nixpkgs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nix-index.nix>
programs.nix-index.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-index.nix>
programs.nix-index.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-index.nix>
programs.nix-index.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-index.nix>
programs.nix-index.package

The nix-index package to use.

Type:package

Default:pkgs.nix-index

Declared by:

<home-manager/modules/programs/nix-index.nix>
programs.nix-init.enable

Whether to enable nix-init.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nix-init.nix>
programs.nix-init.package

The nix-init package to use.

Type:null or package

Default:pkgs.nix-init

Declared by:

<home-manager/modules/programs/nix-init.nix>
programs.nix-init.settings

Configuration written to$XDG_CONFIG_HOME/nix-init/config.toml.Seehttps://github.com/nix-community/nix-init#configuration for the full listof options.

Type:TOML value

Default:{ }

Example:

{  maintainers = [    "figsoda"  ];  nixpkgs = "<nixpkgs>";  commit = true;  access-tokens = {    "github.com" = "ghp_blahblahblah...";    "gitlab.com" = {      command = [        "secret-tool"        "or"        "whatever"        "you"        "use"      ];    };    "gitlab.gnome.org" = {      file = "/path/to/api/token";    };  };}

Declared by:

<home-manager/modules/programs/nix-init.nix>
programs.nix-search-tv.enable

Whether to enable nix-search-tv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nix-search-tv.nix>
programs.nix-search-tv.enableTelevisionIntegration

Enables integration with television. Creates a channel throughprograms.television.channels.nix-search-tv, which are set as defaultsand can be overridden.Seeprograms.television.channelsfor more information

Type:boolean

Default:config.programs.television.enable

Example:true

Declared by:

<home-manager/modules/programs/nix-search-tv.nix>
programs.nix-search-tv.package

The nix-search-tv package to use.

Type:null or package

Default:pkgs.nix-search-tv

Declared by:

<home-manager/modules/programs/nix-search-tv.nix>
programs.nix-search-tv.settings

Configuration written to$XDG_CONFIG_HOME/nix-search-tv/config.json.Seehttps://github.com/3timeslazy/nix-search-tv?tab=readme-ov-file#configurationfor the full list of options.

Type:JSON value

Default:{ }

Example:

{  indexes = [ "nixpkgs" "home-manager" "nixos" ];  experimental = {    render_docs_indexes = {      nvf = "https://notashelf.github.io/nvf/options.html";    };  };}

Declared by:

<home-manager/modules/programs/nix-search-tv.nix>
programs.nix-your-shell.enable

Whether to enablenix-your-shell, a wrapper fornix develop ornix-shellto retain the same shell inside the new environment.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.package

The nix-your-shell package to use.

Type:package

Default:pkgs.nix-your-shell

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.nix-output-monitor.enable

Whether to enablenix-output-monitor.Pipe your nix-build output through the nix-output-monitor a.k.a nom to get additional information while building.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nix-your-shell.nix-output-monitor.package

The nix-output-monitor package to use.

Type:package

Default:pkgs.nix-output-monitor

Declared by:

<home-manager/modules/programs/nix-your-shell.nix>
programs.nnn.enable

Whether to enable nnn.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.package

The nnn package to use.

Type:package

Default:pkgs.nnn

Example:pkgs.nnn.override { withNerdIcons = true; }

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.bookmarks

Directory bookmarks.

Type:attribute set of string

Default:{ }

Example:

{  d = "~/Documents";  D = "~/Downloads";  p = "~/Pictures";  v = "~/Videos";};

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.extraPackages

Extra packages available to nnn.

Type:list of package

Default:[ ]

Example:with pkgs; [ ffmpegthumbnailer mediainfo sxiv ]

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.plugins

Manage nnn plugins.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.plugins.mappings

Key mappings to the plugins.

Type:attribute set of string

Default:{ }

Example:

{  c = "fzcd";  f = "finder";  v = "imgview";};

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.nnn.plugins.src

Path to the plugin folder.

Type:null or absolute path

Default:null

Example:

(pkgs.fetchFromGitHub {  owner = "jarun";  repo = "nnn";  rev = "v4.0";  sha256 = "sha256-Hpc8YaJeAzJoEi7aJ6DntH2VLkoR6ToP6tPYn3llR7k=";}) + "/plugins";

Declared by:

<home-manager/modules/programs/nnn.nix>
programs.noti.enable

Whether to enable Noti.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/noti.nix>
programs.noti.package

The noti package to use.

Type:null or package

Default:pkgs.noti

Declared by:

<home-manager/modules/programs/noti.nix>
programs.noti.settings

Configuration written to$XDG_CONFIG_HOME/noti/noti.yaml.

Seenoti.yaml(5).for the full list of options.

Type:attribute set of attribute set of string

Default:{ }

Example:

{  say = {    voice = "Alex";  };  slack = {    token = "1234567890abcdefg";    channel = "@jaime";  };}

Declared by:

<home-manager/modules/programs/noti.nix>
programs.notmuch.enable

Whether to enable Notmuch mail indexer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.extraConfig

Options that should be appended to the notmuch configuration file.

Type:attribute set of attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.hooks.postInsert

Bash statements run after a message has been insertedinto the database and initial tags have been applied.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.hooks.postNew

Bash statements run after new messages have been importedinto the database and initial tags have been applied.

Type:strings concatenated with “\n”

Default:""

Example:

''  notmuch tag +nixos -- tag:new and from:nixos1@discoursemail.com''

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.hooks.preNew

Bash statements run before scanning or importing newmessages into the database.

Type:strings concatenated with “\n”

Default:""

Example:"mbsync --all"

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.maildir.synchronizeFlags

Whether to synchronize Maildir flags.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.new

Options related to email processing performed bynotmuch new.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.new.ignore

A list to specify files and directories that will not besearched for messages bynotmuch new.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.new.tags

A list of tags that will be added to all messagesincorporated bynotmuch new.

Type:list of string

Default:

[  "unread"  "inbox"]

Example:

[  "new"]

Declared by:

<home-manager/modules/programs/notmuch>
programs.notmuch.search.excludeTags

A list of tags that will be excluded from search results bydefault. Using an excluded tag in a query will override thatexclusion.

Type:list of string

Default:

[  "deleted"  "spam"]

Example:

[  "trash"  "spam"]

Declared by:

<home-manager/modules/programs/notmuch>
programs.numbat.enable

Whether to enable Numbat.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/numbat.nix>
programs.numbat.package

The numbat package to use.

Type:null or package

Default:pkgs.numbat

Declared by:

<home-manager/modules/programs/numbat.nix>
programs.numbat.initFile

User initialization file (init.nbt) contents. May be specifiedinline or as a path to a source file.

Type:null or strings concatenated with “\n” or absolute path

Default:null

Example:

''  unit kohm: ElectricResistance = kV/A''

Declared by:

<home-manager/modules/programs/numbat.nix>
programs.numbat.settings

Options to add toconfig.toml. Seehttps://numbat.dev/doc/cli-customization.html#configuration for options.

Type:TOML value

Default:{ }

Example:

{  exchange-rates = {    fetching-policy = "on-first-use";  };  intro-banner = "short";  prompt = "> ";}

Declared by:

<home-manager/modules/programs/numbat.nix>
programs.nushell.enable

Whether to enable nushell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.package

The nushell package to use.

Type:null or package

Default:pkgs.nushell

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.configDir

Location of the nushell config directory. This directory contains theconfig.nu,env.nu, andlogin.nu files, as well as history and plugin files.

Type:string or absolute path

Default:

if pkgs.stdenv.isDarwin && !config.xdg.enable then  "Library/Application Support/nushell"else  "${config.xdg.configHome}/nushell";

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.configFile

The configuration file to be used for nushell.

Seehttps://www.nushell.sh/book/configuration.html#configuration for more information.

Type:null or (submodule)

Default:null

Example:

{  text = ''    const NU_LIB_DIRS = $NU_LIB_DIRS ++ ${      lib.hm.nushell.toNushell (lib.concatStringsSep ":" [ ./scripts ])    }    $env.config.filesize_metric = false    $env.config.table_mode = 'rounded'    $env.config.use_ls_colors = true  '';}

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.configFile.source

Path of the nushellconfig.nu file to use.If the text option is set, it will be preferred.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.configFile.text

Text of the nushellconfig.nu file.If unset then the source option will be preferred.

Type:strings concatenated with “\n”

Default:if source is defined, the content of source, otherwise empty

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.envFile

The environment variables file to be used for nushell.

Seehttps://www.nushell.sh/book/configuration.html#configuration for more information.

Type:null or (submodule)

Default:null

Example:

''  $env.FOO = 'BAR'''

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.envFile.source

Path of the nushellenv.nu file to use.If the text option is set, it will be preferred.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.envFile.text

Text of the nushellenv.nu file.If unset then the source option will be preferred.

Type:strings concatenated with “\n”

Default:if source is defined, the content of source, otherwise empty

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.environmentVariables

Environment variables to be set.

Inline values can be set withlib.hm.nushell.mkNushellInline.

Type:attribute set of (null or (Nushell inline value) or boolean or signed integer or floating point number or string or absolute path or (attribute set of Nushell values) or (list of Nushell values))

Default:{ }

Example:

{  FOO = "BAR";  LIST_VALUE = [ "foo" "bar" ];  PROMPT_COMMAND = lib.hm.nushell.mkNushellInline ''{|| "> "}'';  ENV_CONVERSIONS.PATH = {    from_string = lib.hm.nushell.mkNushellInline "{|s| $s | split row (char esep) }";    to_string = lib.hm.nushell.mkNushellInline "{|v| $v | str join (char esep) }";  };}

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.extraConfig

Additional configuration to add to the nushell configuration file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.extraEnv

Additional configuration to add to the nushell environment variables file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.extraLogin

Additional configuration to add to the nushell login file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.loginFile

The login file to be used for nushell upon logging in.

Seehttps://www.nushell.sh/book/configuration.html#configuring-nu-as-a-login-shell for more information.

Type:null or (submodule)

Default:null

Example:

''  # Prints "Hello, World" upon logging into tty1  if (tty) == "/dev/tty1" {    echo "Hello, World"  }''

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.loginFile.source

Path of the nushelllogin.nu file to use.If the text option is set, it will be preferred.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.loginFile.text

Text of the nushelllogin.nu file.If unset then the source option will be preferred.

Type:strings concatenated with “\n”

Default:if source is defined, the content of source, otherwise empty

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.plugins

A list of nushell plugins to write to the plugin registry file.

Type:list of package

Default:[ ]

Example:[ pkgs.nushellPlugins.formats ]

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.settings

Nushell settings. These will be flattened and assigned one by one to$env.config to avoid overwriting the default or existing options.

For example:

{  show_banner = false;  completions.external = {    enable = true;    max_results = 200;  };}

becomes:

$env.config.completions.external.enable = true$env.config.completions.external.max_results = 200$env.config.show_banner = false

Type:attribute set of (null or (Nushell inline value) or boolean or signed integer or floating point number or string or absolute path or (attribute set of Nushell values) or (list of Nushell values))

Default:{ }

Example:

{  history = {    format = "sqlite";  };  show_banner = false;}

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nushell.shellAliases

An attribute set that maps aliases (the top level attribute names inthis option) to command strings or directly to build outputs.

Type:attribute set of string

Default:{ }

Example:

{  g = "git";  ll = "ls -l";}

Declared by:

<home-manager/modules/programs/nushell.nix>
programs.nvchecker.enable

Whether to enable nvchecker.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nvchecker.package

The nvchecker package to use.

Type:null or package

Default:pkgs.nvchecker

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nvchecker.settings

Configuration written to$HOME/Library/Application Support/nvchecker/nvchecker.toml (on Darwin) or$XDG_CONFIG_HOME/nvchecker/nvchecker.toml (otherwise).Seehttps://nvchecker.readthedocs.io/en/stable/usage.html#configuration-filesfor the full list of options.

Environment variables and~ are expanded,and relative paths are relative to${config.home.homeDirectory}/Library/Application Support/nvchecker/nvchecker/ (on Darwin)or${config.xdg.configHome}/nvchecker/ (otherwise).

Type:open submodule of (TOML value)

Default:

__config__ = {  oldver = "old_ver.json";  newver = "new_ver.json";};

Example:

{  __config__ = {    oldver = "my_custom_oldver.json";    newver = "~/seperately_placed_newver.json";    keyfile = "keyfile.toml";  };  nvchecker = {    source = "github";    github = "lilydjwg/nvchecker";  };}

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nvchecker.settings.__config__

Seehttps://nvchecker.readthedocs.io/en/stable/usage.html#configuration-files.

Environment variables and~ are expanded,and relative paths are relative to${config.home.homeDirectory}/Library/Application Support/nvchecker/nvchecker/ (on Darwin)or${config.xdg.configHome}/nvchecker/ (otherwise).

Type:open submodule of (TOML value)

Default:

{  oldver = "old_ver.json";  newver = "new_ver.json";};

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nvchecker.settings.__config__.newver

The file to store ‘new’ (i.e. available) versions in.

Environment variables and~ are expanded,and relative paths are relative to${config.home.homeDirectory}/Library/Application Support/nvchecker/nvchecker/ (on Darwin)or${config.xdg.configHome}/nvchecker/ (otherwise).

Type:path

Default:"new_ver.json"

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nvchecker.settings.__config__.oldver

The file to store ‘old’ (i.e. installed) version information in.

Environment variables and~ are expanded,and relative paths are relative to${config.home.homeDirectory}/Library/Application Support/nvchecker/nvchecker/ (on Darwin)or${config.xdg.configHome}/nvchecker/ (otherwise).

Type:path

Default:"old_ver.json"

Declared by:

<home-manager/modules/programs/nvchecker.nix>
programs.nyxt.enable

Whether to enable Nyxt.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/nyxt.nix>
programs.nyxt.package

The nyxt package to use.

Type:null or package

Default:pkgs.nyxt

Declared by:

<home-manager/modules/programs/nyxt.nix>
programs.nyxt.config

Configuration file for Nyxt, written in the Common Lispprogramming language.

Type:strings concatenated with “\n” or absolute path

Default:""

Example:

''  (in-package #:nyxt-user)    (defvar *my-search-engines*    (list     (make-instance 'search-engine                    :name "Google"                    :shortcut "goo"                    #+nyxt-4 :control-url #+nyxt-3 :search-url                    "https://duckduckgo.com/?q=~a")     (make-instance 'search-engine                    :name "MDN"                    :shortcut "mdn"                    #+nyxt-4 :control-url #+nyxt-3 :search-url                    "https://developer.mozilla.org/en-US/search?q=~a")))    (define-configuration browser    ((restore-session-on-startup-p nil)     (default-new-buffer-url (quri:uri "https://github.com/atlas-engineer/nyxt"))     (external-editor-program (if (member :flatpak *features*)                                  "flatpak-spawn --host emacsclient -r"                                  "emacsclient -r"))     #+nyxt-4     (search-engine-suggestions-p nil)     #+nyxt-4     (search-engines (append %slot-default% *my-search-engines*))     ;; Sets the font for the Nyxt UI (not for webpages).     (theme (make-instance 'theme:theme                           :font-family "Iosevka"                           :monospace-font-family "Iosevka"))     ;; Whether code sent to the socket gets executed.  You must understand the     ;; risks before enabling this: a privileged user with access to your system     ;; can then take control of the browser and execute arbitrary code under your     ;; user profile.     ;; (remote-execution-p t)     ))''

Declared by:

<home-manager/modules/programs/nyxt.nix>
programs.obs-studio.enable

Whether to enable obs-studio.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/obs-studio.nix>
programs.obs-studio.package

The obs-studio package to use.

Type:package

Default:pkgs.obs-studio

Declared by:

<home-manager/modules/programs/obs-studio.nix>
programs.obs-studio.plugins

Optional OBS plugins.

Type:list of package

Default:[ ]

Example:[ pkgs.obs-studio-plugins.wlrobs ]

Declared by:

<home-manager/modules/programs/obs-studio.nix>
programs.obsidian.enable

Whether to enable obsidian.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.package

The obsidian package to use.

Type:null or package

Default:pkgs.obsidian

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.app

Settings to write toapp.json.

Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.appearance

Settings to write toappearance.json.

Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.communityPlugins
      Community plugins to install and activate.      Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:[ ]

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.corePlugins

Core plugins to activate.

Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:

[  "backlink"  "bookmarks"  "canvas"  "command-palette"  "daily-notes"  "editor-status"  "file-explorer"  "file-recovery"  "global-search"  "graph"  "note-composer"  "outgoing-link"  "outline"  "page-preview"  "switcher"  "tag-pane"  "templates"  "word-count"]

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.cssSnippets
      CSS snippets to install.      Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:[ ]

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.extraFiles
      Extra files to link to the vault directory.      Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.hotkeys
      Hotkeys to configure.      Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.defaultSettings.themes
      Themes to install.      Vault-specific settings take priority and will override these, if set.

Type:raw value

Default:[ ]

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults

List of vaults to create.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.enable

Whether this vault should be generated.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.app

Settings to write to app.json.

Type:attribute set of anything

Default:config.programs.obsidian.defaultSettings.app

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.appearance

Settings to write to appearance.json.

Type:attribute set of anything

Default:config.programs.obsidian.defaultSettings.appearance

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.communityPlugins

Community plugins to install and activate.

Type:list of ((submodule) or package convertible to it)

Default:config.programs.obsidian.defaultSettings.communityPlugins

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.communityPlugins.*.enable

Whether to enable the plugin.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.communityPlugins.*.pkg

The plugin package.

Type:package

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.communityPlugins.*.settings

Settings to include in the plugin’sdata.json.

Type:attribute set of anything

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.corePlugins

Core plugins to activate.

Type:list of ((submodule) or (one of “audio-recorder”, “backlink”, “bookmarks”, “canvas”, “command-palette”, “daily-notes”, “editor-status”, “file-explorer”, “file-recovery”, “global-search”, “graph”, “markdown-importer”, “note-composer”, “outgoing-link”, “outline”, “page-preview”, “properties”, “publish”, “random-note”, “slash-command”, “slides”, “switcher”, “sync”, “tag-pane”, “templates”, “word-count”, “workspaces”, “zk-prefixer”) convertible to it)

Default:config.programs.obsidian.defaultSettings.corePlugins

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.corePlugins.*.enable

Whether to enable the plugin.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.corePlugins.*.name

The plugin.

Type:one of “audio-recorder”, “backlink”, “bookmarks”, “canvas”, “command-palette”, “daily-notes”, “editor-status”, “file-explorer”, “file-recovery”, “global-search”, “graph”, “markdown-importer”, “note-composer”, “outgoing-link”, “outline”, “page-preview”, “properties”, “publish”, “random-note”, “slash-command”, “slides”, “switcher”, “sync”, “tag-pane”, “templates”, “word-count”, “workspaces”, “zk-prefixer”

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.corePlugins.*.settings

Plugin settings to include.

Type:attribute set of anything

Default:{ }

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.cssSnippets

CSS snippets to install.

Type:list of ((submodule) or absolute path convertible to it)

Default:config.programs.obsidian.defaultSettings.cssSnippets

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.cssSnippets.*.enable

Whether to enable the snippet.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.cssSnippets.*.name

Name of the snippet.

Type:string

Default:lib.strings.removeSuffix ".css" (builtins.baseNameOf source)

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.cssSnippets.*.source

Path of the source file.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.cssSnippets.*.text

Text of the file.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.extraFiles

Extra files to link to the vault directory.

Type:attribute set of (submodule)

Default:config.programs.obsidian.defaultSettings.extraFiles

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.extraFiles.<name>.source

Path of the source file or directory.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.extraFiles.<name>.target

Path to target relative to the vault’s directory.

Type:string

Default:name

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.extraFiles.<name>.text

Text of the file.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.hotkeys

Hotkeys to configure.

Type:attribute set of list of (submodule)

Default:config.programs.obsidian.defaultSettings.hotkeys

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.hotkeys.<name>.*.key

The hotkey.

Type:string

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.hotkeys.<name>.*.modifiers

The hotkey modifiers.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.themes

Themes to install.

Type:list of ((submodule) or package convertible to it)

Default:config.programs.obsidian.defaultSettings.themes

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.themes.*.enable

Whether to set the theme as active.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.settings.themes.*.pkg

The theme package.

Type:package

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.obsidian.vaults.<name>.target

Path to target vault relative to the user’sHOME.

Type:string

Default:name

Declared by:

<home-manager/modules/programs/obsidian.nix>
programs.offlineimap.enable

Whether to enable OfflineIMAP.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/offlineimap>
programs.offlineimap.package

The offlineimap package to use. Can be used to specify extensions.

Type:package

Default:pkgs.offlineimap

Example:

pkgs.offlineimap.overridePythonAttrs ( old: {  propagatedBuildInputs = old.propagatedBuildInputs    ++ (with pkgs.python3Packages; [      requests_oauthlib xdg gpgme]);})

Declared by:

<home-manager/modules/programs/offlineimap>
programs.offlineimap.extraConfig.default

Extra configuration options added to theDEFAULT section.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  gmailtrashfolder = "[Gmail]/Papierkorb";}

Declared by:

<home-manager/modules/programs/offlineimap>
programs.offlineimap.extraConfig.general

Extra configuration options added to thegeneral section.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  maxage = 30;  ui = "blinkenlights";}

Declared by:

<home-manager/modules/programs/offlineimap>
programs.offlineimap.extraConfig.mbnames

Extra configuration options added to thembnames section.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  filename = "~/.config/mutt/mailboxes";  header = "'mailboxes '";  peritem = "'+%(accountname)s/%(foldername)s'";  sep = "' '";  footer = "'\\n'";}

Declared by:

<home-manager/modules/programs/offlineimap>
programs.offlineimap.pythonFile

Python code that can then be used in other parts of theconfiguration.

Type:strings concatenated with “\n”

Default:

''  import subprocess    def get_pass(service, cmd):      return subprocess.check_output(cmd, )''

Declared by:

<home-manager/modules/programs/offlineimap>
programs.oh-my-posh.enable

Whether to enable oh-my-posh, a prompt theme engine for any shell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.package

The oh-my-posh package to use.

Type:package

Default:pkgs.oh-my-posh

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.configFile

Path to a custom configuration path, can be json, yaml or toml.

Type:null or string or absolute path

Default:null

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.settings

Configuration written to$XDG_CONFIG_HOME/oh-my-posh/config.json. Seehttps://ohmyposh.dev/docs/configuration/overviewfor details. TheuseTheme option is ignored when thisoption is used.

Type:JSON value

Default:{ }

Example:builtins.fromJSON (builtins.unsafeDiscardStringContext (builtins.readFile "${pkgs.oh-my-posh}/share/oh-my-posh/themes/space.omp.json"))

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.oh-my-posh.useTheme

Use one of the official themes. This should be a name from this list:https://ohmyposh.dev/docs/themes. Because a themeis essentially a configuration file, this option is not used when aconfigFile is set.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/oh-my-posh.nix>
programs.onagre.enable

Whether to enable onagre.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/onagre.nix>
programs.onagre.package

The onagre package to use.

Type:null or package

Default:pkgs.onagre

Declared by:

<home-manager/modules/programs/onagre.nix>
programs.onagre.style

Configuration file to be written to theme.scss for settingOnagre’s theme. The documentation can be found here:https://github.com/onagre-launcher/onagre/wiki/Theming

Type:strings concatenated with “\n”

Default:""

Example:

''  .onagre {    --exit-unfocused: false;    height: 250px;    width: 400px;    --font-family: "Iosevka,Iosevka Nerd Font";    font-size: 18px;    background: #151515;    color: #414141;    padding: 10px;      .container {      .rows {        --height: fill-portion 6;        .row-selected {          color: #ffffff;          --spacing: 3px;        }      }        .scrollable {        background: #151515;        width: 0;        .scroller {          width: 0;          color: #151515;        }      }    }  }''

Declared by:

<home-manager/modules/programs/onagre.nix>
programs.onedrive.enable

Whether to enable onedrive.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/onedrive.nix>
programs.onedrive.package

The onedrive package to use.

Type:null or package

Default:pkgs.onedrive

Declared by:

<home-manager/modules/programs/onedrive.nix>
programs.onedrive.settings

Configuration settings for Onedrive. All available options can befound athttps://github.com/abraunegg/onedrive/blob/master/config.

Type:attribute set of string

Default:{ }

Example:

''  {    check_nomount = "false";    check_nosync = "false";    classify_as_big_delete = "1000";    cleanup_local_files = "false";    disable_notifications = "false";    no_remote_delete = "false";    rate_limit = "0";    resync = "false";    skip_dotfiles = "false";  }''

Declared by:

<home-manager/modules/programs/onedrive.nix>
programs.onlyoffice.enable

Whether to enable onlyoffice.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/onlyoffice.nix>
programs.onlyoffice.package

The onlyoffice-desktopeditors package to use.

Type:null or package

Default:pkgs.onlyoffice-desktopeditors

Declared by:

<home-manager/modules/programs/onlyoffice.nix>
programs.onlyoffice.settings

Configuration settings for Onlyoffice.

All configurable options can be deduced by enabling them through theGUI and observing the changes in ~/.config/onlyoffice/DesktopEditors.conf.

Type:attribute set of (atom (null, bool, int, float or string))

Default:{ }

Example:

''  UITheme = "theme-contrast-dark";  editorWindowMode = false;  forcedRtl = false;  maximized = true;  titlebar = "custom";''

Declared by:

<home-manager/modules/programs/onlyoffice.nix>
programs.opam.enable

Whether to enable Opam.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/opam.nix>
programs.opam.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/opam.nix>
programs.opam.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/opam.nix>
programs.opam.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/opam.nix>
programs.opam.package

The opam package to use.

Type:package

Default:pkgs.opam

Declared by:

<home-manager/modules/programs/opam.nix>
programs.opencode.enable

Whether to enable opencode.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.enableMcpIntegration

Whether to integrate the MCP servers config fromprograms.mcp.servers intoprograms.opencode.settings.mcp.

Note: Settings defined inprograms.mcp.servers are mergedwithprograms.opencode.settings.mcp, with OpenCode settingstaking precedence.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.package

The opencode package to use.

Type:null or package

Default:pkgs.opencode

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.agents

Custom agents for opencode.The attribute name becomes the agent filename, and the value is either:

  • Inline content as a string

  • A path to a file containing the agent contentAgents are stored in$XDG_CONFIG_HOME/.config/opencode/agent/ directory.

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Example:

{  code-reviewer = ''    # Code Reviewer Agent    You are a senior software engineer specializing in code reviews.    Focus on code quality, security, and maintainability.    ## Guidelines    - Review for potential bugs and edge cases    - Check for security vulnerabilities    - Ensure code follows best practices    - Suggest improvements for readability and performance  '';  documentation = ./agents/documentation.md;}

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.commands

Custom commands for opencode.The attribute name becomes the command filename, and the value is either:

  • Inline content as a string

  • A path to a file containing the command contentCommands are stored in$XDG_CONFIG_HOME/.config/opencode/command/ directory.

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Example:

{  changelog = ''    # Update Changelog Command    Update CHANGELOG.md with a new entry for the specified version.    Usage: /changelog [version] [change-type] [message]  '';  fix-issue = ./commands/fix-issue.md;  commit = ''    # Commit Command    Create a git commit with proper message formatting.    Usage: /commit [message]  '';}

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.rules

You can provide global custom instructions to opencode.The value is either:

  • Inline content as a string

  • A path to a file containing the contentThis value is written to$XDG_CONFIG_HOME/opencode/AGENTS.md.

Type:strings concatenated with “\n” or absolute path

Default:""

Example:

''  # TypeScript Project Rules  ## External File Loading  CRITICAL: When you encounter a file reference (e.g., @rules/general.md), use your Read tool to load it on a need-to-know basis. They're relevant to the SPECIFIC task at hand.  Instructions:  - Do NOT preemptively load all references - use lazy loading based on actual need  - When loaded, treat content as mandatory instructions that override defaults  - Follow references recursively when needed  ## Development Guidelines  For TypeScript code style and best practices: @docs/typescript-guidelines.md  For React component architecture and hooks patterns: @docs/react-patterns.md  For REST API design and error handling: @docs/api-standards.md  For testing strategies and coverage requirements: @test/testing-guidelines.md  ## General Guidelines  Read the following file immediately as it's relevant to all workflows: @rules/general-guidelines.md.''

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.settings

Configuration written to$XDG_CONFIG_HOME/opencode/config.json.Seehttps://opencode.ai/docs/config/ for the documentation.

Note,"$schema": "https://opencode.ai/config.json" is automatically added to the configuration.

Type:JSON value

Default:{ }

Example:

{  theme = "opencode";  model = "anthropic/claude-sonnet-4-20250514";  autoshare = false;  autoupdate = true;}

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.opencode.themes

Custom themes for opencode. The attribute name becomes the themefilename, and the value is either:

  • An attribute set, that is converted to a json

  • A path to a file containing the contentThemes are stored in$XDG_CONFIG_HOME/opencode/themes/ directory.Setprograms.opencode.settings.theme to enable the custom theme.Seehttps://opencode.ai/docs/themes/ for the documentation.

Type:attribute set of (JSON value or absolute path)

Default:{ }

Declared by:

<home-manager/modules/programs/opencode.nix>
programs.openstackclient.enable

Whether to enable OpenStack command-line client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/openstackclient.nix>
programs.openstackclient.package

The openstackclient package to use.

Type:null or package

Default:pkgs.openstackclient

Declared by:

<home-manager/modules/programs/openstackclient.nix>
programs.openstackclient.clouds

Configuration needed to connect to one or more clouds.

Do not include passwords here as they will be publicly readable in the Nix store.Configuration written to$XDG_CONFIG_HOME/openstack/clouds.yaml.Seehttps://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-yaml.

Type:open submodule of (YAML 1.1 value)

Default:{ }

Example:

{  my-infra = {    cloud = "example-cloud";    auth = {      project_id = "0123456789abcdef0123456789abcdef";      username = "openstack";    };    region_name = "XXX";    interface = "internal";  };}

Declared by:

<home-manager/modules/programs/openstackclient.nix>
programs.openstackclient.publicClouds

Public information about clouds.

Configuration written to$XDG_CONFIG_HOME/openstack/clouds-public.yaml.Seehttps://docs.openstack.org/python-openstackclient/latest/configuration/index.html#clouds-public-yaml.

Type:open submodule of (YAML 1.1 value)

Default:{ }

Example:

{  example-cloud = {    auth = {      auth_url = "https://identity.cloud.example.com/v2.0";    };  };};

Declared by:

<home-manager/modules/programs/openstackclient.nix>
programs.opkssh.enable

Whether to enable enable the OpenPubkey SSH client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/opkssh.nix>
programs.opkssh.package

The opkssh package to use.

Type:null or package

Default:pkgs.opkssh

Declared by:

<home-manager/modules/programs/opkssh.nix>
programs.opkssh.settings

Configuration written to$HOME/.opk/config.yml.Seehttps://github.com/openpubkey/opkssh/blob/main/docs/config.md#client-config-opkconfigyml.

Type:YAML 1.1 value

Default:{ }

Example:

{default_provider = "kanidm";providers = [  {    alias = "kanidm";    issuer = "https://idm.example.com/oauth2/openid/opkssh";    client_id = "opkssh";    scopes = "openid email profile";    redirect_uris = [      "http://localhost:3000/login-callback"      "http://localhost:10001/login-callback"      "http://localhost:11110/login-callback"    ];  };];}

Declared by:

<home-manager/modules/programs/opkssh.nix>
programs.pandoc.enable

Whether to enable pandoc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.package

The pandoc package to use.

Type:package

Default:pkgs.pandoc

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.citationStyles

List of .csl files to install.

Type:list of absolute path

Default:[ ]

Example:[ path/to/file.csl ]

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.defaults

Options to set by default.These will be converted to JSON and written to a defaultsfile (see Default files in pandoc documentation).

Type:JSON value

Default:{ }

Example:

{  metadata = {    author = "John Doe";  };  pdf-engine = "xelatex";  citeproc = true;}

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.defaultsFile

Resulting defaults file.

Type:absolute path(read only)

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.finalPackage

Resulting package.

Type:package(read only)

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.pandoc.templates

Custom templates.

Type:attribute set of absolute path

Default:{ }

Example:

{  "default.latex" = path/to/your/template;}

Declared by:

<home-manager/modules/programs/pandoc.nix>
programs.papis.enable

Whether to enable papis.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.package

The papis package to use.

Type:null or package

Default:pkgs.papis

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.libraries

Attribute set of papis libraries.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.libraries.<name>.isDefault

Whether this is a default library.

For papis to function without explicit library selection(i.e. without-l <library> or--pick-lib flags) theremust be a default library defined.

Note this can be also defined (or overridden) on a local$(pwd)/.papis.config or via python$XDG_CONFIG_HOME/papis/config.py config file.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.libraries.<name>.name

This library’s name.

Type:string(read only)

Default:"‹name›"

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.libraries.<name>.settings

Configuration for this library.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  dir = "~/papers/";}

Declared by:

<home-manager/modules/programs/papis.nix>
programs.papis.settings

Configuration written to$XDG_CONFIG_HOME/papis/config. Seehttps://papis.readthedocs.io/en/latest/configuration.htmlfor supported values.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  editor = "nvim";  file-browser = "ranger"  add-edit = true;}

Declared by:

<home-manager/modules/programs/papis.nix>
programs.password-store.enable

Whether to enable Password store.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/password-store.nix>
programs.password-store.package

The pass package to use. Can be used to specify extensions.

Type:package

Default:pkgs.pass

Example:pkgs.pass.withExtensions (exts: [ exts.pass-otp ])

Declared by:

<home-manager/modules/programs/password-store.nix>
programs.password-store.settings

Thepass environment variables dictionary.

See the “Environment variables” section ofpass(1)and the extension man pages for more information about theavailable keys.

Type:attribute set of string

Default:

{ PASSWORD_STORE_DIR = "$XDG_DATA_HOME/password-store"; }

Example:

{  PASSWORD_STORE_DIR = "/some/directory";  PASSWORD_STORE_KEY = "12345678";  PASSWORD_STORE_CLIP_TIME = "60";}

Declared by:

<home-manager/modules/programs/password-store.nix>
programs.patdiff.enable

Whether to enable thepatdiff differ.Seehttps://opensource.janestreet.com/patdiff/

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/patdiff.nix>
programs.patdiff.enableGitIntegration

Whether to enable git integration for patdiff.

When enabled, patdiff will be configured as git’s external diff tool.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/patdiff.nix>
programs.patdiff.package

The patdiff package to use.

Type:package

Default:pkgs.patdiff

Declared by:

<home-manager/modules/programs/patdiff.nix>
programs.pay-respects.enable

Whether to enable pay-respects.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.package

The pay-respects package to use.

Type:package

Default:pkgs.pay-respects

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pay-respects.options

List of options to pass to pay-respects <shell>.

Type:list of string

Default:

[  "--alias"]

Example:

[  "--alias"  "f"]

Declared by:

<home-manager/modules/programs/pay-respects.nix>
programs.pazi.enable

Whether to enable pazi.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pazi.nix>
programs.pazi.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/pazi.nix>
programs.pazi.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/pazi.nix>
programs.pazi.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/pazi.nix>
programs.pazi.package

The pazi package to use.

Type:package

Default:pkgs.pazi

Declared by:

<home-manager/modules/programs/pazi.nix>
programs.pet.enable

Whether to enable pet.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.package

The pet package to use.

Type:null or package

Default:pkgs.pet

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.selectcmdPackage

The fzf package to use. The package needed for thesettings.selectcmd.

Type:null or package

Default:pkgs.fzf

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.settings

Settings written toconfig.toml. See the petdocumentation for details.

Type:TOML value

Default:{ }

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.snippets

The snippets.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.snippets.*.command

The command.

Type:string

Default:""

Example:"git rev-list --count HEAD"

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.snippets.*.description

Description of the snippet.

Type:string

Default:""

Example:"Count the number of commits in the current branch"

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.snippets.*.output

Example output of the command.

Type:string

Default:""

Example:"473"

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pet.snippets.*.tag

List of tags attached to the command.

Type:list of string

Default:[ ]

Example:["git" "nixpkgs"]

Declared by:

<home-manager/modules/programs/pet.nix>
programs.pgcli.enable

Whether to enable pgcli.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pgcli.nix>
programs.pgcli.package

The pgcli package to use.

Type:null or package

Default:pkgs.pgcli

Declared by:

<home-manager/modules/programs/pgcli.nix>
programs.pgcli.settings

Configuration written to$XDG_CONFIG_HOME/pgcli/config.Seehttps://www.pgcli.com/configfor more information.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  main = {    smart_completion = true;    vi = true;  };  "named queries".simple = "select * from abc where a is not Null";}

Declared by:

<home-manager/modules/programs/pgcli.nix>
programs.pianobar.enable

Whether to enable Enable pianobar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pianobar.nix>
programs.pianobar.package

The pianobar package to use.

Type:null or package

Default:pkgs.pianobar

Declared by:

<home-manager/modules/programs/pianobar.nix>
programs.pianobar.settings

Apply configurations forpianobar via key/value attributes.

Note; it is recommended to usesops-nix, or similar, secretsmanagement solution for providingprograms.pianobar.settings.password_command value.

Type:open submodule of attribute set of (atom (null, bool, int, float or string))

Default:{ }

Example:

{  programs.pianobar = {    enable = true;    settings = {      user = "groovy-tunes@example.com";      password_command = "cat /run/secrets/pianobar/groovy-tunes";    };  };}

Declared by:

<home-manager/modules/programs/pianobar.nix>
programs.pianobar.settings.password_command

Command pianobar will use to access password for Pandora music service authentication

Type:non-empty string

Example:"\"cat /run/secrets/pianobar/groovy-tunes\""

Declared by:

<home-manager/modules/programs/pianobar.nix>
programs.pianobar.settings.user

Username or emaill address for Pandora music service authentication

Type:non-empty string

Example:"\"groovy-tunes@example.com\""

Declared by:

<home-manager/modules/programs/pianobar.nix>
programs.pidgin.enable

Whether to enable Pidgin messaging client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pidgin.nix>
programs.pidgin.package

The pidgin package to use.

Type:package

Default:pkgs.pidgin

Declared by:

<home-manager/modules/programs/pidgin.nix>
programs.pidgin.plugins

Plugins that should be available to Pidgin.

Type:unspecified value

Default:[ ]

Example:[ pkgs.pidgin-otr pkgs.pidgin-osd ]

Declared by:

<home-manager/modules/programs/pidgin.nix>
programs.pimsync.enable

Whether to enable pimsync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pimsync>
programs.pimsync.package

The pimsync package to use.

Type:package

Default:pkgs.pimsync

Declared by:

<home-manager/modules/programs/pimsync>
programs.pimsync.settings

Settings to be added to pimsync.conf.Seepimsync.conf(5).

Type:anything

Default:

[  {    name = "status_path";    params = [ "${config.xdg.dataHome}/pimsync/status" ];  }]

Declared by:

<home-manager/modules/programs/pimsync>
programs.pistol.enable

Whether to enable file previewer for terminal file managers.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.pistol.package

The pistol package to use.

Type:null or package

Default:pkgs.pistol

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.pistol.associations

Associations written to the Pistol configuration at$XDG_CONFIG_HOME/pistol/pistol.conf.

Type:list of (submodule)

Default:[ ]

Example:

[  { mime = "application/json"; command = "bat %pistol-filename%"; }  { mime = "application/*"; command = "hexyl %pistol-filename%"; }  { fpath = ".*.md$"; command = "sh: bat --paging=never --color=always %pistol-filename% | head -8"; }]

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.pistol.associations.*.command

Preview command for files matched by this association.

Type:string

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.pistol.associations.*.fpath

File path regex that this association should match.

Type:string

Default:""

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.pistol.associations.*.mime

Mime type regex that this association should match.

Type:string

Default:""

Declared by:

<home-manager/modules/programs/pistol.nix>
programs.piston-cli.enable

Whether to enable piston-cli, code runner.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/piston-cli.nix>
programs.piston-cli.package

The piston-cli package to use.

Type:package

Default:pkgs.piston-cli

Declared by:

<home-manager/modules/programs/piston-cli.nix>
programs.piston-cli.settings

Configuration written to$XDG_CONFIG_HOME/piston-cli/config.yml.

Type:YAML 1.1 value

Default:{ }

Example:

{  theme = "emacs";  box_style = "MINIMAL_DOUBLE_HEAD";  prompt_continuation = "...";  prompt_start = ">>>";}

Declared by:

<home-manager/modules/programs/piston-cli.nix>
programs.pls.enable

Whether to enable pls, a modern replacement forls.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pls.nix>
programs.pls.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/pls.nix>
programs.pls.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/pls.nix>
programs.pls.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/pls.nix>
programs.pls.package

The pls package to use.

Type:package

Default:pkgs.pls

Declared by:

<home-manager/modules/programs/pls.nix>
programs.poetry.enable

Whether to enable poetry.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/poetry.nix>
programs.poetry.package

The poetry package to use. May be used to install custom poetry plugins.

Type:null or package

Default:pkgs.poetry

Example:pkgs.poetry.withPlugins (ps: with ps; [ poetry-plugin-up ])

Declared by:

<home-manager/modules/programs/poetry.nix>
programs.poetry.settings

Configuration written to$XDG_CONFIG_HOME/pypoetry/config.toml on Linux or$HOME/Library/Application Support/pypoetry/config.toml on Darwin.Seehttps://python-poetry.org/docs/configuration/for more information.

Type:TOML value

Default:{ }

Example:

{  virtualenvs.create = true;  virtualenvs.in-project = true;}

Declared by:

<home-manager/modules/programs/poetry.nix>
programs.powerline-go.enable

Whether to enable Powerline-go, a beautiful and useful low-latency prompt for your shell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.package

The powerline-go package to use.

Type:package

Default:pkgs.powerline-go

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.extraUpdatePS1

Shell code to execute after the prompt is set.

Type:string

Default:""

Example:

''  PS1=$PS1"NixOS> ";''

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.modules

List of module names to load. The list of all availablemodules as well as the choice of default ones are athttps://github.com/justjanne/powerline-go.

Type:null or (list of string)

Default:null

Example:

[  "host"  "ssh"  "cwd"  "gitlite"  "jobs"  "exit"]

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.modulesRight

List of module names to load to be displayed on the right side.Currently not supported by bash. Specifying a value for thisoption will force powerline-go to use the eval format to setthe prompt.

Type:null or (list of string)

Default:null

Example:

[  "host"  "venv"  "git"]

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.newline

Set to true if the prompt should be on a line of its own.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.pathAliases

Pairs of full-path and corresponding desired short name. Youmay use ‘~’ to represent your home directory but you shouldprotect it to avoid shell substitution.

Type:null or (attribute set of string)

Default:null

Example:

{ "\\~/projects/home-manager" = "prj:home-manager"; }

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.powerline-go.settings

This can be any key/value pair as described inhttps://github.com/justjanne/powerline-go.

Type:attribute set of (boolean or signed integer or string or list of string)

Default:{ }

Example:

{  hostname-only-if-ssh = true;  numeric-exit-codes = true;  cwd-max-depth = 7;  ignore-repos = [ "/home/me/big-project" "/home/me/huge-project" ];}

Declared by:

<home-manager/modules/programs/powerline-go.nix>
programs.pqiv.enable

Whether to enable pqiv image viewer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pqiv.nix>
programs.pqiv.package

The pqiv package to use.

Type:package

Default:pkgs.pqiv

Declared by:

<home-manager/modules/programs/pqiv.nix>
programs.pqiv.extraConfig

Extra lines to be added to$XDG_CONFIG_HOME/pqivrc. Seepqiv(1) for a list of available options.

Type:strings concatenated with “\n”

Default:""

Example:

[actions]set_cursor_auto_hide(1)[keybindings]t { montage_mode_enter() }@MONTAGE {  t { montage_mode_return_cancel() }}

Declared by:

<home-manager/modules/programs/pqiv.nix>
programs.pqiv.settings

Configuration written to$XDG_CONFIG_HOME/pqivrc. Seepqiv(1) 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:

{  options = {    lazy-load = true;    hide-info-box = true;    background-pattern = "black";    thumbnail-size = "256x256";    command-1 = "thunar";  };};

Declared by:

<home-manager/modules/programs/pqiv.nix>
programs.ptyxis.enable

Whether to enable ptyxis.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ptyxis.nix>
programs.ptyxis.package

The ptyxis package to use.

Type:null or package

Default:pkgs.ptyxis

Declared by:

<home-manager/modules/programs/ptyxis.nix>
programs.ptyxis.palettes

Written to$XDG_CONFIG_HOME/org.gnome.Prompt/palettes/NAME.palette.Seehttps://gitlab.gnome.org/chergert/ptyxis/-/tree/main/data/palettesfor more information.

Type:attribute set of ((attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))) or absolute path or string)

Default:{ }

Example:

{  myPalette = {    Palette.Name = "My awesome theme";    Light = {      Foreground="#E2E2E3";      Background="#2C2E34";      Color0="#2C2E34";      Color1="#FC5D7C";      Color2="#9ED072";      Color3="#E7C664";      Color4="#F39660";    };  };}

Declared by:

<home-manager/modules/programs/ptyxis.nix>
programs.pubs.enable

Whether to enable pubs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pubs.nix>
programs.pubs.package

The pubs package to use.

Type:package

Default:pkgs.pubs

Declared by:

<home-manager/modules/programs/pubs.nix>
programs.pubs.extraConfig

Configuration using syntax written to$HOME/.pubsrc.

Type:strings concatenated with “\n”

Default:""

Example:

''[main]pubsdir = ${config.home.homeDirectory}/.pubsdocsdir = ${config.home.homeDirectory}/.pubs/docdoc_add = linkopen_cmd = xdg-open[plugins]active = git,alias[[alias]][[[la]]]command = list -adescription = lists papers in lexicographic order[[git]]quiet = Truemanual = Falseforce_color = False''

Declared by:

<home-manager/modules/programs/pubs.nix>
programs.pyenv.enable

Whether to enable pyenv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pyenv.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pyenv.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pyenv.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pyenv.package

The pyenv package to use.

Type:package

Default:pkgs.pyenv

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pyenv.rootDirectory

The pyenv root directory (PYENV_ROOT).

Note

This deviates from upstream, which uses$HOME/.pyenv.The default path in Home Manager is set according to the XDGbase directory specification.

Type:absolute path

Default:"\${config.xdg.dataHome}/pyenv"

Declared by:

<home-manager/modules/programs/pyenv.nix>
programs.pylint.enable

Whether to enable the pylint Python linter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pylint.nix>
programs.pylint.package

The pylint package to use.

Type:package

Default:pkgs.python3Packages.pylint

Declared by:

<home-manager/modules/programs/pylint.nix>
programs.pylint.settings

The pylint configuration.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string) or a non-empty list of them)

Default:{}

Declared by:

<home-manager/modules/programs/pylint.nix>
programs.pywal.enable

Whether to enable pywal.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/pywal.nix>
programs.pywal.package

The pywal package to use.

Type:package

Default:pkgs.pywal

Declared by:

<home-manager/modules/programs/pywal.nix>
programs.qcal.enable

Whether to enable qcal, a CLI calendar application.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/qcal.nix>
programs.qcal.package

The qcal package to use.

Type:null or package

Default:pkgs.qcal

Declared by:

<home-manager/modules/programs/qcal.nix>
programs.qcal.defaultNumDays

Default number of days to show calendar entries for

Type:positive integer, meaning >0

Default:30

Declared by:

<home-manager/modules/programs/qcal.nix>
programs.qcal.timezone

Timezone to display calendar entries in

Type:(optionally newline-terminated) single-line string

Default:"Local"

Example:"Europe/Vienna"

Declared by:

<home-manager/modules/programs/qcal.nix>
programs.quickshell.enable

Whether to enable quickshell, a flexbile QtQuick-based desktop shell toolkit…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.quickshell.package

The quickshell package to use.

Type:null or package

Default:pkgs.quickshell

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.quickshell.activeConfig

The name of the config to use.

Ifnull, quickshell will attempt to use a config located in$XDG_CONFIG_HOME/quickshell instead of one of the named sub-directories.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.quickshell.configs

A set of configs to include in the quickshell config directory. The key is the name of the config.

The configuration that quickshell should use can be specified with theactiveConfig option.

Type:attribute set of absolute path

Default:{ }

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.quickshell.systemd.enable

Whether to enable quickshell systemd service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.quickshell.systemd.target

The systemd target that will automatically start quickshell.

If you set this to a WM-specific target, make sure that systemd integration for that WM is enabled (e.g.wayland.windowManager.hyprland.systemd.enable).This is typically true by default.

Type:string

Default:config.wayland.systemd.target

Example:"hyprland-session.target"

Declared by:

<home-manager/modules/programs/quickshell.nix>
programs.qutebrowser.enable

Whether to enable qutebrowser.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.enableDefaultBindings

Disable to prevent loading default key bindings.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.package

The qutebrowser package to use.

Type:null or package

Default:pkgs.qutebrowser

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.aliases

Aliases for commands.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.extraConfig

Extra lines added to qutebrowserconfig.py file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.greasemonkey

Greasemonkey userscripts to add to qutebrowser’sgreasemonkeydirectory.

Type:list of package

Default:[ ]

Example:

[  (pkgs.fetchurl {    url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/1d1be041a65c251692ee082eda64d2637edf6444/youtube_sponsorblock.js";    sha256 = "sha256-e3QgDPa3AOpPyzwvVjPQyEsSUC9goisjBUDMxLwg8ZE=";  })  (pkgs.writeText "some-script.js" ''    // ==UserScript==    // @name  Some Greasemonkey script    // ==/UserScript==  '')]

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.keyBindings

Key bindings mapping keys to commands in different modes. This settingis a dictionary containing mode names and dictionaries mapping keys tocommands:{mode: {key: command}} If you want to mapa key to another key, check thekeyMappings settinginstead. For modifiers, you can use either- or+ as delimiters, and these names:

Control

Control,Ctrl

Meta

Meta,Windows,Mod4

Alt

Alt,Mod1

Shift

Shift

For simple keys (no<>-signs), a capitalletter means the key is pressed with Shift. For special keys (with<>-signs), you need to explicitly addShift- to match a key pressed with shift. If youwant a binding to do nothing, bind it to thenopcommand. If you want a default binding to be passed through to thewebsite, bind it to null. Note that some commands which are only usefulfor bindings (but not used interactively) are hidden from the commandcompletion. See:help for a full list of availablecommands. The following modes are available:

normal

Default mode, where most commands are invoked.

insert

Entered when an input field is focused on a website, or bypressingi in normal mode. Passes through almost all keypressesto the website, but has some bindings like<Ctrl-e> to open an external editor.Note that single keys can’t be bound in this mode.

hint

Entered whenf is pressed to select links with the keyboard. Notethat single keys can’t be bound in this mode.

passthrough

Similar to insert mode, but passes through all keypresses except<Escape> to leave the mode. It might beuseful to bind<Escape> to some otherkey in this mode if you want to be able to send an Escape key tothe website as well. Note that single keys can’t be bound in thismode.

command

Entered when pressing the: key in order to enter a command. Notethat single keys can’t be bound in this mode.

prompt

Entered when there’s a prompt to display, like for downloadlocations or when invoked from JavaScript.

yesno

Entered when there’s a yes/no prompt displayed.

caret

Entered when pressing thev mode, used to select text using thekeyboard.

register

Entered when qutebrowser is waiting for a register name/key forcommands like:set-mark.

Type:attribute set of attribute set of (null or strings concatenated with " ;; ")

Default:{ }

Example:

{  normal = {    "<Ctrl-v>" = "spawn mpv {url}";    ",p" = "spawn --userscript qute-pass";    ",l" = ''config-cycle spellcheck.languages ["en-GB"] ["en-US"]'';    "<F1>" = mkMerge [      "config-cycle tabs.show never always"      "config-cycle statusbar.show in-mode always"      "config-cycle scrolling.bar never always"    ];  };  prompt = {    "<Ctrl-y>" = "prompt-yes";  };}

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.keyMappings

This setting can be used to map keys to other keys. When the key usedas dictionary-key is pressed, the binding for the key used asdictionary-value is invoked instead. This is useful for globalremappings of keys, for example to map Ctrl-[ to Escape. Note that whena key is bound (viabindings.default orbindings.commands), the mapping is ignored.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.loadAutoconfig

Load settings configured via the GUI.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.perDomainSettings

Options to set, as insettings but per domain.Refer tosettings for details.

Type:attribute set of anything

Default:{ }

Example:

{  "zoom.us" = {    content = {      autoplay = true;      media.audio_capture = true;      media.video_capture = true;    };  };  "github.com".colors.webpage.darkmode.enabled = false;};

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.quickmarks

Quickmarks to add to qutebrowser’squickmarks file.Note that when Home Manager manages your quickmarks, you cannot edit them at runtime.

Type:attribute set of string

Default:{ }

Example:

{  nixpkgs = "https://github.com/NixOS/nixpkgs";  home-manager = "https://github.com/nix-community/home-manager";}

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.searchEngines

Search engines that can be used via the address bar. Maps a searchengine name (such asDEFAULT, orddg) to a URL with a{}placeholder. The placeholder will be replaced by the search term, use{{ and}} for literal{/} signs. The search engine namedDEFAULT is used whenurl.auto_search is turned on and something else thana URL was entered to be opened. Other search engines can be used byprepending the search engine name to the search term, for example:open google qutebrowser.

Type:attribute set of string

Default:{ }

Example:

{  w = "https://en.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1";  aw = "https://wiki.archlinux.org/?search={}";  nw = "https://wiki.nixos.org/index.php?search={}";  g = "https://www.google.com/search?hl=en&q={}";}

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.qutebrowser.settings

Options to add to qutebrowserconfig.py file.Seehttps://qutebrowser.org/doc/help/settings.htmlfor options.

Type:attribute set of anything

Default:{ }

Example:

{  colors = {    hints = {      bg = "#000000";      fg = "#ffffff";    };    tabs.bar.bg = "#000000";  };  tabs.tabs_are_windows = true;}

Declared by:

<home-manager/modules/programs/qutebrowser.nix>
programs.radicle.enable

Whether to enable Radicle.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.cli.package

The radicle-node package to use.

Type:package

Default:pkgs.radicle-node

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.settings

Radicle configuration, written to `~/.radicle/config.json.

Type:open submodule of (JSON value)

Default:{ }

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.settings.node.alias

Human readable alias for your node.

Type:string

Default:config.home.username

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.settings.node.listen

Addresses to bind to and listen for inbound connections.

Type:list of string

Default:[ ]

Example:

[  "127.0.0.1:58776"]

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.settings.publicExplorer

HTTPS URL pattern used to generate links to view content on Radicle via the browser.

Type:string

Default:"https://app.radicle.xyz/nodes/$host/$rid$path"

Example:"https://radicle.example.com/nodes/seed.example.com/$rid$path"

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.rad.browser.enable

Whether to enablerad:-URI handling by web browser

Type:unspecified value

Default:"`true` if a suitable public explorer is detected."

Example:false

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.rad.browser.preferredNode

The hostname of an instance ofradicle-node, reachable via HTTPS.

Type:string

Default:"iris.radicle.xyz"

Example:"radicle-node.example.com"

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.rad.vscode.enable

Whether to enablerad:-URI handling by VSCode.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.rad.vscode.extension

The unique identifier of the VSCode extension that should handlerad:-URIs.

Type:string

Default:"radicle-ide-plugins-team.radicle"

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.web-rad.enable

Whether to enableweb+rad:-URI handling by web browser.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radicle.uri.web-rad.browser

Name of the XDG Desktop Entry for your browser.LibreWolf, Firefox and Chromium configured via home-manager willbe detected automatically. The value of this option should likelybe the same as the output ofxdg-mime query default x-scheme-handler/https.

Type:null or string

Default:"Automatically detected browser."

Example:"brave.desktop"

Declared by:

<home-manager/modules/programs/radicle.nix>
programs.radio-active.enable

Whether to enable Enable installing radio-active and writing configuration file.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/radio-active.nix>
programs.radio-active.package

The radio-active package to use.

Type:null or package

Default:pkgs.radio-active

Declared by:

<home-manager/modules/programs/radio-active.nix>
programs.radio-active.aliases

Key/value pairs where the key is name of radio station and value is URL.

Type:attribute set of non-empty string

Default:{ }

Example:

{  "Deep House Lounge" = "http://198.15.94.34:8006/stream";}

Declared by:

<home-manager/modules/programs/radio-active.nix>
programs.radio-active.settings

Declare-able configurations for radio-active written to$XDG_CONFIG_HOME/radio-active/configs.ini.

Type:attribute set of attribute set of (non-empty string or (nonnegative integer or floating point number, meaning >=0))

Default:{ }

Example:

{  filepath = "/home/{user}/recordings/radioactive/";  filetype = "mp3";  filter = "none";  limit = 41;  loglevel = "debug";  player = "ffplay";  sort = "votes";  volume = 68;}

Declared by:

<home-manager/modules/programs/radio-active.nix>
programs.radio-cli.enable

Whether to enable radio-cli.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/radio-cli.nix>
programs.radio-cli.package

The radio-cli package to use.

Type:null or package

Default:pkgs.radio-cli

Declared by:

<home-manager/modules/programs/radio-cli.nix>
programs.radio-cli.settings

Configuration settings for radio-cli. For an example config,refer to:https://github.com/margual56/radio-cli/blob/main/config.json

Type:JSON value

Default:{ }

Example:

{  config_version = "2.3.0";  country = "ES";  data = [    {      station = "lofi";      url = "https://www.youtube.com/live/jfKfPfyJRdk?si=WDl-XdfuhxBfe6XN";    }  ];  max_lines = 7;}

Declared by:

<home-manager/modules/programs/radio-cli.nix>
programs.ranger.enable

Whether to enable ranger file manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.package

The ranger package to use.

Type:null or package

Default:pkgs.ranger

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.aliases

Aliases written to$XDG_CONFIG_HOME/ranger/rc.conf.

Type:attribute set of string

Default:{ }

Example:

{  e = "edit";  filter = "scout -prts";  setl = "setlocal";}

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.extraConfig

Extra configuration lines to add to$XDG_CONFIG_HOME/ranger/rc.conf.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.extraPackages

Extra packages added to ranger.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.mappings

Mappings written to$XDG_CONFIG_HOME/ranger/rc.conf.

Type:attribute set of string

Default:{ }

Example:

{  Q = "quitall";  q = "quit";}

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.plugins

List of files to be added to$XDG_CONFIG_HOME/ranger/plugins/.

Type:list of (submodule)

Default:[ ]

Example:

[  {    name = "zoxide";    src = builtins.fetchGit {      url = "https://github.com/jchook/ranger-zoxide.git";      rev = "363df97af34c96ea873c5b13b035413f56b12ead";    };  }]

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.plugins.*.name

Name of the plugin linked to$XDG_CONFIG_HOME/ranger/plugins/. In the case of asingle-file plugin, it must also have.py suffix.

Type:string

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.plugins.*.src

The plugin file or directory.

Type:absolute path

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.rifle

Settings written to$XDG_CONFIG_HOME/ranger/rifle.conf.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.rifle.*.command

A command to run for the matching file.

Type:string

Example:"${pkgs.vim}/bin/vim -- \"$@\""

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.rifle.*.condition

A condition to match a file.

Type:string

Example:"mime ^text, label editor"

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.ranger.settings

Settings written to$XDG_CONFIG_HOME/ranger/rc.conf.

Type:attribute set of (boolean or floating point number or signed integer or string)

Default:{ }

Example:

{  column_ratios = "1,3,3";  confirm_on_delete = "never";  scroll_offset = 8;  unicode_ellipsis = true;}

Declared by:

<home-manager/modules/programs/ranger.nix>
programs.rbenv.enable

Whether to enable rbenv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.package

The rbenv package to use.

Type:package

Default:pkgs.rbenv

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.plugins

rbenv plugins to install in$HOME/.rbenv/plugins/.

Seehttps://github.com/rbenv/rbenv/wiki/Pluginsfor the full list of plugins.

Type:list of (submodule)

Default:[ ]

Example:

[  {    name = "ruby-build";    src = pkgs.fetchFromGitHub {      owner = "rbenv";      repo = "ruby-build";      rev = "v20221225";      hash = "sha256-Kuq0Z1kh2mvq7rHEgwVG9XwzR5ZUtU/h8SQ7W4/mBU0=";    };  }]

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.plugins.*.name

Name of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbenv.plugins.*.src

Path to the plugin folder.

Type:absolute path

Declared by:

<home-manager/modules/programs/rbenv.nix>
programs.rbw.enable

Whether to enable rbw, a CLI Bitwarden client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.package

The rbw package to use. Package providing therbw tool and itsrbw-agent daemon.

Type:package

Default:pkgs.rbw

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings

rbw configuration, if not defined the configuration will not bemanaged by Home Manager.

Type:null or (open submodule of (JSON value))

Default:null

Example:

{  email = "name@example.com";  lock_timeout = 300;  pinentry = pkgs.pinentry-gnome3;}

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings.base_url

The base-url for a self-hosted bitwarden installation.

Type:null or string

Default:null

Example:"https://bitwarden.example.com/"

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings.email

The email address for your bitwarden account.

Type:string

Example:"name@example.com"

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings.identity_url

The identity url for your bitwarden installation.

Type:null or string

Default:null

Example:"https://identity.example.com/"

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings.lock_timeout

The amount of time that your login information should be cached.

Type:unsigned integer, meaning >=0

Default:3600

Example:300

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rbw.settings.pinentry

Which pinentry interface to use. Beware thatpinentry-gnome3 may not work on non-Gnomesystems. You can fix it by adding the following to yoursystem configuration:

services.dbus.packages = [ pkgs.gcr ];

Type:null or package

Default:null

Example:pkgs.pinentry-gnome3

Declared by:

<home-manager/modules/programs/rbw.nix>
programs.rclone.enable

Whether to enable rclone.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.package

The rclone package to use.

Type:package

Default:pkgs.rclone

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes

An attribute set of remote configurations. Each remote consists of regularconfiguration options and optional secrets.

Seehttps://rclone.org/docs/ for more information on configuring specificremotes.

Type:attribute set of (submodule)

Default:{ }

Example:

{  b2 = {    config = {      type = "b2";      hard_delete = true;    };    secrets = {      # using sops      account = config.sops.secrets.b2-acc-id.path;      # using agenix      key = config.age.secrets.b2-key.path;    };  };  server.config = {    type = "sftp";    host = "server";    user = "backup";    key_file = "${home.homeDirectory}/.ssh/id_ed25519";  };}

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.config

Regular configuration options as described in rclone’s documentationhttps://rclone.org/docs/. When specifying options follow the formattingprocess outlined herehttps://rclone.org/docs/#config-config-file, namely:

  • Remove the leading double-dash (–) from the rclone option name

  • Replace hyphens (-) with underscores (_)

  • Convert to lowercase

  • Use the resulting string as your configuration key

For example, the rclone option “–mega-hard-delete” would use “hard_delete”as the config key.

Security Note: Always use thesecrets option for sensitive datainstead of theconfig option to prevent exposing credentials tothe world-readable Nix store.

Type:An attribute set containing a remote type and options.

Default:{ }

Example:

{  type = "mega"; # Required - specifies the remote type  user = "you@example.com";  hard_delete = true;}

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.mounts

An attribute set mapping remote file paths to their corresponding mountpoint configurations.

For each entry, to perform the equivalent ofrclone mount remote:path/to/files /path/to/local/mount — as described in therclone documentationhttps://rclone.org/commands/rclone_mount/ — we createa key-value pair like this:"path/to/files/on/remote" = { ... }.

Type:attribute set of (submodule)

Default:{ }

Example:

{  "path/to/files" = {    enable = true;    mountPoint = "/home/alice/rclone-mount";    options = {      dir-cache-time = "5000h";      poll-interval = "10s";      umask = "002";      user-agent = "Laptop";    };  };}

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.mounts.<name>.enable

Whether to enable this mount.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.mounts.<name>.logLevel

Set the log-level.See: https://rclone.org/docs/#logging

Type:null or one of “ERROR”, “NOTICE”, “INFO”, “DEBUG”

Default:null

Example:"INFO"

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.mounts.<name>.mountPoint

A local file path specifying the location of the mount point.

Type:string

Default:null

Example:"/home/alice/my-remote"

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.mounts.<name>.options

An attribute set of option values passed torclone mount. To seta boolean option, assign ittrue orfalse. Seehttps://nixos.org/manual/nixpkgs/stable/#function-library-lib.cli.toGNUCommandLineShellfor more details on the format.

Some caching options are set by default, namelyvfs-cache-mode = "full"andcache-dir. These can be overridden if desired.

Type:attribute set of (null or boolean or signed integer or floating point number or string)

Default:{ }

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.remotes.<name>.secrets

Sensitive configuration values such as passwords, API keys, and tokens. Thesemust be provided as file paths to the secrets, which will be read at activationtime.

These values are expanded in a shell context within a systemd service, soyou can use bash features like command substitution or variable expansion(e.g. “${XDG_RUNTIME_DIR}” as used by agenix).

Type:attribute set of string

Default:{ }

Example:

{  password = "/run/secrets/password";  api_key = config.age.secrets.api-key.path;}

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.rclone.requiresUnit

The name of a systemd user service that must complete before the rcloneconfiguration file is written.

This is typically used when secrets are managed by an external provisionerwhose service must run before the secrets are accessible.

When using sops-nix or agenix, this value is set automatically tosops-nix.service or agenix.service, respectively. Set this manually if youuse a different secret provisioner.

Type:null or string

Default:null

Example:"agenix.service"

Declared by:

<home-manager/modules/programs/rclone.nix>
programs.readline.enable

Whether to enable readline.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/readline.nix>
programs.readline.bindings

Readline bindings.

Type:attribute set of string

Default:{ }

Example:

{ "\\C-h" = "backward-kill-word"; }

Declared by:

<home-manager/modules/programs/readline.nix>
programs.readline.extraConfig

Configuration lines appended unchanged to the end of the~/.inputrc file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/readline.nix>
programs.readline.includeSystemConfig

Whether to include the system-wide configuration.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/readline.nix>
programs.readline.variables

Readline customization variable assignments.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  expand-tilde = true;}

Declared by:

<home-manager/modules/programs/readline.nix>
programs.retext.enable

Whether to enable retext.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/retext.nix>
programs.retext.package

The retext package to use.

Type:null or package

Default:pkgs.retext

Declared by:

<home-manager/modules/programs/retext.nix>
programs.retext.settings

Configuration settings for retext. All the available options can be foundhere:https://github.com/retext-project/retext/blob/master/configuration.md.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  ColorScheme = {    htmlComments = "#abc";    htmlSymbols = "#ff8800";    htmlTags = "green";  };  General = {    documentStatsEnabled = true;    lineNumbersEnabled = true;    relativeLineNumbers = true;    useWebEngine = true;  };}

Declared by:

<home-manager/modules/programs/retext.nix>
programs.riff.enable

Enable the <command>riff</command> diff highlighter.See <link xlink:href=“https://github.com/walles/riff” />.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/riff.nix>
programs.riff.enableGitIntegration

Whether to enable git integration for riff.

When enabled, riff will be configured as git’s pager for diff, log, and show commands.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/riff.nix>
programs.riff.package

The riffdiff package to use.

Type:package

Default:pkgs.riffdiff

Declared by:

<home-manager/modules/programs/riff.nix>
programs.riff.commandLineOptions

Command line arguments to include in the <command>RIFF</command> environment variable.

Run <command>riff --help</command> for a full list of options

Type:list of string

Default:[ ]

Example:[ "--no-adds-only-special" ]

Declared by:

<home-manager/modules/programs/riff.nix>
programs.rio.enable

Enable Rio, a terminal built to run everywhere, as a native desktop applications byRust/WebGPU or even in the browsers powered by WebAssembly/WebGPU.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rio.nix>
programs.rio.package

The rio package to use.

Type:null or package

Default:pkgs.rio

Declared by:

<home-manager/modules/programs/rio.nix>
programs.rio.settings

Configuration written to$XDG_CONFIG_HOME/rio/config.toml. Seehttps://raphamorim.io/rio/docs/#configuration-file for options.

Type:TOML value

Default:{ }

Declared by:

<home-manager/modules/programs/rio.nix>
programs.rio.themes

Theme files written to$XDG_CONFIG_HOME/rio/themes/. Seehttps://rioterm.com/docs/config#building-your-own-theme forsupported values.

Type:attribute set of (TOML value or absolute path)

Default:{ }

Example:

{  foobar.colors = {    background = "#282a36";    green = "#50fa7b";    dim-green = "#06572f";  };}

Declared by:

<home-manager/modules/programs/rio.nix>
programs.ripgrep.enable

Whether to enable Ripgrep.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ripgrep.nix>
programs.ripgrep.package

The ripgrep package to use.

Type:null or package

Default:pkgs.ripgrep

Declared by:

<home-manager/modules/programs/ripgrep.nix>
programs.ripgrep.arguments

List of arguments to pass to ripgrep. Each item is given to ripgrep asa single command line argument verbatim.

Seehttps://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md#configuration-filefor an example configuration.

Type:list of string

Default:[ ]

Example:

[  "--max-columns-preview"  "--colors=line:style:bold"]

Declared by:

<home-manager/modules/programs/ripgrep.nix>
programs.ripgrep-all.enable

Whether to enable ripgrep-all (rga).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.package

The ripgrep-all package to use.

Type:null or package

Default:pkgs.ripgrep-all

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters

Custom adapters that invoke external preprocessing scripts.See <link xlink:href=“https://github.com/phiresky/ripgrep-all/wiki#custom-adapters”/>.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.args

The output path hint; the placeholders are the same as for rga’sargs

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.binary

The path of the binary to run

Type:absolute path

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.description

A description of this adapter; shown in rga’s help

Type:string

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.disabled_by_default

If true, the adapter will be disabled by default

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.extensions

The file extensions this adapter supports

Type:list of string

Example:

[  "pdf"]

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.match_only_by_mime

if --rga-accurate, only match by mime types, ignore extensions completely

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.mimetypes

If not null and --rga-accurate is enabled, mime type matching is used instead of file name matching

Type:null or (list of string)

Default:null

Example:

[  "application/pdf"]

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.name

The unique identifier and name of this adapter; must only include a-z, 0-9, _

Type:string

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.output_path_hint

Setting this is useful if the output format is not plain text (.txt) but instead some other format that should be passed to another adapter

Type:null or string

Default:null

Example:"$\${input_virtual_path}.txt.asciipagebreaks"

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.ripgrep-all.custom_adapters.*.version

The version identifier used to key cache entries; change if the configuration or program changes

Type:signed integer

Default:1

Declared by:

<home-manager/modules/programs/ripgrep-all.nix>
programs.rmpc.enable

Whether to enable rmpc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rmpc.nix>
programs.rmpc.package

The rmpc package to use.

Type:null or package

Default:pkgs.rmpc

Declared by:

<home-manager/modules/programs/rmpc.nix>
programs.rmpc.config

Configuration settings for rmpc in the Rusty Object Notationformat. All available options can be found in the officialdocumentation athttps://mierak.github.io/rmpc/next/configuration/.

Type:strings concatenated with “\n”

Default:""

Example:

''  (      address: "127.0.0.1:6600",      password: None,      theme: None,      cache_dir: None,      on_song_change: None,      volume_step: 5,      max_fps: 30,      scrolloff: 0,      wrap_navigation: false,      enable_mouse: true,      enable_config_hot_reload: true,      status_update_interval_ms: 1000,      select_current_song_on_change: false,      browser_song_sort: [Disc, Track, Artist, Title],  )''

Declared by:

<home-manager/modules/programs/rmpc.nix>
programs.rofi.enable

Whether to enable Rofi: A window switcher, application launcher and dmenu replacement.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.package

The rofi package to use.

Type:package

Default:pkgs.rofi

Example:pkgs.rofi.override { plugins = [ pkgs.rofi-emoji ]; }

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.configPath

Path where to put generated configuration file.

Type:string

Default:"$XDG_CONFIG_HOME/rofi/config.rasi"

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.cycle

Whether to cycle through the results list.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.extraConfig

Additional configuration to add.

Type:(attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string

Default:{ }

Example:

{  kb-primary-paste = "Control+V,Shift+Insert";  kb-secondary-paste = "Control+v,Insert";}

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.finalPackage

Resulting customized rofi package.

Type:package(read only)

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.font

Font to use.

Type:null or string

Default:null

Example:"Droid Sans Mono 14"

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.location

The location rofi appears on the screen.

Type:one of “bottom”, “bottom-left”, “bottom-right”, “center”, “left”, “right”, “top”, “top-left”, “top-right”

Default:"center"

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.modes

Modes to enable. For custom modes seeman 5 rofi-script.

Type:list of (string or (submodule))

Default:[ ]

Example:

[  "drun"  "emoji"  "ssh"  {    name = "whatnot";    path = lib.getExe pkgs.rofi-whatnot;  }]

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.pass.enable

Whether to enable rofi integration with password-store.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rofi-pass.nix>
programs.rofi.pass.package

The rofi-pass package to use.

Type:null or package

Default:pkgs.rofi-pass

Example:pkgs.rofi-pass-wayland

Declared by:

<home-manager/modules/programs/rofi-pass.nix>
programs.rofi.pass.extraConfig

Extra configuration to be added at to the rofi-pass config file.Additional examples can be found athttps://github.com/carnager/rofi-pass/blob/master/config.example.

Type:strings concatenated with “\n”

Default:""

Example:

''  URL_field='url'  USERNAME_field='user'  AUTOTYPE_field='autotype'''

Declared by:

<home-manager/modules/programs/rofi-pass.nix>
programs.rofi.pass.stores

Directory roots of your password-stores.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/rofi-pass.nix>
programs.rofi.plugins

List of rofi plugins to be installed.

Type:list of package

Default:[ ]

Example:[ pkgs.rofi-calc ]

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.terminal

Path to the terminal which will be used to run console applications

Type:null or string

Default:null

Example:"\${pkgs.gnome.gnome_terminal}/bin/gnome-terminal"

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.theme

Name of theme or path to theme file in rasi format or attribute set withtheme configuration. Available named themes can be viewed using therofi-theme-selector tool.

Type:null or string or absolute path or attribute set of ((attribute set of (string or signed integer or boolean or (Rasi literal string) or list of (string or signed integer or boolean or (Rasi literal string)))) or string)

Default:null

Example:

let  # Use `mkLiteral` for string-like values that should show without  # quotes, e.g.:  # {  #   foo = "abc"; => foo: "abc";  #   bar = mkLiteral "abc"; => bar: abc;  # };  inherit (config.lib.formats.rasi) mkLiteral;in {  "*" = {    background-color = mkLiteral "#000000";    foreground-color = mkLiteral "rgba ( 250, 251, 252, 100 % )";    border-color = mkLiteral "#FFFFFF";    width = 512;  };  "#inputbar" = {    children = map mkLiteral [ "prompt" "entry" ];  };  "#textbox-prompt-colon" = {    expand = false;    str = ":";    margin = mkLiteral "0px 0.3em 0em 0em";    text-color = mkLiteral "@foreground-color";  };}

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.xoffset

Offset in the x-axis in pixels relative to the chosen location.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rofi.yoffset

Offset in the y-axis in pixels relative to the chosen location.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/programs/rofi.nix>
programs.rtorrent.enable

Whether to enable rTorrent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/rtorrent.nix>
programs.rtorrent.package

The rtorrent package to use.

Type:null or package

Default:pkgs.rtorrent

Declared by:

<home-manager/modules/programs/rtorrent.nix>
programs.rtorrent.extraConfig

Configuration written to$XDG_CONFIG_HOME/rtorrent/rtorrent.rc. Seehttps://github.com/rakshasa/rtorrent/wiki/Config-Guidefor explanation about possible values.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/rtorrent.nix>
programs.ruff.enable

Whether to enable ruff, an extremely fast Python linter and code formatter, written in Rust.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ruff.nix>
programs.ruff.package

The ruff package to use.

Type:null or package

Default:pkgs.ruff

Declared by:

<home-manager/modules/programs/ruff.nix>
programs.ruff.settings

Ruff configuration.For available settings seehttps://docs.astral.sh/ruff/settings.

Type:TOML value

Example:

{  line-length = 100;  per-file-ignores = { "__init__.py" = [ "F401" ]; };  lint = {    select = [ "E4" "E7" "E9" "F" ];    ignore = [ ];  };}

Declared by:

<home-manager/modules/programs/ruff.nix>
programs.sagemath.enable

Whether to enable SageMath, a mathematics software system.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sagemath.nix>
programs.sagemath.package

The sage package to use. The SageMath package to use.

Type:null or package

Default:pkgs.sage

Declared by:

<home-manager/modules/programs/sagemath.nix>
programs.sagemath.configDir

Directory where thesage.init file will be stored.Note that the upstream default is~/.sage,but our default is to follow XDG.

Type:string

Default:${config.xdg.configHome}/sage

Declared by:

<home-manager/modules/programs/sagemath.nix>
programs.sagemath.dataDir

Location forDOT_SAGE.Note that the upstream default is~/.sage,but our default is to follow XDG.

Type:string

Default:${config.xdg.dataHome}/sage

Declared by:

<home-manager/modules/programs/sagemath.nix>
programs.sagemath.initScript

Contents of theinit.sage file that is loaded on startup.

Type:strings concatenated with “\n”

Default:""

Example:"%colors linux"

Declared by:

<home-manager/modules/programs/sagemath.nix>
programs.sapling.enable

Whether to enable Sapling.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.sapling.package

The sapling package to use.

Type:null or package

Default:pkgs.sapling

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.sapling.aliases

Sapling aliases to define.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.sapling.extraConfig

Additional configuration to add.

Type:attribute set of anything

Default:{ }

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.sapling.userEmail

Default user email to use.

Type:string

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.sapling.userName

Default user name to use.

Type:string

Declared by:

<home-manager/modules/programs/sapling.nix>
programs.satty.enable

Whether to enable Satty - Modern Screenshot Annotation.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/satty.nix>
programs.satty.package

The satty package to use.

Type:null or package

Default:pkgs.satty

Declared by:

<home-manager/modules/programs/satty.nix>
programs.satty.settings

Configuration for Satty written to$XDG_CONFIG_HOME/satty/config.toml.

See theSatty documentationfor available options.

Type:TOML value

Default:{ }

Example:

{  general = {    fullscreen = true;    corner-roundness = 12;    initial-tool = "brush";    output-filename = "/tmp/test-%Y-%m-%d_%H:%M:%S.png";  };  color-palette = {    palette = [ "#00ffff" "#a52a2a" "#dc143c" "#ff1493" "#ffd700" "#008000" ];  };}

Declared by:

<home-manager/modules/programs/satty.nix>
programs.sbt.enable

Whether to enable sbt.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.package

The sbt package to use.

Type:package

Default:pkgs.sbt

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.baseUserConfigPath

Where the sbt configuration files should be located, relativeHOME.

Type:string

Default:".sbt"

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.credentials

A list of credentials to define in the sbt configuration directory.

Type:list of (submodule)

Default:[ ]

Example:

[{  realm = "Sonatype Nexus Repository Manager";  host = "example.com";  user = "user";  passwordCommand = "pass show sbt/user@example.com";}]

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.credentials.*.host

The hostname of the repository you’re authenticating to.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.credentials.*.passwordCommand

The command that provides the password or authentication token forthe repository.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.credentials.*.realm

The realm of the repository you’re authenticating to.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.credentials.*.user

The user you’re using to authenticate.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.plugins

A list of plugins to place in the sbt configuration directory.

Type:list of (submodule)

Default:[ ]

Example:

[  {    org = "net.virtual-void";    artifact = "sbt-dependency-graph";    version = "0.10.0-RC1";  }  {    org = "com.dwijnand";    artifact = "sbt-project-graph";    version = "0.4.0";  }]

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.plugins.*.artifact

The name of the artifact.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.plugins.*.org

The organization the artifact is published under.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.plugins.*.version

The version of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.pluginsExtra

A list of extra commands to put in plugins conf file.Use it in last resort when you can’t use theplugins option.

Type:list of string

Default:[ ]

Example:

[  "addDependencyTreePlugin"]

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.sbt.repositories

A list of repositories to use when resolving dependencies. Defined as alist of pre-defined repository or custom repository as a set of name toURL. The list will be used populate the~/.sbt/repositoriesfile in the order specified.

Pre-defined repositories must be one oflocal,maven-local,maven-central.

Custom repositories are defined as{ name-of-repo = "https://url.to.repo.com"}.

Seehttps://www.scala-sbt.org/1.x/docs/Launcher-Configuration.html#3.+Repositories+Sectionabout this configuration section andhttps://www.scala-sbt.org/1.x/docs/Proxy-Repositories.htmlto read about proxy repositories.

Type:list of (one of “local”, “maven-central”, “maven-local” or attribute set of string)

Default:[ ]

Example:

[  "local"  { my-ivy-proxy-releases = "http://repo.company.com/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]" }  { my-maven-proxy-releases = "http://repo.company.com/maven-releases/" }  "maven-central"]

Declared by:

<home-manager/modules/programs/sbt.nix>
programs.scmpuff.enable

Whether to enable scmpuff, a command line tool that allows you to work quicker with Git bysubstituting numeric shortcuts for files.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.scmpuff.enableAliases

Whether to enable aliases (e.g. gs, ga, gd, gco).

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.scmpuff.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.scmpuff.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.scmpuff.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.scmpuff.package

The scmpuff package to use.

Type:package

Default:pkgs.scmpuff

Declared by:

<home-manager/modules/programs/scmpuff.nix>
programs.script-directory.enable

Whether to enable script-directory.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/script-directory.nix>
programs.script-directory.package

The script-directory package to use.

Type:package

Default:pkgs.script-directory

Declared by:

<home-manager/modules/programs/script-directory.nix>
programs.script-directory.settings

script-directory config, for options take a look at thedocumentation

Type:attribute set of string

Default:{ }

Example:

{  SD_ROOT = "${config.home.homeDirectory}/.sd";  SD_EDITOR = "nvim";  SD_CAT = "lolcat";}

Declared by:

<home-manager/modules/programs/script-directory.nix>
programs.senpai.enable

Whether to enable senpai.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.package

The senpai package to use.

Type:package

Default:pkgs.senpai

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.config

Configuration for senpai. For a complete list of options, seesenpai(5).

Type:open submodule of attribute set of anything

Example:

{  address = "libera.chat:6697";  nickname = "nicholas";  password = "verysecurepassword";}

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.config.address

The address (host[:port]) of the IRC server. senpai uses TLSconnections by default unless you specify tls option to be false.TLS connections default to port 6697, plain-text use port 6667.

URircs://,irc://, andirc+insecure:// URLs are supported,in which case only the hostname and port parts will be used. Ifthe scheme isircs/irc+insecure, tls will be overriden and setto true/false accordingly.

Type:string

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.config.nickname

Your nickname, sent with a NICK IRC message. It mustn’t containspaces or colons (:).

Type:string

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.config.password

Your password, used for SASL authentication. Note that it willreside world-readable in the Nix store.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.senpai.config.password-cmd

Alternatively to providing your SASL authentication passworddirectly in plaintext, you can specify a command to be run tofetch the password at runtime. This is useful if you store yourpasswords in a separate (probably encrypted) file usinggpg or acommand line password manager such aspass orgopass. If apassword-cmd is provided, the value of password will be ignoredand the first line of the output ofpassword-cmd will be usedfor login.

Type:null or (list of string)

Default:null

Example:

[  "gopass"  "show"  "irc/guest"]

Declared by:

<home-manager/modules/programs/senpai.nix>
programs.sesh.enable

Whether to enable the sesh terminal session manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.enableAlias

Whether to enable a shell aliass to quickly launch sessions.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.enableTmuxIntegration

Enable Tmux integration with sesh.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.package

The sesh package to use.

Type:package

Default:pkgs.sesh

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.fzfPackage

The fzf package to use.

Type:null or package

Default:pkgs.fzf

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.icons

Display icons next to results (--icons argument).

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.settings

Configuration for sesh, written to~/.config/sesh/sesh.toml.

See thesesh documentation for available options.

Type:open submodule of (TOML value)

Default:{ }

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.tmuxKey

Keybinding for invoking sesh in Tmux.

Type:string

Default:"s"

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sesh.zoxidePackage

The zoxide package to use.

Type:null or package

Default:pkgs.zoxide

Declared by:

<home-manager/modules/programs/sesh.nix>
programs.sftpman.enable

Whether to enable sftpman, an application that handles sshfs/sftp file systems mounting.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.package

The sftpman package to use.

Type:null or package

Default:pkgs.sftpman

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.defaultSshKey

Path to the SSH key to be used by default. Can be overridden per host.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts

The sshfs mount configurations written to$XDG_CONFIG_HOME/sftpman/mounts/.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.authType

The authentication method to use.

Type:one of “password”, “publickey”, “hostbased”, “keyboard-interactive”, “gssapi-with-mic”

Default:"publickey"

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.beforeMount

Command to run before mounting.

Type:string

Default:"true"

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.host

The host to connect to.

Type:string

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.mountOptions

Options to pass to sshfs.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.mountPoint

The remote path to mount.

Type:string

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.port

The port to connect to.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:22

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.sshKey

Path to the SSH key to use for authentication.Only applies if authMethod ispublickey.

Type:null or string

Default:config.programs.sftpman.defaultSshKey

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sftpman.mounts.<name>.user

The username to authenticate with.

Type:string

Declared by:

<home-manager/modules/programs/sftpman.nix>
programs.sheldon.enable

Whether to enable sheldon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sheldon.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sheldon.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sheldon.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sheldon.package

The sheldon package to use.

Type:package

Default:pkgs.sheldon

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sheldon.settings

Type:TOML value

Default:{ }

Example:

Declared by:

<home-manager/modules/programs/sheldon.nix>
programs.sherlock.enable

Enable Sherlock, a fast and lightweight application launcher for Wayland.

Seehttps://github.com/Skxxtz/sherlock for more information.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.package

The sherlock package to use.

Type:null or package

Default:pkgs.sherlock-launcher

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.aliases

Defines custom aliases.

Written tosherlock_alias.json.

Seehttps://github.com/Skxxtz/sherlock/blob/main/docs/aliases.md for more information.

Type:JSON value

Default:{ }

Example:

{  "NixOS Wiki" = {    exec = "firefox https://nixos.wiki/index.php?search=%s";    icon = "nixos";    keywords = "nix wiki docs";    name = "NixOS Wiki";  };}

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.ignore

A list of desktop entry IDs to ignore.

Written tosherlockignore.

Seehttps://github.com/Skxxtz/sherlock/blob/main/docs/sherlockignore.md for more information.

Type:strings concatenated with “\n”

Default:""

Example:

''  hicolor-icon-theme.desktop  user-dirs.desktop''

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.launchers

Defines fallback launchers.

Written tofallback.json.

Seehttps://github.com/Skxxtz/sherlock/blob/main/docs/launchers.md for more information.

Type:JSON value

Default:[ ]

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.settings

Configuration for Sherlock.

Written toconfig.toml.

Seehttps://github.com/Skxxtz/sherlock/blob/main/docs/config.md for available options.

Type:TOML value

Default:{ }

Example:

{  max_results = 8;  theme = "dark";  width = 500;}

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.style

Custom CSS to style the Sherlock UI.

Written tomain.css.

Type:strings concatenated with “\n”

Default:""

Example:

''  window {    background-color: #2E3440;  }''

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sherlock.systemd.enable

Whether to enable sherlock as a daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sherlock.nix>
programs.sioyek.enable

Whether to enable Sioyek, a PDF viewer designed for reading research papers and technical books.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sioyek.nix>
programs.sioyek.package

The sioyek package to use.

Type:package

Default:pkgs.sioyek

Declared by:

<home-manager/modules/programs/sioyek.nix>
programs.sioyek.bindings

Input configuration written to$XDG_CONFIG_HOME/sioyek/keys_user.config.Seehttps://github.com/ahrm/sioyek/blob/main/pdf_viewer/keys.config.

Each attribute could also accept a list of strings to set multiplebindings of the same command.

Type:attribute set of (string or list of string)

Default:{ }

Example:

{  "move_up" = "k";  "move_down" = "j";  "move_left" = "h";  "move_right" = "l";  "screen_down" = [ "d" "<C-d>" ];  "screen_up" = [ "u" "<C-u>" ];}

Declared by:

<home-manager/modules/programs/sioyek.nix>
programs.sioyek.config

Input configuration written to$XDG_CONFIG_HOME/sioyek/prefs_user.config.Seehttps://github.com/ahrm/sioyek/blob/main/pdf_viewer/prefs.config.

Type:attribute set of string

Default:{ }

Example:

{  "background_color" = "1.0 1.0 1.0";  "text_highlight_color" = "1.0 0.0 0.0";}

Declared by:

<home-manager/modules/programs/sioyek.nix>
programs.sketchybar.enable

Whether to enable sketchybar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.package

The sketchybar package to use.

Type:package

Default:pkgs.sketchybar

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.config

The sketchybar configuration. Can be specified as:

  1. A string containing the configuration content directly

  2. An attribute set with ‘source’ pointing to a directory containingthe full configuration, and optionally ‘recursive = true’ torecursively copy all files

  3. An attribute set with ‘text’ containing inline configuration

When using a string or ‘text’, the appropriate shebang will beautomatically added based on configType (bash or lua).

When using a directory source, it should contain a file named“sketchybarrc” which serves as the main entry point.

Type:null or strings concatenated with “\n” or (submodule)

Default:null

Example:

# String example - inline configuration''# Define colorsexport COLOR_BLACK="0xff181926"export COLOR_WHITE="0xffcad3f5"# Configure barsketchybar --bar height=32 \                position=top \                padding_left=10 \                padding_right=10 \                color=$COLOR_BLACK# Configure default valuessketchybar --default icon.font="SF Pro:Bold:14.0" \                    icon.color=$COLOR_WHITE \                    label.font="SF Pro:Bold:14.0" \                    label.color=$COLOR_WHITE# Add items to the barsketchybar --add item clock right \          --set clock script="date '+%H:%M'" \                      update_freq=10# Update the barsketchybar --update''# Or directory example - for complex configurations# {#   source = ./path/to/sketchybar-config;#   recursive = true;# }

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.configType

The type of configuration to generate.

Set to “bash” to use the standard bash configuration.Set to “lua” to use the Lua configuration via SbarLua.

Type:one of “bash”, “lua”

Default:"bash"

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.extraLuaPackages

The extra Lua packages required for your plugins to work.This option accepts a function that takes a Lua package set as an argument,and selects the required Lua packages from this package set.See the example for more info.

Type:function that evaluates to a(n) list of package

Default:ps: [ ]

Example:luaPkgs: with luaPkgs; [ luautf8 ]

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.extraPackages

Extra packages to add to PATH for the sketchybar service.

Type:list of package

Default:[ ]

Example:[ pkgs.jq ]

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.includeSystemPath

Whether to include common systemPATH in the wrapper.This allows sketchybar to access system binaries.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.luaPackage

The lua5_4 package to use. Lua interpreter to use when configType is lua.

Type:null or package

Default:pkgs.lua5_4

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.sbarLuaPackage

The sbarlua package to use. Required when using a lua configuration.

Type:null or package

Default:pkgs.sbarlua

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.service.enable

Whether to enable sketchybar service.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.service.errorLogFile

Absolute path to log all stderr output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/sketchybar/sketchybar.err.log

Example:"/Users/khaneliman/Library/Logs/sketchybar.log"

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.sketchybar.service.outLogFile

Absolute path to log all stdout output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/sketchybar/sketchybar.out.log

Example:"/Users/khaneliman/Library/Logs/sketchybar.log"

Declared by:

<home-manager/modules/programs/sketchybar.nix>
programs.skim.enable

Whether to enable skim - a command-line fuzzy finder.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.package

The skim package to use.

Type:package

Default:pkgs.skim

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.changeDirWidgetCommand

The command that gets executed as the source for skim for theALT-C keybinding.

Type:null or string

Default:null

Example:"fd --type d"

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.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/skim.nix>
programs.skim.defaultCommand

The command that gets executed as the default source for skimwhen running.

Type:null or string

Default:null

Example:"fd --type f"

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.defaultOptions

Extra command line options given to skim by default.

Type:list of string

Default:[ ]

Example:

[  "--height 40%"  "--prompt ⟫"]

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.fileWidgetCommand

The command that gets executed as the source for skim for theCTRL-T keybinding.

Type:null or string

Default:null

Example:"fd --type f"

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.fileWidgetOptions

Command line options for the CTRL-T keybinding.

Type:list of string

Default:[ ]

Example:

[  "--preview 'head {}'"]

Declared by:

<home-manager/modules/programs/skim.nix>
programs.skim.historyWidgetOptions

Command line options for the CTRL-R keybinding.

Type:list of string

Default:[ ]

Example:

[  "--tac"  "--exact"]

Declared by:

<home-manager/modules/programs/skim.nix>
programs.sm64ex.enable

Whether to enable sm64ex.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.sm64ex.package

The sm64ex package to use.

Type:null or package

Default:pkgs.sm64ex

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.sm64ex.baserom

The path to the Super Mario 64 baserom to extract assets from.

Type:null or absolute path

Default:null

Example:/home/foo/baserom.us.z64

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.sm64ex.extraCompileFlags

Extra flags to pass to the compiler. Seehttps://github.com/sm64pc/sm64ex/wiki/Build-optionsfor more information.

Type:null or (list of string)

Default:null

Example:

[  "BETTERCAMERA=1"  "NODRAWINGDISTANCE=1"];

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.sm64ex.region

Your baserom’s region. Note that only “us”, “eu”, and “jp” are supported.

Type:null or one of “us”, “eu”, “jp”

Default:us

Example:jp

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.sm64ex.settings

Settings for sm64ex’s$XDG_DATA_HOME/sm64pc/sm64config.txt file.

Type:null or (attribute set of (string or signed integer or boolean or list of string))

Default:null

Example:

{  fullscreen = false;  window_x = 0;  window_y = 0;  window_w = 1920;  window_h = 1080;  vsync = 1;  texture_filtering = 1;  master_volume = 127;  music_volume = 127;  sfx_volume = 127;  env_volume = 127;  key_a = [ "0026" "1000" "1103" ];  key_b = [ "0033" "1002" "1101" ];  key_start = [ "0039" "1006" "ffff" ];  key_l = [ "0034" "1007" "1104" ];  key_r = [ "0036" "100a" "1105" ];  key_z = [ "0025" "1009" "1102" ];  key_cup = [ "100b" "ffff" "ffff" ];  key_cdown = [ "100c" "ffff" "ffff" ];  key_cleft = [ "100d" "ffff" "ffff" ];  key_cright = [ "100e" "ffff" "ffff" ];  key_stickup = [ "0011" "ffff" "ffff" ];  key_stickdown = [ "001f" "ffff" "ffff" ];  key_stickleft = [ "001e" "ffff" "ffff" ];  key_stickright = [ "0020" "ffff" "ffff" ];  stick_deadzone = 16;  rumble_strength = 10;  skip_intro = 1;};

Declared by:

<home-manager/modules/programs/sm64ex.nix>
programs.smug.enable

Whether to enable Smug session manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.package

The smug package to use.

Type:null or package

Default:pkgs.smug

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects

Attribute set with project configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.beforeStart

Commands to execute before the tmux-session starts.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.env

Environment Variables to set in session.

Type:null or (attribute set of string)

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.root

Root path in filesystem of the smug project. This is where tmuxchanges its directory to.

Application defaults to$HOME.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.stop

Commands to execute after the tmux-session is destroyed.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows

Windows to create in the project session

Type:list of (submodule)

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.commands

Commands to execute when window starts.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.layout

Layout of window when opening panes.

Type:one of “main-horizontal”, “main-vertical”, “even-vertical”, “even-horizontal”, “tiled”

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.manual

Start window only manually, using the -w arg

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.name

Name of the tmux window;

Type:string

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.panes

Panes to open in a window.

Type:null or (list of (submodule))

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.panes.*.commands

Commands to execute when pane starts.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.panes.*.root

Root path of pane. This is relative to the path of the smug project.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.panes.*.type

Type of pane.

Type:one of “horizontal”, “vertical”

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.root

Root path of window. This is relative to the path of the smug project.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.smug.projects.<name>.windows.*.selected

Whether this window should be selected by default at session start.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/smug.nix>
programs.spotify-player.enable

Whether to enable spotify-player.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.spotify-player.package

The spotify-player package to use.

Type:null or package

Default:pkgs.spotify-player

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.spotify-player.actions

Configuration written to theactions field of$XDG_CONFIG_HOME/spotify-player/keymap.toml.

Seehttps://github.com/aome510/spotify-player/blob/master/docs/config.md#actionsfor the full list of options.

Type:list of (TOML value)

Default:[ ]

Example:

[  {    action = "GoToArtist";    key_sequence = "g A";  }  {    action = "GoToAlbum";    key_sequence = "g B";    target = "PlayingTrack";  }  {    action = "ToggleLiked";    key_sequence = "C-l";  }]

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.spotify-player.keymaps

Configuration written to thekeymaps field of$XDG_CONFIG_HOME/spotify-player/keymap.toml.

Seehttps://github.com/aome510/spotify-player/blob/master/docs/config.md#keymapsfor the full list of options.

Type:list of (TOML value)

Default:[ ]

Example:

[  {    command = "NextTrack";    key_sequence = "g n";  }  {    command = "PreviousTrack";    key_sequence = "g p";  }  {    command = "Search";    key_sequence = "C-c C-x /";  }  {    command = "ResumePause";    key_sequence = "M-enter";  }  {    command = "None";    key_sequence = "q";  }]

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.spotify-player.settings

Configuration written to$XDG_CONFIG_HOME/spotify-player/app.toml.

Seehttps://github.com/aome510/spotify-player/blob/master/docs/config.md#generalfor the full list of options.

Type:TOML value

Default:{ }

Example:

{  theme = "default";  playback_window_position = "Top";  copy_command = {    command = "wl-copy";    args = [];  };  device = {    audio_cache = false;    normalization = false;  };}

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.spotify-player.themes

Configuration written to thethemes field of$XDG_CONFIG_HOME/spotify-player/theme.toml.

Seehttps://github.com/aome510/spotify-player/blob/master/docs/config.md#themesfor the full list of options.

Type:list of (TOML value)

Default:[ ]

Example:

[  {    name = "default2";    palette = {      black = "black";      red = "red";      green = "green";      yellow = "yellow";      blue = "blue";      magenta = "magenta";      cyan = "cyan";      white = "white";      bright_black = "bright_black";      bright_red = "bright_red";      bright_green = "bright_green";      bright_yellow = "bright_yellow";      bright_blue = "bright_blue";      bright_magenta = "bright_magenta";      bright_cyan = "bright_cyan";      bright_white = "bright_white";    };    component_style = {      block_title = { fg = "Magenta"; };      border = {};      playback_track = { fg = "Cyan"; modifiers = ["Bold"]; };      playback_artists = { fg = "Cyan"; modifiers = ["Bold"]; };      playback_album = { fg = "Yellow"; };      playback_metadata = { fg = "BrightBlack"; };      playback_progress_bar = { bg = "BrightBlack"; fg = "Green"; };      current_playing = { fg = "Green"; modifiers = ["Bold"]; };      page_desc = { fg = "Cyan"; modifiers = ["Bold"]; };      table_header = { fg = "Blue"; };      selection = { modifiers = ["Bold" "Reversed"]; };    };  }]

Declared by:

<home-manager/modules/programs/spotify-player.nix>
programs.sqls.enable

Whether to enable sqls, a SQL language server written in Go.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sqls.nix>
programs.sqls.package

The sqls package to use.

Type:null or package

Default:pkgs.sqls

Declared by:

<home-manager/modules/programs/sqls.nix>
programs.sqls.settings

Configuration written to$XDG_CONFIG_HOME/sqls/config.yml. Seehttps://github.com/lighttiger2505/sqls#db-configurationfor supported values.

Type:YAML 1.1 value

Default:{ }

Example:

{   lowercaseKeywords = true;   connections = [     {       driver = "mysql";       dataSourceName = "root:root@tcp(127.0.0.1:13306)/world";     }   ];}

Declared by:

<home-manager/modules/programs/sqls.nix>
programs.ssh.enable

Whether to enable SSH client configuration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.enableDefaultConfig

Whether to enable or not the old default config values.This option will become deprecated in the future.For an equivalent, copy and paste the followingcode snippet in your config:

programs.ssh.matchBlocks.“*” = {forwardAgent = false;addKeysToAgent = “no”;compression = false;serverAliveInterval = 0;serverAliveCountMax = 3;hashKnownHosts = false;userKnownHostsFile = “~/.ssh/known_hosts”;controlMaster = “no”;controlPath = “~/.ssh/master-%r@%n:%p”;controlPersist = “no”;};

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.package

The openssh package to use. By default, the client provided by your system is used.

Type:null or package

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.extraConfig

Extra configuration.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.extraOptionOverrides

Extra SSH configuration options that take precedence over anyhost specific configuration.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.includes

File globs of ssh config files that should be included via theInclude directive.

Seessh_config(5)for more information.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks

Specify per-host settings. Note, if the order of rules matterthen use the DAG functions to express the dependencies asshown in the example.

Seessh_config(5)for more information.

Type:DAG of submodule

Default:{ }

Example:

{  "john.example.com" = {    hostname = "example.com";    user = "john";  };  foo = lib.hm.dag.entryBefore ["john.example.com"] {    hostname = "example.com";    identityFile = "/home/john/.ssh/foo_rsa";  };};

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.addKeysToAgent

When enabled, a private key that is used during authentication will beadded to ssh-agent if it is running (with confirmation enabled ifset to ‘confirm’). The argument must be ‘no’ (the default), ‘yes’, ‘confirm’(optionally followed by a time interval), ‘ask’ or a time interval (e.g. ‘1h’).

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.addressFamily

Specifies which address family to use when connecting.

Type:null or one of “any”, “inet”, “inet6”

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.certificateFile

Specifies files from which the user certificate is read.

Type:(list of string) or null or string

Default:[ ]

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.checkHostIP

Check the host IP address in theknown_hosts file.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.compression

Specifies whether to use compression. Omitted from the hostblock whennull.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.controlMaster

Configure sharing of multiple sessions over a single network connection.

Type:null or one of “yes”, “no”, “ask”, “auto”, “autoask”

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.controlPath

Specify path to the control socket used for connection sharing.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.controlPersist

Whether control socket should remain open in the background.

Type:null or string

Default:null

Example:"10m"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.dynamicForwards

Specify dynamic port forwardings. Seessh_config(5) forDynamicForward.

Type:list of (submodule)

Default:[ ]

Example:

[ { port = 8080; } ];

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.dynamicForwards.*.address

The address where to bind the port.

Type:string

Default:"localhost"

Example:"example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.dynamicForwards.*.port

Specifies port number to bind on bind address.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:8080

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.extraOptions

Extra configuration options for the host.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.forwardAgent

Whether the connection to the authentication agent (if any)will be forwarded to the remote machine.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.forwardX11

Specifies whether X11 connections will be automatically redirectedover the secure channel andDISPLAY set.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.forwardX11Trusted

Specifies whether remote X11 clients will have full access to theoriginal X11 display.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.hashKnownHosts

Indicates thatssh(1)should hash host names and addresses when they are added tothe known hosts file.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.host

Host pattern used by this conditional block.Seessh_config(5)forHost block details.This option is ignored ifssh.matchBlocks.*.matchif defined.

Type:null or string

Default:null

Example:"*.example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.hostname

Specifies the real host name to log into.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.identitiesOnly

Specifies that ssh should only use the authenticationidentity explicitly configured in the~/.ssh/config files or passed on thessh command-line, even ifssh-agentoffers more identities.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.identityAgent

Specifies the location of the ssh identity agent.

Type:(list of string) or null or string

Default:[ ]

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.identityFile

Specifies files from which the user identity is read.Identities will be tried in the given order.

Type:(list of string) or null or string

Default:[ ]

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.localForwards

Specify local port forwardings. Seessh_config(5) forLocalForward.

Type:list of (submodule)

Default:[ ]

Example:

[  {    bind.port = 8080;    host.address = "10.0.0.13";    host.port = 80;  }];

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.localForwards.*.bind.address

The address where to bind the port.

Type:string

Default:"localhost"

Example:"example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.localForwards.*.bind.port

Specifies port number to bind on bind address.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:8080

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.localForwards.*.host.address

The address where to forward the traffic to.

Type:null or string

Default:null

Example:"example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.localForwards.*.host.port

Specifies port number to forward the traffic to.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:80

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.match

Match block conditions used by this block. Seessh_config(5)forMatch block details.This option takes precedence overssh.matchBlocks.*.hostif defined.

Type:null or string

Default:null

Example:

''  host <hostname> canonical  host <hostname> exec "ping -c1 -q 192.168.17.1"''

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.port

Specifies port number to connect on remote host.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.proxyCommand

The command to use to connect to the server.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.proxyJump

The proxy host to use to connect to the server.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.remoteForwards

Specify remote port forwardings. Seessh_config(5) forRemoteForward.

Type:list of (submodule)

Default:[ ]

Example:

[  {    bind.port = 8080;    host.address = "10.0.0.13";    host.port = 80;  }];

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.address

The address where to bind the port.

Type:string

Default:"localhost"

Example:"example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.remoteForwards.*.bind.port

Specifies port number to bind on bind address.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:8080

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.remoteForwards.*.host.address

The address where to forward the traffic to.

Type:null or string

Default:null

Example:"example.org"

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.remoteForwards.*.host.port

Specifies port number to forward the traffic to.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:80

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.sendEnv

Environment variables to send from the local host to theserver.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.serverAliveCountMax

Sets the number of server alive messages which may be sentwithout SSH receiving any messages back from the server.

Type:null or (positive integer, meaning >0)

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.serverAliveInterval

Set timeout in seconds after which response will be requested.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.setEnv

Environment variables and their value to send to the server.

Type:attribute set of (string or absolute path or signed integer or floating point number)

Default:{ }

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.user

Specifies the user to log in as.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.ssh.matchBlocks.<name>.userKnownHostsFile

Specifies one or more files to use for the user host keydatabase, separated by whitespace. The default is~/.ssh/known_hosts.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/ssh.nix>
programs.starship.enable

Whether to enable starship.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableInteractive

Only enable starship when the shell is interactive. This option is onlyvalid for the Fish shell.

Some plugins require this to be set tofalse to function correctly.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableIonIntegration

Whether to enable Ion integration.

Type:boolean

Default:home.shell.enableIonIntegration

Example:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableTransience

The TransientPrompt feature of Starship replaces previous prompts with acustom string. This is only a valid option for the Fish shell.

For documentation on how to change the default replacement string andfor more information visithttps://starship.rs/advanced-config/#transientprompt-and-transientrightprompt-in-cmd

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.package

The starship package to use.

Type:package

Default:pkgs.starship

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.configPath

Relative path to the user’s home directory where the Starship config should be stored.

Type:string

Default:${config.xdg.configHome}/starship.toml

Declared by:

<home-manager/modules/programs/starship.nix>
programs.starship.settings

Configuration written to$XDG_CONFIG_HOME/starship.toml.

Seehttps://starship.rs/config/ for the full listof options.

Type:TOML value

Default:{ }

Example:

{  add_newline = false;  format = lib.concatStrings [    "$line_break"    "$package"    "$line_break"    "$character"  ];  scan_timeout = 10;  character = {    success_symbol = "➜";    error_symbol = "➜";  };}

Declared by:

<home-manager/modules/programs/starship.nix>
programs.streamlink.enable

Whether to enable streamlink.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.streamlink.package

The streamlink package to use.

Type:null or package

Default:pkgs.streamlink

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.streamlink.plugins

Streamlink plugins.

If a source is set, the custom plugin will be linked to the data directory.

Additional configuration specific to the plugin, if defined, will bewritten to the config directory, and override global settings.

Type:attribute set of (submodule)

Default:{ }

Example:

{  custom_plugin = {    src = ./custom_plugin.py;    settings = {      quiet = true;    };  };}

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.streamlink.plugins.<name>.settings

Configuration for the specific plugin, written to$XDG_CONFIG_HOME/streamlink/config.<name> (linux) orLibrary/Application Support/streamlink/config.<name> (darwin).

Type:attribute set of (boolean or signed integer or floating point number or string or list of (signed integer or floating point number or string))

Default:{ }

Example:

{  quiet = true;}

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.streamlink.plugins.<name>.src

Source of the custom plugin. The value should be a path to theplugin file, or the text of the plugin code. Will be linked to$XDG_DATA_HOME/streamlink/plugins/<name>.py (linux) orLibrary/Application Support/streamlink/plugins/<name>.py (darwin).

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:./custom_plugin.py

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.streamlink.settings

Global configuration options for streamlink. It will be written to$XDG_CONFIG_HOME/streamlink/config (linux) orLibrary/Application Support/streamlink/config (darwin).

Type:attribute set of (boolean or signed integer or floating point number or string or list of (signed integer or floating point number or string))

Default:{ }

Example:

{  player = "${pkgs.mpv}/bin/mpv";  player-args = "--cache 2048";  player-no-close = true;}

Declared by:

<home-manager/modules/programs/streamlink.nix>
programs.superfile.enable

Whether to enable superfile - Pretty fancy and modern terminal file manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.package

The superfile package to use.

Type:null or package

Default:pkgs.superfile

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.firstUseCheck

Enables the first time use popup.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.hotkeys

Hotkey configuration written to$XDG_CONFIG_HOME/superfile/hotkeys.toml(linux) orLibrary/Application Support/superfile/hotkeys.toml (darwin), Seehttps://superfile.netlify.app/configure/custom-hotkeys/ for supported values.

Type:TOML value

Default:{ }

Example:

confirm = [  "enter"  "right"  "l"];

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.metadataPackage

The exiftool package to use.

Type:null or package

Default:pkgs.exiftool

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.pinnedFolders

Entries that get added to the pinned panel.

Type:list of (open submodule of (JSON value))

Default:[ ]

Example:

[  {    name = "Nix Store";    location = "/nix/store";  }];

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.pinnedFolders.*.location

Location of the pinned entry.

Type:absolute path

Example:"/nix/store"

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.pinnedFolders.*.name

Name that will be shown.

Type:null or string

Default:null

Example:"Nix Store"

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.settings

Configuration written to$XDG_CONFIG_HOME/superfile/config.toml(linux) orLibrary/Application Support/superfile/config.toml (darwin), Seehttps://superfile.netlify.app/configure/superfile-config/ for supported values.

Type:TOML value

Default:{ }

Example:

theme = "catppuccin-frappe";default_sort_type = 0;transparent_background = false;

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.themes

Theme files written to$XDG_CONFIG_HOME/superfile/theme/(linux) orLibrary/Application Support/superfile/theme/ (darwin), Seehttps://superfile.netlify.app/configure/custom-theme/ for supported values.

Type:attribute set of (TOML value or absolute path)

Default:{ }

Example:

myTheme = {  code_syntax_highlight = "catppuccin-latte";  file_panel_border = "#101010";  sidebar_border = "#101011";  footer_border = "#101012";  gradient_color = [    "#101013"    "#101014"  ];  # ...};myOtherFavoriteTheme = {  code_syntax_highlight = "catppuccin-mocha";  file_panel_border = "#505050";  sidebar_border = "#505051";  footer_border = "#505052";  gradient_color = [    "#505053"    "#505054"  ];  # ...};

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.superfile.zoxidePackage

The zoxide package to use.

Type:null or package

Default:pkgs.zoxide

Declared by:

<home-manager/modules/programs/superfile.nix>
programs.swappy.enable

Whether to enable swappy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/swappy.nix>
programs.swappy.package

The swappy package to use.

Type:null or package

Default:pkgs.swappy

Declared by:

<home-manager/modules/programs/swappy.nix>
programs.swappy.settings

Configuration settings for swappy. All the available options can be foundhere:https://github.com/jtheoof/swappy?tab=readme-ov-file#config

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Default = {    auto_save = false;    custom_color = "rgba(193,125,17,1)";    early_exit = false;    fill_shape = false;    line_size = 5;    paint_mode = "brush";    save_dir = "$HOME/Desktop";    save_filename_format = "swappy-%Y%m%d-%H%M%S.png";    show_panel = false;    text_font = "sans-serif";    text_size = 20;    transparency = 50;    transparent = false;  };}

Declared by:

<home-manager/modules/programs/swappy.nix>
programs.sway-easyfocus.enable

Whether to enable sway-easyfocus.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/sway-easyfocus.nix>
programs.sway-easyfocus.package

The sway-easyfocus package to use.

Type:null or package

Default:pkgs.sway-easyfocus

Declared by:

<home-manager/modules/programs/sway-easyfocus.nix>
programs.sway-easyfocus.settings

Configuration settings for sway-easyfocus. All available options can be found here:https://github.com/edzdez/sway-easyfocus?tab=readme-ov-file#config-file.

Type:YAML 1.1 value

Default:{ }

Example:

{  chars = "fjghdkslaemuvitywoqpcbnxz";  focused_background_color = "285577";  focused_background_opacity = 1.0;  focused_text_color = "ffffff";  font_family = "monospace";  font_size = "medium";  font_weight = "bold";  window_background_color = "d1f21";  window_background_opacity = 0.2;}

Declared by:

<home-manager/modules/programs/sway-easyfocus.nix>
programs.swayimg.enable

Whether to enable swayimg.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/swayimg.nix>
programs.swayimg.package

The swayimg package to use.

Type:package

Default:pkgs.swayimg

Declared by:

<home-manager/modules/programs/swayimg.nix>
programs.swayimg.settings

Configuration written to$XDG_CONFIG_HOME/swayimg/config. Seehttps://github.com/artemsen/swayimg/blob/master/extra/swayimgrc 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:

{  viewer = {    window = "#10000010";    scale = "fill";  };  "info.viewer" = {    top_left = "+name,+format";  };  "keys.viewer" = {    "Shift+r" = "rand_file";  };}

Declared by:

<home-manager/modules/programs/swayimg.nix>
programs.swaylock.enable

Whether to enable swaylock.

Note that PAM must be configured to enable swaylock to performauthentication. The package installed through home-managerwillnot be able to unlock the session without thisconfiguration.

On NixOS, this is by default enabled with the sway module, butfor other compositors it can currently be enabled using:

security.pam.services.swaylock = {};

On non-NixOS, it is easiest to avoid incompatibility involving PAM by

  1. stopping Home Manager from installing swaylock by settingprograms.swaylock.package tonull; and

  2. instead installing swaylock from your distribution’s repository.

Type:boolean

Default:

true  if state version < 23.05 and settings ≠ { },false otherwise

Example:true

Declared by:

<home-manager/modules/programs/swaylock.nix>
programs.swaylock.package

The swaylock package to use.

Type:null or package

Default:pkgs.swaylock

Declared by:

<home-manager/modules/programs/swaylock.nix>
programs.swaylock.settings

Default arguments toswaylock. An empty setdisables configuration generation.

Type:attribute set of (boolean or floating point number or signed integer or absolute path or string)

Default:{ }

Example:

{  color = "808080";  font-size = 24;  indicator-idle-visible = false;  indicator-radius = 100;  line-color = "ffffff";  show-failed-attempts = true;}

Declared by:

<home-manager/modules/programs/swaylock.nix>
programs.swayr.enable

Whether to enable the swayr service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.swayr.package

The swayr package to use.

Type:package

Default:pkgs.swayr

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.swayr.extraConfig

Extra configuration lines to append to the swayrconfiguration file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.swayr.settings

Configuration included inconfig.toml.For available options seehttps://git.sr.ht/~tsdh/swayr#swayr-configuration

Type:null or TOML value

Default:{ }

Example:

menu = {  executable = "${pkgs.wofi}/bin/wofi";  args = [    "--show=dmenu"    "--allow-markup"    "--allow-images"    "--insensitive"    "--cache-file=/dev/null"    "--parse-search"    "--height=40%"    "--prompt={prompt}"  ];};format = {  output_format = "{indent}<b>Output {name}</b>    <span alpha=\"20000\">({id})</span>";  workspace_format = "{indent}<b>Workspace {name} [{layout}]</b> on output {output_name}    <span alpha=\"20000\">({id})</span>";  container_format = "{indent}<b>Container [{layout}]</b> <i>{marks}</i> on workspace {workspace_name}    <span alpha=\"20000\">({id})</span>";  window_format = "img:{app_icon}:text:{indent}<i>{app_name}</i> — {urgency_start}<b>“{title}”</b>{urgency_end} <i>{marks}</i> on workspace {workspace_name} / {output_name}    <span alpha=\"20000\">({id})</span>";  indent = "    ";  urgency_start = "<span background=\"darkred\" foreground=\"yellow\">";  urgency_end = "</span>";  html_escape = true;};layout = {  auto_tile = false;  auto_tile_min_window_width_per_output_width = [    [ 800 400 ]    [ 1024 500 ]    [ 1280 600 ]    [ 1400 680 ]    [ 1440 700 ]    [ 1600 780 ]    [ 1680 780 ]    [ 1920 920 ]    [ 2048 980 ]    [ 2560 1000 ]    [ 3440 1200 ]    [ 3840 1280 ]    [ 4096 1400 ]    [ 4480 1600 ]    [ 7680 2400 ]  ];};focus = {  lockin_delay = 750;};misc = {  seq_inhibit = false;};

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.swayr.systemd.enable

Whether to enable swayr systemd integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.swayr.systemd.target

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/programs/swayr.nix>
programs.taskwarrior.enable

Whether to enable Task Warrior.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.taskwarrior.package

The taskwarrior2 package to use.

Type:null or package

Default:pkgs.taskwarrior2

Example:pkgs.taskwarrior3

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.taskwarrior.colorTheme

Either one of the default provided theme as string, or apath to a theme configuration file.

Type:null or string or absolute path

Default:null

Example:"dark-blue-256"

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.taskwarrior.config

Key-value configuration written to$XDG_CONFIG_HOME/task/taskrc.

Type:attribute set of anything

Default:{ }

Example:

{  confirmation = false;  report.minimal.filter = "status:pending";  report.active.columns = [ "id" "start" "entry.age" "priority" "project" "due" "description" ];  report.active.labels  = [ "ID" "Started" "Age" "Priority" "Project" "Due" "Description" ];  taskd = {    certificate = "/path/to/cert";    key = "/path/to/key";    ca = "/path/to/ca";    server = "host.domain:53589";    credentials = "Org/First Last/cf31f287-ee9e-43a8-843e-e8bbd5de4294";  };}

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.taskwarrior.dataLocation

Location where Task Warrior will store its data.

Home Manager will attempt to create this directory.

Type:string

Default:"$XDG_DATA_HOME/task"

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.taskwarrior.extraConfig

Additional content written at the end of$XDG_CONFIG_HOME/task/taskrc.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/taskwarrior.nix>
programs.tealdeer.enable

Whether to enable Tealdeer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.enableAutoUpdates

Whether to enable Auto updates.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.package

The tealdeer package to use.

Type:package

Default:pkgs.tealdeer

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.settings

Configuration written to$XDG_CONFIG_HOME/tealdeer/config.toml on Linux or$HOME/Library/Application Support/tealdeer/config.toml on Darwin.Seehttps://tealdeer-rs.github.io/tealdeer/config.html for more information.

Type:null or (open submodule of (TOML value))

Default:null

Example:

{  display = {    compact = false;    use_pager = true;  };  updates = {    auto_update = false;  };};

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.settings.updates

Tealdeer can refresh the cache automatically when it is outdated.This behavior can be configured in the updates section.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.settings.updates.auto_update

Whether to enable auto-update.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.tealdeer.settings.updates.auto_update_interval_hours

Duration, since the last cache update, after which the cache will be refreshed.This parameter is ignored ifauto_update is set tofalse.

Type:positive integer, meaning >0

Default:720

Example:24

Declared by:

<home-manager/modules/programs/tealdeer.nix>
programs.television.enable

Whether to enable television.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.package

The television package to use.

Type:null or package

Default:pkgs.television

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.channels

Each set of channels are written to$XDG_CONFIG_HOME/television/cable/NAME.toml

Seehttps://alexpasmantier.github.io/television/docs/Users/channelsfor options

Type:attribute set of (TOML value)

Default:{ }

Example:

{  git-diff = {    metadata = {      description = "A channel to select files from git diff commands";      name = "git-diff";      requirements = [        "git"      ];    };    preview = {      command = "git diff HEAD --color=always -- '{}'";    };    source = {      command = "git diff --name-only HEAD";    };  };  git-log = {    metadata = {      description = "A channel to select from git log entries";      name = "git-log";      requirements = [        "git"      ];    };    preview = {      command = "git show -p --stat --pretty=fuller --color=always '{0}'";    };    source = {      command = "git log --oneline --date=short --pretty=\"format:%h %s %an %cd\" \"$@\"";      output = "{split: :0}";    };  };}

Declared by:

<home-manager/modules/programs/television.nix>
programs.television.settings

Configuration written to$XDG_CONFIG_HOME/television/config.toml.Seehttps://github.com/alexpasmantier/television/blob/main/.config/config.tomlfor the full list of options.

Type:TOML value

Default:{ }

Example:

{  tick_rate = 50;  ui = {    use_nerd_font_icons = true;    ui_scale = 120;    show_preview_panel = false;  };  keybindings = {    quit = [ "esc" "ctrl-c" ];  };}

Declared by:

<home-manager/modules/programs/television.nix>
programs.terminator.enable

Whether to enable terminator, a tiling terminal emulator.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/terminator.nix>
programs.terminator.package

The terminator package to use.

Type:package

Default:pkgs.terminator

Declared by:

<home-manager/modules/programs/terminator.nix>
programs.terminator.config

configuration for terminator.

For a list of all possible options refer to theterminator_config(5)man page.

Type:attribute set of anything

Default:{ }

Example:

{  global_config.borderless = true;  profiles.default.background_color = "#002b36";}

Declared by:

<home-manager/modules/programs/terminator.nix>
programs.termite.enable

Whether to enable Termite VTE-based terminal.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.enableVteIntegration

Whether to enable Shell VTE integration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.package

The termite package to use.

Type:null or package

Default:pkgs.termite

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.allowBold

Allow the output of bold characters when the bold escape sequence appears.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.audibleBell

Have the terminal beep on the terminal bell.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.backgroundColor

Background color value.

Type:null or string

Default:null

Example:"rgba(63, 63, 63, 0.8)"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.browser

Set the default browser for opening links. If its not set, $BROWSER is read.If that’s not set, url hints will be disabled.

Type:null or string

Default:null

Example:"\${pkgs.xdg-utils}/xdg-open"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.clickableUrl

Auto-detected URLs can be clicked on to open them in your browser.Only enabled if a browser is configured or detected.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.colorsExtra

Extra colors options that should be added to [colors] section.

Type:strings concatenated with “\n”

Default:""

Example:

''  color0 = #3f3f3f  color1 = #705050  color2 = #60b48a''

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.cursorBlink

Specify the how the terminal’s cursor should behave.Accepts system to respect the gtk global configuration,on and off to explicitly enable or disable them.

Type:null or one of “system”, “on”, “off”

Default:null

Example:"system"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.cursorColor

Cursor color value.

Type:null or string

Default:null

Example:"#dcdccc"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.cursorForegroundColor

Cursor foreground color value.

Type:null or string

Default:null

Example:"#dcdccc"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.cursorShape

Specify how the cursor should look. Accepts block, ibeam and underline.

Type:null or one of “block”, “underline”, “ibeam”

Default:null

Example:"block"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.dynamicTitle

Settings dynamic title allows the terminal and the shell toupdate the terminal’s title.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.filterUnmatchedUrls

Whether to hide url hints not matching input in url hints mode.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.font

The font description for the terminal’s font.

Type:null or string

Default:null

Example:"Monospace 12"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.foregroundBoldColor

Foreground bold color value.

Type:null or string

Default:null

Example:"#ffffff"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.foregroundColor

Foreground color value.

Type:null or string

Default:null

Example:"#dcdccc"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.fullscreen

Enables entering fullscreen mode by pressing F11.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.geometry

The default window geometry for new terminal windows.

Type:null or string

Default:null

Example:"640x480"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.highlightColor

highlight color value.

Type:null or string

Default:null

Example:"#2f2f2f"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsActiveBackgroundColor

Hints active background color value.

Type:null or string

Default:null

Example:"#3f3f3f"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsActiveForegroundColor

Hints active foreground color value.

Type:null or string

Default:null

Example:"#e68080"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsBackgroundColor

Hints background color value.

Type:null or string

Default:null

Example:"#3f3f3f"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsBorderColor

Hints border color value.

Type:null or string

Default:null

Example:"#3f3f3f"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsBorderWidth

Hints border width.

Type:null or string

Default:null

Example:"0.5"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsExtra

Extra hints options that should be added to [hints] section.

Type:strings concatenated with “\n”

Default:""

Example:"border = #3f3f3f"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsFont

The font description for the hints font.

Type:null or string

Default:null

Example:"Monospace 12"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsForegroundColor

Hints foreground color value.

Type:null or string

Default:null

Example:"#dcdccc"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsPadding

Hints padding.

Type:null or signed integer

Default:null

Example:2

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.hintsRoundness

Hints roundness.

Type:null or string

Default:null

Example:"0.2"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.iconName

The name of the icon to be used for the terminal process.

Type:null or string

Default:null

Example:"terminal"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.modifyOtherKeys

Emit escape sequences for extra keys,like the modifyOtherKeys resource forxterm(1).

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.mouseAutohide

Automatically hide the mouse pointer when you start typing.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.optionsExtra

Extra options that should be added to [options] section.

Type:strings concatenated with “\n”

Default:""

Example:"fullscreen = true"

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.scrollOnKeystroke

Scroll to the bottom automatically when a key is pressed.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.scrollOnOutput

Scroll to the bottom when the shell generates output.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.scrollbackLines

Set the number of lines to limit the terminal’s scrollback.

Type:null or signed integer

Default:null

Example:10000

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.scrollbar

Scrollbar position.

Type:null or one of “off”, “left”, “right”

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.searchWrap

Search from top again when you hit the bottom.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.sizeHints

Enable size hints. Locks the terminal resizingto increments of the terminal’s cell size.Requires a window manager that respects scroll hints.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.termite.urgentOnBell

Sets the window as urgent on the terminal bell.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/termite.nix>
programs.tex-fmt.enable

Whether to enable tex-fmt.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tex-fmt.nix>
programs.tex-fmt.package

The tex-fmt package to use.

Type:null or package

Default:pkgs.tex-fmt

Declared by:

<home-manager/modules/programs/tex-fmt.nix>
programs.tex-fmt.settings

Configuration written to$XDG_CONFIG_HOME/tex-fmt/tex-fmt.toml on Linux or$HOME/Library/Application Support/tex-fmt/tex-fmt.toml on Darwin.Seehttps://github.com/WGUNDERWOOD/tex-fmt andhttps://github.com/WGUNDERWOOD/tex-fmt/blob/master/tex-fmt.tomlfor more information.

Type:TOML value

Default:{ }

Example:

{  wrap = true;  tabsize = 2;  tabchar = "space";  lists = [];}

Declared by:

<home-manager/modules/programs/tex-fmt.nix>
programs.texlive.enable

Whether to enable TeX Live.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/texlive.nix>
programs.texlive.package

Resulting customized TeX Live package.

Type:package(read only)

Declared by:

<home-manager/modules/programs/texlive.nix>
programs.texlive.packageSet

TeX Live package set to use.

Type:unspecified value

Default:pkgs.texlive

Declared by:

<home-manager/modules/programs/texlive.nix>
programs.texlive.extraPackages

Extra packages available to TeX Live.

Type:unspecified value

Default:"tpkgs: { inherit (tpkgs) collection-basic; }"

Example:

tpkgs: { inherit (tpkgs) collection-fontsrecommended algorithms; }

Declared by:

<home-manager/modules/programs/texlive.nix>
programs.thunderbird.enable

Whether to enable Thunderbird.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.package

The thunderbird package to use.

Type:package

Default:pkgs.thunderbird

Example:pkgs.thunderbird-91

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.nativeMessagingHosts

Additional packages containing native messaging hosts that should bemade available to Thunderbird extensions.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles

Attribute set of Thunderbird profiles.

Type:attribute set of (submodule)

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.accountsOrder

Custom ordering of accounts and local folders inThunderbird’s folder pane. The accounts are specifiedby their name. For declarative accounts, it must be the nameof their attribute inconfig.accounts.email.accounts (orconfig.programs.thunderbird.profiles.<name>.feedAccountsfor feed accounts). The local folders name can be found inthemail.accountmanager.accounts Thunderbird preference,for example with Settings > Config Editor (“account1” bydefault). Enabled accounts and local folders that aren’tlisted here appear in an arbitrary order after the orderedaccounts.

Type:list of string

Default:[ ]

Example:

''  [    "my-awesome-account"    "private"    "work"    "rss"    /* Other accounts in arbitrary order */  ]''

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.calendarAccountsOrder

Custom ordering of calendar accounts. The accounts are specifiedby their name. For declarative accounts, it must be the nameof their attribute inconfig.accounts.calendar.accounts.Enabled accounts that aren’t listed here appear in an arbitraryorder after the ordered accounts.

Type:list of string

Default:[ ]

Example:

''  [    "my-awesome-account"    "private"    "work"    "holidays"    /* Other accounts in arbitrary order */  ]''

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.extensions

List of ‹name› add-on packages to install for this profile.

Note that it is necessary to manually enable extensionsinside ‹name› after the first installation.

To automatically enable extensions add"extensions.autoDisableScopes" = 0;toprograms.thunderbird.profiles.<profile>.settings

Type:list of package

Default:[ ]

Example:

[  pkgs.some-thunderbird-extension]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.extraConfig

Extra preferences to add touser.js.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.feedAccounts

Attribute set of feed accounts. Feeds themselves have to bemanaged through Thunderbird’s settings. This option allowsfeeds to coexist with declaratively managed email accounts.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.feedAccounts.<name>.name

This feed account’s name.

Type:string(read only)

Default:"‹name›"

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.isDefault

Whether this is a default profile. There must be exactly onedefault profile.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.name

This profile’s name.

Type:string(read only)

Default:"‹name›"

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search

Declarative search engine configuration.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search.default

The default search engine used in the address bar and searchbar.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search.engines

Attribute set of search engine configurations. Engines thatonly havemetaData specified will be treated as builtinto Thunderbird.

SeeSearchEngine.jsmin Thunderbird’s source for available options. We maintain amapping to let you specify all options in the referenced linkwithout underscores, but it may fall out of date with futureoptions.

Note,icon is also a special option added by HomeManager to make it convenient to specify absolute icon paths.

Type:attribute set of attribute set of (JSON value)

Default:{ }

Example:

{  nix-packages = {    name = "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 = {    name = "NixOS Wiki";    urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];    iconMapObj."16" = "https://wiki.nixos.org/favicon.ico";    definedAliases = [ "@nw" ];  };  bing.metaData.hidden = true;  google.metaData.alias = "@g"; # builtin engines only support specifying one additional alias}

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search.force

Whether to force replace the existing searchconfiguration. This is recommended since Thunderbird willreplace the symlink for the search configuration on everylaunch, but note that you’ll lose any existing configurationby enabling this.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search.meta.maintainers

List of maintainers of each module.This option should be defined at most once per module.

The option value is not a list of maintainers, but an attribute set that maps module file names to lists of maintainers.

Type:list of (maintainer)

Default:[ ]

Example:[ lib.maintainers.alice lib.maintainers.bob ]

Declared by:

/nix/store/9zf8254ag9jsh8kwx625iqy0pp5iph6g-source/modules/generic/meta-maintainers.nix
programs.thunderbird.profiles.<name>.search.order

The order the search engines are listed in. Any engines thataren’t included in this list will be listed after these in anunspecified order.

Type:list of string

Default:[ ]

Example:

[  "ddg"  "google"]

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.search.privateDefault

The default search engine used in the Private Browsing.

Type:null or string

Default:null

Example:"ddg"

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.settings

Preferences to add to this profile’suser.js.

Type:Thunderbird preference (int, bool, string, and also attrs, list, float as a JSON string)

Default:{ }

Example:

{  "mail.spellcheck.inline" = false;  "mailnews.database.global.views.global.columns" = {    selectCol = {      visible = false;      ordinal = 1;    };    threadCol = {      visible = true;      ordinal = 2;    };  };}

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.userChrome

Custom Thunderbird user chrome CSS.

Type:strings concatenated with “\n”

Default:""

Example:

''  /* Hide tab bar in Thunderbird */  #tabs-toolbar {    visibility: collapse !important;  }''

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.userContent

Custom Thunderbird user content CSS.

Type:strings concatenated with “\n”

Default:""

Example:

''  /* Hide scrollbar on Thunderbird pages */  *{scrollbar-width:none !important}''

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.profiles.<name>.withExternalGnupg

Allow using external GPG keys with GPGME.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.thunderbird.settings

Attribute set of Thunderbird preferences to be added toall profiles.

Type:Thunderbird preference (int, bool, string, and also attrs, list, float as a JSON string)

Default:{ }

Example:

{  "general.useragent.override" = "";  "privacy.donottrackheader.enabled" = true;}

Declared by:

<home-manager/modules/programs/thunderbird.nix>
programs.timidity.enable

Whether to enable timidity, a software MIDI renderer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/timidity.nix>
programs.timidity.package

The timidity package to use.

Type:package

Default:pkgs.timidity

Declared by:

<home-manager/modules/programs/timidity.nix>
programs.timidity.extraConfig

Extra configuration.

Type:strings concatenated with “\n”

Default:""

Example:

''  soundfont ${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2''

Declared by:

<home-manager/modules/programs/timidity.nix>
programs.timidity.finalPackage

Resulting package.

Type:package(read only)

Declared by:

<home-manager/modules/programs/timidity.nix>
programs.tint2.enable

Whether to enable tint2, a simple, unobtrusive and light panel for Xorg.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tint2.nix>
programs.tint2.package

The tint2 package to use.

Type:package

Default:pkgs.tint2

Declared by:

<home-manager/modules/programs/tint2.nix>
programs.tint2.extraConfig

Commands for tint2 that will be add to thetint2rcfile.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/tint2.nix>
programs.tiny.enable

Whether to enable tiny, a TUI IRC client written in Rust.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tiny.nix>
programs.tiny.package

The tiny package to use.

Type:package

Default:pkgs.tiny

Declared by:

<home-manager/modules/programs/tiny.nix>
programs.tiny.settings

Configuration written to$XDG_CONFIG_HOME/tiny/config.yml. Seehttps://github.com/osa1/tiny/blob/master/crates/tiny/config.ymlfor the default configuration.

Type:YAML 1.1 value

Default:{ }

Example:

{  servers = [    {      addr = "irc.libera.chat";      port = 6697;      tls = true;      realname = "John Doe";      nicks = [ "tinyuser" ];    }  ];  defaults = {    nicks = [ "tinyuser" ];    realname = "John Doe";    join = [];    tls = true;  };};

Declared by:

<home-manager/modules/programs/tiny.nix>
programs.tmate.enable

Whether to enable tmate.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.package

The tmate package to use.

Type:package

Default:pkgs.tmate

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.dsaFingerprint

Tmate server EdDSA key fingerprint.

Type:null or string

Default:null

Example:SHA256:1111111111111111111111111111111111111111111

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.extraConfig

Additional content written at the end of~/.tmate.conf.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.host

Tmate server address.

Type:null or string

Default:null

Example:tmate.io

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.port

Tmate server port.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Example:2222

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmate.rsaFingerprint

Tmate server RSA key fingerprint.

Type:null or string

Default:null

Example:SHA256:1111111111111111111111111111111111111111111

Declared by:

<home-manager/modules/programs/tmate.nix>
programs.tmux.enable

Whether to enable tmux.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.package

The tmux package to use.

Type:null or package

Default:pkgs.tmux

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.aggressiveResize

Resize the window to the size of the smallest session forwhich it is the current window.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.baseIndex

Base index for windows and panes.

Type:unsigned integer, meaning >=0

Default:0

Example:1

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.clock24

Use 24 hour clock.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.customPaneNavigationAndResize

Override the hjkl and HJKL bindings for pane navigation andresizing in VI mode.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.disableConfirmationPrompt

Disable confirmation prompt before killing a pane or window

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.escapeTime

Time in milliseconds for which tmux waits after an escape isinput.

Type:unsigned integer, meaning >=0

Default:500

Example:0

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.extraConfig

Additional configuration to add totmux.conf.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.focusEvents

On supported terminals, request focus events and pass them through toapplications running in tmux.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.historyLimit

Maximum number of lines held in window history.

Type:positive integer, meaning >0

Default:2000

Example:5000

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.keyMode

VI or Emacs style shortcuts.

Type:one of “emacs”, “vi”

Default:"emacs"

Example:"vi"

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.mouse

Whether to enable mouse support.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.newSession

Automatically spawn a session if trying to attach and noneare running.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.plugins

List of tmux plugins to be included at the end of your tmuxconfiguration. The sensible plugin, however, is defaulted torun at the top of your configuration.

Type:list of plugin packages or submodules

Default:[ ]

Example:

with pkgs; [  tmuxPlugins.cpu  {    plugin = tmuxPlugins.resurrect;    extraConfig = "set -g @resurrect-strategy-nvim 'session'";  }  {    plugin = tmuxPlugins.continuum;    extraConfig = ''      set -g @continuum-restore 'on'      set -g @continuum-save-interval '60' # minutes    '';  }]

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.prefix

Set the prefix key. Overrules the “shortcut” option when set.

Type:null or string

Default:null

Example:"C-a"

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.resizeAmount

Number of lines/columns when resizing.

Type:positive integer, meaning >0

Default:5

Example:10

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.reverseSplit

Reverse the window split shortcuts.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.secureSocket

Store tmux socket under/run, which is moresecure than/tmp, but as a downside it doesn’tsurvive user logout.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.sensibleOnTop

Run the sensible plugin at the top of the configuration. Itis possible to override the sensible settings using theprograms.tmux.extraConfig option.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.shell

Set the default-shell tmux variable.

Type:null or string

Default:null

Example:${pkgs.zsh}/bin/zsh

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.shortcut

CTRL following by this key is used as the main shortcut.

Type:string

Default:"b"

Example:"a"

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.terminal

Set the $TERM variable.

Type:string

Default:"screen"

Example:"screen-256color"

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.tmuxinator.enable

Whether to enable tmuxinator.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.tmux.tmuxp.enable

Whether to enable tmuxp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tmux.nix>
programs.todoman.enable

Whether to enable todoman.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/todoman.nix>
programs.todoman.package

The todoman package to use.

Type:null or package

Default:pkgs.todoman

Declared by:

<home-manager/modules/programs/todoman.nix>
programs.todoman.extraConfig

Text for configuration of todoman.The syntax is Python.

Seedocs.for the full list of options.

Type:strings concatenated with “\n”

Default:""

Example:

''  date_format = "%Y-%m-%d";  time_format = "%H:%M";  default_list = "Personal";  default_due = 48;''

Declared by:

<home-manager/modules/programs/todoman.nix>
programs.todoman.glob

The glob expansion which matches all directories relevant.

Type:string

Default:"*"

Example:"*/*"

Declared by:

<home-manager/modules/programs/todoman.nix>
programs.tofi.enable

Whether to enable Tofi, a tiny dynamic menu for Wayland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tofi.nix>
programs.tofi.package

The tofi package to use.

Type:null or package

Default:pkgs.tofi

Declared by:

<home-manager/modules/programs/tofi.nix>
programs.tofi.settings

Settings to be written to the Tofi configuration file.

Seehttps://github.com/philj56/tofi/blob/master/doc/configfor the full list of options.

Type:attribute set of (string or signed integer or boolean)

Default:{ }

Example:

{  background-color = "#000000";  border-width = 0;  font = "monospace";  height = "100%";  num-results = 5;  outline-width = 0;  padding-left = "35%";  padding-top = "35%";  result-spacing = 25;  width = "100%";}

Declared by:

<home-manager/modules/programs/tofi.nix>
programs.topgrade.enable

Whether to enable topgrade.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/topgrade.nix>
programs.topgrade.package

The topgrade package to use.

Type:package

Default:pkgs.topgrade

Declared by:

<home-manager/modules/programs/topgrade.nix>
programs.topgrade.settings

Configuration written to$XDG_CONFIG_HOME/topgrade.toml.

Seehttps://github.com/r-darwish/topgrade/wiki/Step-list for the full listof options.

Type:TOML value

Default:{ }

Example:

{  misc = {    assume_yes = true;    disable = [      "flutter"      "node"    ];    set_title = false;    cleanup = true;  };  commands = {    "Run garbage collection on Nix store" = "nix-collect-garbage";  };}

Declared by:

<home-manager/modules/programs/topgrade.nix>
programs.translate-shell.enable

Whether to enable translate-shell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/translate-shell.nix>
programs.translate-shell.package

The translate-shell package to use.

Type:null or package

Default:pkgs.translate-shell

Declared by:

<home-manager/modules/programs/translate-shell.nix>
programs.translate-shell.settings

Options to add to$XDG_CONFIG_HOME/translate-shell/init.trans file.Seehttps://github.com/soimort/translate-shell/wiki/Configurationfor options.

Type:attribute set of (boolean or string or list of string)

Default:{ }

Example:

{  hl = "en";  tl = [    "es"    "fr"  ];  verbose = true;}

Declared by:

<home-manager/modules/programs/translate-shell.nix>
programs.tray-tui.enable

Whether to enable tray-tui.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/tray-tui.nix>
programs.tray-tui.package

The tray-tui package to use.

Type:null or package

Default:pkgs.tray-tui

Declared by:

<home-manager/modules/programs/tray-tui.nix>
programs.tray-tui.settings

Configuration settings for tray-tui. All the available optionscan be found here:https://github.com/Levizor/tray-tui/blob/main/config_example.toml

Type:TOML value

Default:{ }

Example:

{  columns = 3;  key_map = {    down = "focus_down";    h = "focus_left";    j = "focus_up";    k = "focus_down";    l = "focus_right";    left = "focus_left";    right = "focus_right";    up = "focus_up";  };  sorting = false;}

Declared by:

<home-manager/modules/programs/tray-tui.nix>
programs.trippy.enable

Whether to enable trippy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/trippy.nix>
programs.trippy.package

The trippy package to use.

Type:null or package

Default:pkgs.trippy

Declared by:

<home-manager/modules/programs/trippy.nix>
programs.trippy.forceUserConfig

Whatever to force trippy to use user’s config through the -c flag.This will prevent certain commands such as ‘sudo’ ignoringthe configured settings. This will only work if you have‘programs.<shell>.enable’ (bash, zsh, fish, …), dependingon your shell.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/trippy.nix>
programs.trippy.settings

Configuration settings for trippy. All the available options can be foundhere:https://trippy.rs/reference/configuration/

Type:TOML value

Default:{ }

Example:

{  bindings = {    toggle-help = "h";    toggle-help-alt = "?";    toggle-settings = "s";    toggle-settings-dns = "3";    toggle-settings-geoip = "4";    toggle-settings-trace = "2";    toggle-settings-tui = "1";  };  theme-colors = {    bg-color = "black";    border-color = "gray";    tab-text-color = "green";    text-color = "gray";  };}

Declared by:

<home-manager/modules/programs/trippy.nix>
programs.twitch-tui.enable

Whether to enable twitch-tui.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/twitch-tui.nix>
programs.twitch-tui.package

The twitch-tui package to use.

Type:null or package

Default:pkgs.twitch-tui

Declared by:

<home-manager/modules/programs/twitch-tui.nix>
programs.twitch-tui.settings

Configuration settings for twitch-tui. All the available optionscan be found here:https://github.com/Xithrius/twitch-tui/blob/main/default-config.toml

Type:TOML value

Default:{ }

Example:

{  terminal = {    delay = 30;    first_state = "dashboard";    log_file = "";    log_level = "info";    maximum_messages = 500;  };  twitch = {    channel = "";    server = "wss://eventsub.wss.twitch.tv/ws";    token = "";    username = "";  };}

Declared by:

<home-manager/modules/programs/twitch-tui.nix>
programs.urxvt.enable

Whether to enable rxvt-unicode terminal emulator.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.package

The rxvt-unicode package to use.

Type:package

Default:pkgs.rxvt-unicode

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.extraConfig

Additional configuration to add.

Type:attribute set of anything

Default:{ }

Example:

{  shading = 15;}

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.fonts

List of fonts to be used.

Type:list of string

Default:[ ]

Example:

[  "xft:Droid Sans Mono Nerd Font:size=9"]

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.iso14755

ISO14755 support for viewing and entering unicode characters.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.keybindings

Mapping of keybindings to actions

Type:attribute set of string

Default:{ }

Example:

{  "Shift-Control-C" = "eval:selection_to_clipboard";  "Shift-Control-V" = "eval:paste_clipboard";}

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar

Scrollbar settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar.enable

Whether to enable the scrollbar

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar.align

Scrollbar alignment.

Type:one of “top”, “bottom”, “center”

Default:"center"

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar.floating

Whether to display an rxvt scrollbar without a trough.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar.position

Scrollbar position.

Type:one of “left”, “right”

Default:"right"

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.bar.style

Scrollbar style.

Type:one of “rxvt”, “plain”, “next”, “xterm”

Default:"plain"

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.keepPosition

Whether to keep a scroll position when TTY receives new lines.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.lines

Number of lines to save in the scrollback buffer.

Type:unsigned integer, meaning >=0

Default:10000

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.scrollOnKeystroke

Whether to scroll to bottom on keyboard input.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.scroll.scrollOnOutput

Whether to scroll to bottom on TTY output.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.shading

Darken (0 to 99) or lighten (101 to 200) the transparent background.

Type:integer between 0 and 200 (both inclusive)

Default:100

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.urxvt.transparent

Whether to enable pseudo-transparency.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/urxvt.nix>
programs.uv.enable

Whether to enable uv.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/uv.nix>
programs.uv.package

The uv package to use.

Type:null or package

Default:pkgs.uv

Declared by:

<home-manager/modules/programs/uv.nix>
programs.uv.settings

Configuration written to$XDG_CONFIG_HOME/uv/uv.toml.Seehttps://docs.astral.sh/uv/configuration/files/andhttps://docs.astral.sh/uv/reference/settings/for more information.

Type:TOML value

Default:{ }

Example:

{  python-downloads = "never";  python-preference = "only-system";  pip.index-url = "https://test.pypi.org/simple";}

Declared by:

<home-manager/modules/programs/uv.nix>
programs.vdirsyncer.enable

Whether to enable vdirsyncer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vdirsyncer>
programs.vdirsyncer.package

The vdirsyncer package to use.

Type:package

Default:pkgs.vdirsyncer

Declared by:

<home-manager/modules/programs/vdirsyncer>
programs.vdirsyncer.statusPath

A directory where vdirsyncer will store some additional data for the next sync.

For more information, see thevdirsyncer manual.

Type:string

Default:"$XDG_DATA_HOME/vdirsyncer/status"

Declared by:

<home-manager/modules/programs/vdirsyncer>
programs.vesktop.enable

Whether to enable Vesktop, an alternate client for Discord with Vencord built-in.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vesktop.package

The vesktop package to use.

Type:package

Default:pkgs.vesktop

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vesktop.settings

Vesktop settings written to$XDG_CONFIG_HOME/vesktop/settings.json. Seehttps://github.com/Vencord/Vesktop/blob/main/src/shared/settings.d.tsfor available options.

Type:JSON value

Default:{ }

Example:

{  appBadge = false;  arRPC = true;  checkUpdates = false;  customTitleBar = false;  disableMinSize = true;  minimizeToTray = false;  tray = false;  splashBackground = "#000000";  splashColor = "#ffffff";  splashTheming = true;  staticTitle = true;  hardwareAcceleration = true;  discordBranch = "stable";}

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vesktop.vencord.settings

Vencord settings written to$XDG_CONFIG_HOME/vesktop/settings/settings.json. Seehttps://github.com/Vendicated/Vencord/blob/main/src/api/Settings.tsfor available options.

Type:JSON value

Default:{ }

Example:

{  autoUpdate = false;  autoUpdateNotification = false;  notifyAboutUpdates = false;  useQuickCss = true;  disableMinSize = true;  plugins = {    MessageLogger = {      enabled = true;      ignoreSelf = true;    };    FakeNitro.enabled = true;  };}

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vesktop.vencord.themes

Themes to add for Vencord, they can be enabled by settingprograms.vesktop.vencord.settings.enabledThemes to[ "THEME_NAME.css" ]

Type:attribute set of (strings concatenated with “\n” or absolute path)

Default:{ }

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vesktop.vencord.useSystem

Whether to enable Vencord package from Nixpkgs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vesktop.nix>
programs.vicinae.enable

Whether to enable vicinae launcher daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.package

The vicinae package to use.

Type:null or package

Default:pkgs.vicinae

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.extensions

List of Vicinae extensions to install.

You can use theconfig.lib.vicinae.mkExtension andconfig.lib.vicinae.mkRayCastExtension functions to create them, like:

 [  (config.lib.vicinae.mkExtension {    name = "test-extension";    src =      pkgs.fetchFromGitHub {        owner = "schromp";        repo = "vicinae-extensions";        rev = "f8be5c89393a336f773d679d22faf82d59631991";        sha256 = "sha256-zk7WIJ19ITzRFnqGSMtX35SgPGq0Z+M+f7hJRbyQugw=";      }      + "/test-extension";  })  (config.lib.vicinae.mkRayCastExtension {    name = "gif-search";    sha256 = "sha256-G7il8T1L+P/2mXWJsb68n4BCbVKcrrtK8GnBNxzt73Q=";    rev = "4d417c2dfd86a5b2bea202d4a7b48d8eb3dbaeb1";  }) ],

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.settings

Settings written as JSON to `~/.config/vicinae/vicinae.json.

Type:JSON value

Default:{ }

Example:

{  faviconService = "twenty";  font = {    size = 10;  };  popToRootOnClose = false;  rootSearch = {    searchFiles = false;  };  theme = {    name = "vicinae-dark";  };  window = {   csd = true;   opacity = 0.95;   rounding = 10;  };}

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.systemd.enable

Whether to enable vicinae systemd integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.systemd.autoStart

If the vicinae daemon should be started automatically

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.systemd.target

The systemd target that will automatically start the vicinae service.

Type:string

Default:"graphical-session.target"

Example:"sway-session.target"

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.themes

Theme settings to add to the themes folder in~/.config/vicinae/themes.

The attribute name of the theme will be the name of theme json file,e.g.base16-default-dark will bebase16-default-dark.json.

Type:JSON value

Default:{ }

Example:

{  base16-default-dark = {    version = "1.0.0";    appearance = "dark";    icon = /path/to/icon.png;    name = "base16 default dark";    description = "base16 default dark by Chris Kempson";    palette = {      background = "#181818";      foreground = "#d8d8d8";      blue = "#7cafc2";      green = "#a3be8c";      magenta = "#ba8baf";      orange = "#dc9656";      purple = "#a16946";      red = "#ab4642";      yellow = "#f7ca88";      cyan = "#86c1b9";    };  };}

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vicinae.useLayerShell

If vicinae should use the layer shell

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/vicinae.nix>
programs.vifm.enable

Whether to enable vifm, a Vim-like file manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vifm.nix>
programs.vifm.package

The vifm package to use.

Type:null or package

Default:pkgs.vifm

Declared by:

<home-manager/modules/programs/vifm.nix>
programs.vifm.extraConfig

Extra lines added to the$XDG_CONFIG_HOME/vifm/vifmrc file.

Type:strings concatenated with “\n”

Default:""

Example:"mark h ~/"

Declared by:

<home-manager/modules/programs/vifm.nix>
programs.vim.enable

Whether to enable Vim.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.package

Resulting customized vim package

Type:package(read only)

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.packageConfigurable

The vim-full package to use. Vim package to customize

Type:package

Default:pkgs.vim-full

Example:pkgs.vim

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.defaultEditor

Whether to configurevim as the defaulteditor using theEDITOR environment variable.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.extraConfig

Custom .vimrc lines

Type:strings concatenated with “\n”

Default:""

Example:

''  set nocompatible  set nobackup''

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.plugins

List of vim plugins to install. To get a list of supported plugins run:nix-env -f '<nixpkgs>' -qaP -A vimPlugins.

Note: String values are deprecated, please use actual packages.

Type:list of (string or package)

Default:

[  <derivation vimplugin-vim-sensible-2024-06-08>]

Example:[ pkgs.vimPlugins.YankRing ]

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim.settings

At attribute set of Vim settings. The attribute names andcorresponding values must be among the following supportedoptions.

background

one of “dark”, “light”

backupdir

list of string

copyindent

boolean

directory

list of string

expandtab

boolean

hidden

boolean

history

signed integer

ignorecase

boolean

modeline

boolean

mouse

one of “n”, “v”, “i”, “c”, “h”, “a”, “r”

mousefocus

boolean

mousehide

boolean

mousemodel

one of “extend”, “popup”, “popup_setpos”

number

boolean

relativenumber

boolean

shiftwidth

signed integer

smartcase

boolean

tabstop

signed integer

undodir

list of string

undofile

boolean

See the Vim documentation for detailed descriptions of theseoptions. Useprograms.vim.extraConfig to manuallyset any options not listed above.

Type:submodule

Default:{ }

Example:

{  expandtab = true;  history = 1000;  background = "dark";}

Declared by:

<home-manager/modules/programs/vim.nix>
programs.vim-vint.enable

Whether to enable the Vint linter for Vimscript.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vim-vint.nix>
programs.vim-vint.package

The vim-vint package to use.

Type:null or package

Default:pkgs.vim-vint

Declared by:

<home-manager/modules/programs/vim-vint.nix>
programs.vim-vint.settings

Configuration written to$XDG_CONFIG_HOME/.vintrc.yaml

Type:YAML 1.1 value

Default:{ }

Declared by:

<home-manager/modules/programs/vim-vint.nix>
programs.vinegar.enable

Whether to enable Vinegar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vinegar.nix>
programs.vinegar.package

The vinegar package to use.

Type:null or package

Default:pkgs.vinegar

Declared by:

<home-manager/modules/programs/vinegar.nix>
programs.vinegar.settings

Configuration written to$XDG_CONFIG_HOME/vinegar/config.toml.

Seehttps://vinegarhq.org/Configuration/ for more information.

Type:attribute set of (TOML value)

Default:{ }

Example:

{  env = {    WINEFSYNC = "1";  };  studio = {    dxvk = false;    env = {      DXVK_HUD = "0";      MANGOHUD = "1";    };    fflags = {      DFIntTaskSchedulerTargetFps = 144;    };    renderer = "Vulkan";  };}

Declared by:

<home-manager/modules/programs/vinegar.nix>
programs.visidata.enable

Whether to enable Visidata.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/visidata.nix>
programs.visidata.package

The visidata package to use.

Type:null or package

Default:pkgs.visidata

Declared by:

<home-manager/modules/programs/visidata.nix>
programs.visidata.visidatarc

Configuration settings and Python function declarationsto be written to ~/.visidatarc. All available optionscan be found here:https://www.visidata.org/docs/.

Type:strings concatenated with “\n”

Default:""

Example:

''  options.min_memory_mb=100  # stop processing without 100MB free    bindkey('0', 'go-leftmost')   # alias '0' to go to first column, like vim    def median(values):      L = sorted(values)      return L[len(L)//2]    vd.aggregator('median', median)''

Declared by:

<home-manager/modules/programs/visidata.nix>
programs.vivaldi.nativeMessagingHosts

List of Vivaldi Browser native messaging hosts to install.

Type:list of package

Default:[ ]

Example:

[  pkgs.kdePackages.plasma-browser-integration]

Declared by:

<home-manager/modules/programs/chromium.nix>
programs.vivid.enable

Whether to enable vivid.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.package

The vivid package to use.

Type:null or package

Default:pkgs.vivid

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.activeTheme

Active theme for vivid.

Type:null or string

Default:null

Example:"molokai"

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.colorMode

Color mode for vivid.

Type:null or string

Default:null

Example:"8-bit"

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.filetypes

Filetype database for vivid. You can find an example config at:https://github.com/sharkdp/vivid/blob/master/config/filetypes.yml.

Type:YAML 1.1 value

Default:{ }

Example:

{  text = {    licenses = [      "LICENCE"      "COPYRIGHT"    ];    special = [      "CHANGELOG.md"      "CODE_OF_CONDUCT.md"      "CONTRIBUTING.md"    ];    todo = [      "TODO.md"      "TODO.txt"    ];  };}

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vivid.themes

An attribute set of vivid themes.Each value can either be a path to a theme file or an attribute setdefining the theme directly (which will be converted from Nix to YAML).

Type:attribute set of (absolute path or YAML 1.1 value)

Default:{ }

Example:

{  ayu = builtins.fetchurl {    url = "https://raw.githubusercontent.com/NearlyTRex/Vivid/refs/heads/master/themes/ayu.yml";    hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";  };  mocha = builtins.fetchurl {    url = "https://raw.githubusercontent.com/NearlyTRex/Vivid/refs/heads/master/themes/catppuccin-mocha.yml";    hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";  };  my-custom-theme = {    colors = {      blue = "0000ff";    };    core = {      directory = {        foreground = "blue";        font-style = "bold";      };    };  };}

Declared by:

<home-manager/modules/programs/vivid.nix>
programs.vscode.enable

Whether to enable Visual Studio Code.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.package

The vscode package to use. Version of Visual Studio Code to install.

Type:package

Default:pkgs.vscode

Example:pkgs.vscodium

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.dataFolderName

Override for extensions directory.

This should match thedataFolderName field in the package’s product.json. Ifnull, then searches common locations for a product.json and uses the value from there.

Type:string

Default:"(derived from product.json)"

Example:".cool-vscode"

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.haskell.enable

Whether to enable Haskell integration for Visual Studio Code.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vscode/haskell.nix>
programs.vscode.haskell.hie.enable

Whether to enable Haskell IDE engine integration.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/vscode/haskell.nix>
programs.vscode.haskell.hie.executablePath

The path to the Haskell IDE Engine executable.

Because hie-nix is not packaged in Nixpkgs, you need to add it as anoverlay or set this option. Example overlay configuration:

nixpkgs.overlays = [  (self: super: { hie-nix = import ~/src/hie-nix {}; })]

Type:absolute path

Default:"${pkgs.hie-nix.hies}/bin/hie-wrapper"

Example:

(import ~/src/haskell-ide-engine {}).hies + "/bin/hie-wrapper";

Declared by:

<home-manager/modules/programs/vscode/haskell.nix>
programs.vscode.mutableExtensionsDir

Whether extensions can be installed or updated manuallyor by Visual Studio Code. Mutually exclusive toprograms.vscode.profiles.

Type:boolean

Default:(removeAttrs config.programs.vscode.profiles [ "default" ]) == { }

Example:false

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.nameShort

Override for package “short name”, used for generating configuration.

This should match theshortName field in the package’s product.json. Ifnull, then searches common locations for a product.json and uses the value from there.

Type:string

Default:"(derived from product.json)"

Example:"MyCoolVSCodeFork"

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles

A list of all VSCode profiles. Mutually exclusiveto programs.vscode.mutableExtensionsDir

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.enableExtensionUpdateCheck

Whether to enable update notifications for extensions.Can only be set for the default profile, butit applies to all profiles.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.enableMcpIntegration

Whether to integrate the MCP servers config fromprograms.mcp.servers intoprograms.vscode.profiles.<name>.userMcp.

Note: Settings defined inprograms.mcp.servers are mergedwithprograms.vscode.profiles.<name>.userMcp, with VSCodesettings taking precedence.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.enableUpdateCheck

Whether to enable update checks/notifications.Can only be set for the default profile, butit applies to all profiles.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.extensions

The extensions Visual Studio Code should be started with.

Type:list of package

Default:[ ]

Example:[ pkgs.vscode-extensions.bbenoist.nix ]

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.globalSnippets

Defines global user snippets.

Type:JSON value

Default:{ }

Example:

{  fixme = {    body = [      "$LINE_COMMENT FIXME: $0"    ];    description = "Insert a FIXME remark";    prefix = [      "fixme"    ];  };}

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.keybindings

Keybindings written to Visual Studio Code’skeybindings.json.This can be a JSON object or a path to a custom JSON file.

Type:absolute path or list of (submodule)

Default:[ ]

Example:

[  {    key = "ctrl+c";    command = "editor.action.clipboardCopyAction";    when = "textInputFocus";  }]

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.languageSnippets

Defines user snippets for different languages.

Type:JSON value

Default:{ }

Example:

{  haskell = {    fixme = {      body = [        "$LINE_COMMENT FIXME: $0"      ];      description = "Insert a FIXME remark";      prefix = [        "fixme"      ];    };  };}

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.userMcp

Configuration written to Visual Studio Code’smcp.json.This can be a JSON object or a path to a custom JSON file.

Type:absolute path or JSON value

Default:{ }

Example:

{  "servers": {    "Github": {      "url": "https://api.githubcopilot.com/mcp/"    }  }}

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.userSettings

Configuration written to Visual Studio Code’ssettings.json.This can be a JSON object or a path to a custom JSON file.

Type:absolute path or JSON value

Default:{ }

Example:

{  "files.autoSave" = "off";  "[nix]"."editor.tabSize" = 2;}

Declared by:

<home-manager/modules/programs/vscode>
programs.vscode.profiles.<name>.userTasks

Configuration written to Visual Studio Code’stasks.json.This can be a JSON object or a path to a custom JSON file.

Type:absolute path or JSON value

Default:{ }

Example:

{  version = "2.0.0";  tasks = [    {      type = "shell";      label = "Hello task";      command = "hello";    }  ];}

Declared by:

<home-manager/modules/programs/vscode>
programs.wallust.enable

Whether to enable Wallust color scheme generator.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wallust.nix>
programs.wallust.package

The wallust package to use.

Type:null or package

Default:pkgs.wallust

Declared by:

<home-manager/modules/programs/wallust.nix>
programs.wallust.settings

Configuration written to$XDG_CONFIG_HOME/wallust/wallust.toml.Seehttps://explosion-mental.codeberg.page/wallust/config/ fordocumentation.

Type:TOML value

Default:{ }

Example:

{  palette = "softdark";}

Declared by:

<home-manager/modules/programs/wallust.nix>
programs.watson.enable

Whether to enable watson, a wonderful CLI to track your time.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/watson.nix>
programs.watson.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/watson.nix>
programs.watson.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/watson.nix>
programs.watson.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/watson.nix>
programs.watson.package

The watson package to use.

Type:package

Default:pkgs.watson

Declared by:

<home-manager/modules/programs/watson.nix>
programs.watson.settings

Configuration written to$XDG_CONFIG_HOME/watson/config on Linux or$HOME/Library/Application Support/watson/config on Darwin.

Seehttps://github.com/TailorDev/Watson/blob/master/docs/user-guide/configuration.mdfor an example configuration.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  backend = {    url = "https://api.crick.fr";    token = "yourapitoken";  };  options = {    stop_on_start = true;    stop_on_restart = false;    date_format = "%Y.%m.%d";    time_format = "%H:%M:%S%z";    week_start = "monday";    log_current = false;    pager = true;    report_current = false;    reverse_log = true;  };}

Declared by:

<home-manager/modules/programs/watson.nix>
programs.waveterm.enable

Whether to enable waveterm.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waveterm.nix>
programs.waveterm.package

The waveterm package to use.

Type:null or package

Default:pkgs.waveterm

Declared by:

<home-manager/modules/programs/waveterm.nix>
programs.waveterm.bookmarks

Bookmark definitions for WaveTerm. Details about the format and the optionscan be found here:https://docs.waveterm.dev/config#webbookmarks-configuration.

Type:JSON value

Default:{ }

Example:

{  "bookmark@claude" = {    title = "Claude";    url = "https://claude.ai";  };  "bookmark@github" = {    title = "GitHub";    url = "https://github.com";  };  "bookmark@google" = {    title = "Google";    url = "https://www.google.com";  };}

Declared by:

<home-manager/modules/programs/waveterm.nix>
programs.waveterm.settings

Configuration settings for WaveTerm. All available options can befound here:https://docs.waveterm.dev/config#configuration-keys.

Type:JSON value

Default:{ }

Example:

{  "app:dismissarchitecturewarning" = false;  "autoupdate:enabled" = false;  "term:fontfamily" = "JuliaMono";  "term:fontsize" = 12.0;  "term:theme" = "my-custom-theme";  "term:transparency" = 0.5;  "window:bgcolor" = "#000000";  "window:blur" = true;  "window:opacity" = 0.5;  "window:reducedmotion" = true;  "window:showhelp" = false;}

Declared by:

<home-manager/modules/programs/waveterm.nix>
programs.waveterm.themes

User defined terminal themes. All the details about available options andformat can be found here:https://docs.waveterm.dev/config#terminal-theming.

Type:JSON value

Default:{ }

Example:

{  default-dark = {    background = "#00000077";    black = "#757575";    blue = "#85aacb";    brightBlack = "#727272";    brightBlue = "#9ab6cb";    brightCyan = "#b7b8cb";    brightGreen = "#a3dd97";    brightMagenta = "#cc8ecb";    brightRed = "#cc9d97";    brightWhite = "#f0f0f0";    brightYellow = "#cbcaaa";    cmdtext = "#f0f0f0";    cursorAccent = "";    cyan = "#74a7cb";    "display:name" = "Default Dark";    "display:order" = 1;    foreground = "#c1c1c1";    gray = "#8b918a";    green = "#76c266";    magenta = "#cc72ca";    red = "#cc685c";    selectionBackground = "";    white = "#c1c1c1";    yellow = "#cbca9b";  };}

Declared by:

<home-manager/modules/programs/waveterm.nix>
programs.waybar.enable

Whether to enable Waybar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.package

Waybar package to use. Set tonull to use the default package.

Type:package

Default:pkgs.waybar

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.settings

Configuration for Waybar, seehttps://github.com/Alexays/Waybar/wiki/Configurationfor supported values.

Type:(list of (open submodule of (JSON value))) or attribute set of (open submodule of (JSON value))

Default:[ ]

Example:

{  mainBar = {    layer = "top";    position = "top";    height = 30;    output = [      "eDP-1"      "HDMI-A-1"    ];    modules-left = [ "sway/workspaces" "sway/mode" "wlr/taskbar" ];    modules-center = [ "sway/window" "custom/hello-from-waybar" ];    modules-right = [ "mpd" "custom/mymodule#with-css-id" "temperature" ];    "sway/workspaces" = {      disable-scroll = true;      all-outputs = true;    };    "custom/hello-from-waybar" = {      format = "hello {}";      max-length = 40;      interval = "once";      exec = pkgs.writeShellScript "hello-from-waybar" ''        echo "from within waybar"      '';    };  };}

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.style

CSS style of the bar.

Seehttps://github.com/Alexays/Waybar/wiki/Configurationfor the documentation.

If the value is set to a path literal, then the path will be used as the css file.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  * {    border: none;    border-radius: 0;    font-family: Source Code Pro;  }  window#waybar {    background: #16191C;    color: #AAB2BF;  }  #workspaces button {    padding: 0 5px;  }''

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.systemd.enable

Whether to enable Waybar systemd integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.systemd.enableDebug

Whether to enable debug logging.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.systemd.enableInspect

Inspect objects and find their CSS classes, experiment with live CSS styles, and lookup the current value of CSS properties.

Seehttps://developer.gnome.org/documentation/tools/inspector.html

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waybar.systemd.target

The systemd target that will automatically start the Waybar service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:config.wayland.systemd.target

Example:"sway-session.target"

Declared by:

<home-manager/modules/programs/waybar.nix>
programs.waylogout.enable

Whether or not to enable waylogout.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/waylogout.nix>
programs.waylogout.package

The waylogout package to use.

Type:null or package

Default:pkgs.waylogout

Declared by:

<home-manager/modules/programs/waylogout.nix>
programs.waylogout.settings

Default arguments towaylogout. An empty setdisables configuration generation.

Type:attribute set of (boolean or floating point number or signed integer or absolute path or string)

Default:{ }

Example:

{  color = "808080";  effect-blur = "7x4";  poweroff-command = "systemctl poweroff";  reboot-command = "systemctl reboot";  scaling = "fit";  screenshots = true;}

Declared by:

<home-manager/modules/programs/waylogout.nix>
programs.wayprompt.enable

Whether to enable Wayprompt, a password-prompter for Wayland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wayprompt.nix>
programs.wayprompt.package

The wayprompt package to use.

Type:null or package

Default:pkgs.wayprompt

Declared by:

<home-manager/modules/programs/wayprompt.nix>
programs.wayprompt.settings

Configuration for wayprompt written to$XDG_CONFIG_HOME/wayprompt/config.ini.Seewayprompt(5) for a list of available options.Note that colours can be either 6-hex-digit RGB or 8-hex-digit RGBA values.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  general = {    font-regular = "sans:size=14";    pin-square-amount = 32;  };  colours = {    background = "ffffffaa";  };}

Declared by:

<home-manager/modules/programs/wayprompt.nix>
programs.wezterm.enable

Whether to enable wezterm.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wezterm.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wezterm.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wezterm.package

The wezterm package to use.

Type:package

Default:pkgs.wezterm

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wezterm.colorSchemes

Attribute set of additional color schemes to be written to$XDG_CONFIG_HOME/wezterm/colors, where each key istaken as the name of the corresponding color scheme. Seehttps://wezfurlong.org/wezterm/config/appearance.html#defining-a-color-scheme-in-a-separate-filefor more details of the TOML color scheme format.

Type:attribute set of (TOML value)

Default:{ }

Example:

myCoolTheme = {  ansi = [    "#222222" "#D14949" "#48874F" "#AFA75A"    "#599797" "#8F6089" "#5C9FA8" "#8C8C8C"  ];  brights = [    "#444444" "#FF6D6D" "#89FF95" "#FFF484"    "#97DDFF" "#FDAAF2" "#85F5DA" "#E9E9E9"  ];  background = "#1B1B1B";  cursor_bg = "#BEAF8A";  cursor_border = "#BEAF8A";  cursor_fg = "#1B1B1B";  foreground = "#BEAF8A";  selection_bg = "#444444";  selection_fg = "#E9E9E9";};

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wezterm.extraConfig

Extra configuration written to$XDG_CONFIG_HOME/wezterm/wezterm.lua. Seehttps://wezfurlong.org/wezterm/config/files.htmlhow to configure.

Type:strings concatenated with “\n”

Default:""

Example:

-- Your lua code / config herelocal mylib = require 'mylib';return {  usemylib = mylib.do_fun();  font = wezterm.font("JetBrains Mono"),  font_size = 16.0,  color_scheme = "Tomorrow Night",  hide_tab_bar_if_only_one_tab = true,  default_prog = { "zsh", "--login", "-c", "tmux attach -t dev || tmux new -s dev" },  keys = {    {key="n", mods="SHIFT|CTRL", action="ToggleFullScreen"},  }}

Declared by:

<home-manager/modules/programs/wezterm.nix>
programs.wleave.enable

Whether to enable wleave.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wleave.nix>
programs.wleave.package

The wleave package to use.

Type:null or package

Default:pkgs.wleave

Declared by:

<home-manager/modules/programs/wleave.nix>
programs.wleave.settings

Configuration for wleave.Seehttps://github.com/AMNatty/wleave#configuration for supported values.

Type:JSON value

Default:{ }

Example:

{  margin = 200;  buttons-per-row = "1/1";  delay-command-ms = 100;  close-on-lost-focus = true;  show-keybinds = true;  buttons = [    {      label = "lock";      action = "swaylock";      text = "Lock";      keybind = "l";      icon = "${pkgs.wleave}/share/wleave/icons/lock.svg";    }    {      label = "logout";      action = "loginctl terminate-user $USER";      text = "Logout";      keybind = "e";      icon = "${pkgs.wleave}/share/wleave/icons/logout.svg";    }    {      label = "shutdown";      action = "systemctl poweroff";      text = "Shutdown";      keybind = "s";      icon = "${pkgs.wleave}/share/wleave/icons/shutdown.svg";    }  ];}

Declared by:

<home-manager/modules/programs/wleave.nix>
programs.wleave.style

CSS style of wleave.

Seehttps://github.com/AMNatty/wleave#stylingfor the documentation.

If the value is set to a path literal, then the path will be used as the css file.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  window {    background-color: rgba(12, 12, 12, 0.8);  }    button {    color: var(--view-fg-color);    background-color: var(--view-bg-color);    border: none;    padding: 10px;  }    button:hover,  button:focus {    color: var(--accent-color);    background-color: var(--window-bg-color);  }''

Declared by:

<home-manager/modules/programs/wleave.nix>
programs.wlogout.enable

Whether to enable wlogout.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.package

The wlogout package to use.

Type:null or package

Default:pkgs.wlogout

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout

Layout configuration for wlogout, seehttps://github.com/ArtsyMacaw/wlogout#configfor supported values.

Type:list of (open submodule of (JSON value))

Default:[ ]

Example:

[  {    label = "shutdown";    action = "systemctl poweroff";    text = "Shutdown";    keybind = "s";  }]

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.action

Command to execute when clicked.

Type:absolute path or string

Default:""

Example:"systemctl poweroff"

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.circular

Make button circular.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.height

Relative height of tile.

Type:null or integer or floating point number between 0 and 1 (both inclusive)

Default:null

Example:0.5

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.keybind

Keyboard character to trigger this action.

Type:string

Default:""

Example:"s"

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.label

CSS label of button.

Type:string

Default:""

Example:"shutdown"

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.text

Text displayed on button.

Type:string

Default:""

Example:"Shutdown"

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.layout.*.width

Relative width of tile.

Type:null or integer or floating point number between 0 and 1 (both inclusive)

Default:null

Example:0.5

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wlogout.style

CSS style of the bar.

Seehttps://github.com/ArtsyMacaw/wlogout#stylefor the documentation.

If the value is set to a path literal, then the path will be used as the css file.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  window {    background: #16191C;  }    button {    color: #AAB2BF;  }''

Declared by:

<home-manager/modules/programs/wlogout.nix>
programs.wofi.enable

Whether to enable wofi: a launcher/menu program for wlroots based wayland compositors such as sway.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/wofi.nix>
programs.wofi.package

The wofi package to use.

Type:null or package

Default:pkgs.wofi

Declared by:

<home-manager/modules/programs/wofi.nix>
programs.wofi.settings

Configuration options for wofi. Seewofi(5).

Type:attribute set

Default:{ }

Example:

{  location = "bottom-right";  allow_markup = true;  width = 250;}

Declared by:

<home-manager/modules/programs/wofi.nix>
programs.wofi.style

CSS style for wofi to use as a stylesheet. Seewofi(7)

Type:null or strings concatenated with “\n” or absolute path

Default:null

Example:

''  * {      font-family: monospace;  }    window {      background-color: #7c818c;  }''

Declared by:

<home-manager/modules/programs/wofi.nix>
programs.xmobar.enable

Whether to enable Xmobar, a minimalistic status bar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/xmobar.nix>
programs.xmobar.package

The xmobar package to use.

Type:package

Default:pkgs.haskellPackages.xmobar

Declared by:

<home-manager/modules/programs/xmobar.nix>
programs.xmobar.extraConfig

Extra configuration lines to add to$XDG_CONFIG_HOME/xmobar/.xmobarrc.Seehttps://xmobar.org/#configurationfor options.

Type:strings concatenated with “\n”

Default:""

Example:

Config  { font        = "Fira Code"  , borderColor = "#d0d0d0"  , border      = FullB  , borderWidth = 3  , bgColor     = "#222"  , fgColor     = "grey"  , position    = TopSize C 99 30  , commands    =      [ Run Cpu ["-t", "cpu: <fc=#4eb4fa><bar> <total>%</fc>"] 10      , Run Network "enp3s0" ["-S", "True", "-t", "eth: <fc=#4eb4fa><rx></fc>/<fc=#4eb4fa><tx></fc>"] 10      , Run Memory ["-t","mem: <fc=#4eb4fa><usedbar> <usedratio>%</fc>"] 10      , Run Date "date: <fc=#4eb4fa>%a %d %b %Y %H:%M:%S </fc>" "date" 10      , Run StdinReader      ]  , sepChar     = "%"  , alignSep    = "}{"  , template    = "  %StdinReader% | %cpu% | %memory% | %enp3s0%  }{%date%  "  }

Declared by:

<home-manager/modules/programs/xmobar.nix>
programs.xplr.enable

Whether to enable xplr, terminal UI based file explorer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/xplr.nix>
programs.xplr.package

The xplr package to use.

Type:null or package

Default:pkgs.xplr

Declared by:

<home-manager/modules/programs/xplr.nix>
programs.xplr.extraConfig

Extra xplr configuration.

Type:strings concatenated with “\n”

Default:""

Example:

require("wl-clipboard").setup {  copy_command = "wl-copy -t text/uri-list",  paste_command = "wl-paste",  keep_selection = true,}

Declared by:

<home-manager/modules/programs/xplr.nix>
programs.xplr.plugins

An attribute set of plugin paths to be added to the [package.path]https://www.lua.org/manual/5.4/manual.html#pdf-package.path of the~/config/xplr/init.lua configuration file.

Must be a package or string representing the plugin directory’s path.If the path string is not absolute, it will be relative to$XDG_CONFIG_HOME/xplr/init.lua.

Type:null or (attribute set of (package or string))

Default:{ }

Example:

{  wl-clipboard = fetchFromGitHub {    owner = "sayanarijit";    repo = "wl-clipboard.xplr";    rev = "a3ffc87460c5c7f560bffea689487ae14b36d9c3";    hash = "sha256-I4rh5Zks9hiXozBiPDuRdHwW5I7ppzEpQNtirY0Lcks=";  }  local-plugin = "/home/user/.config/plugins/local-plugin";};

Declared by:

<home-manager/modules/programs/xplr.nix>
programs.yambar.enable

Whether to enable Yambar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yambar.nix>
programs.yambar.package

The yambar package to use.

Type:null or package

Default:pkgs.yambar

Declared by:

<home-manager/modules/programs/yambar.nix>
programs.yambar.settings

Configuration written to$XDG_CONFIG_HOME/yambar/config.yml.Seeyambar(5) for options.

Type:YAML 1.1 value

Default:{ }

Example:

bar = {  location = "top";  height = 26;  background = "00000066";  right = [    {      clock.content = [        {          string.text = "{time}";        }      ];    }  ];};

Declared by:

<home-manager/modules/programs/yambar.nix>
programs.yambar.systemd.enable

Whether to enable yambar systemd integration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yambar.nix>
programs.yambar.systemd.target

The systemd target that will automatically start the yambar service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:config.wayland.systemd.target

Example:"sway-session.target"

Declared by:

<home-manager/modules/programs/yambar.nix>
programs.yarn.enable

Whether to enable management of yarn config.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yarn>
programs.yarn.settings

Available configuration options for yarn see:https://yarnpkg.com/configuration/yarnrc

Type:YAML 1.1 value

Default:{ }

Example:

{  httpProxy = "http://proxy.example.org:3128";  httpsProxy = "http://proxy.example.org:3128";}

Declared by:

<home-manager/modules/programs/yarn>
programs.yazi.enable

Whether to enable yazi.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.package

The yazi package to use.

Type:null or package

Default:pkgs.yazi

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.extraPackages

Extra packages to make available to yazi.

These packages will be added to the yazi wrapper’s PATH.

Type:list of package

Default:[ ]

Example:

with pkgs; [  glow  ouch]

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.flavors

Pre-made themes.Values should be a package or path containing the required files.Will be linked to$XDG_CONFIG_HOME/yazi/flavors/<name>.yazi.

Seehttps://yazi-rs.github.io/docs/flavors/overview/ for documentation.

Type:attribute set of (absolute path or package)

Default:{ }

Example:

{  foo = ./foo;  bar = pkgs.bar;}

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.initLua

The init.lua for Yazi itself.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:./init.lua

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.keymap

Configuration written to$XDG_CONFIG_HOME/yazi/keymap.toml.

Seehttps://yazi-rs.github.io/docs/configuration/keymapfor the full list of options.

Type:TOML value

Default:{ }

Example:

{  input.prepend_keymap = [    { run = "close"; on = [ "<C-q>" ]; }    { run = "close --submit"; on = [ "<Enter>" ]; }    { run = "escape"; on = [ "<Esc>" ]; }    { run = "backspace"; on = [ "<Backspace>" ]; }  ];  mgr.prepend_keymap = [    { run = "escape"; on = [ "<Esc>" ]; }    { run = "quit"; on = [ "q" ]; }    { run = "close"; on = [ "<C-q>" ]; }  ];}

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.plugins

Lua plugins.Values should be a package or path containing aninit.lua file.Will be linked to$XDG_CONFIG_HOME/yazi/plugins/<name>.yazi.

Seehttps://yazi-rs.github.io/docs/plugins/overviewfor documentation.

Type:attribute set of (absolute path or package)

Default:{ }

Example:

{  foo = ./foo;  bar = pkgs.bar;}

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.settings

Configuration written to$XDG_CONFIG_HOME/yazi/yazi.toml.

Seehttps://yazi-rs.github.io/docs/configuration/yazifor the full list of options.

Type:TOML value

Default:{ }

Example:

{  log = {    enabled = false;  };  mgr = {    show_hidden = false;    sort_by = "mtime";    sort_dir_first = true;    sort_reverse = true;  };}

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.shellWrapperName

Name of the shell wrapper to be called.

Type:string

Default:"yy"

Example:"y"

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yazi.theme

Configuration written to$XDG_CONFIG_HOME/yazi/theme.toml.

Seehttps://yazi-rs.github.io/docs/configuration/themefor the full list of options

Type:TOML value

Default:{ }

Example:

{  filetype = {    rules = [      { fg = "#7AD9E5"; mime = "image/*"; }      { fg = "#F3D398"; mime = "video/*"; }      { fg = "#F3D398"; mime = "audio/*"; }      { fg = "#CD9EFC"; mime = "application/bzip"; }    ];  };}

Declared by:

<home-manager/modules/programs/yazi.nix>
programs.yofi.enable

Whether to enable yofi.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yofi.nix>
programs.yofi.package

The yofi package to use.

Type:null or package

Default:pkgs.yofi

Declared by:

<home-manager/modules/programs/yofi.nix>
programs.yofi.blacklist

List of .desktop files yofi should ignore.

Type:list of string

Default:[ ]

Example:

[  "firefox"  "librewolf"  "com.obsproject.Studio"  "com.rtosta.zapzap"  "cups"  "kitty-open"  "nvim"]

Declared by:

<home-manager/modules/programs/yofi.nix>
programs.yofi.settings

Configuration settings for yofi. For all the available optionssee:https://github.com/l4l/yofi/wiki/Configuration#main-configuration

Type:TOML value

Default:{ }

Example:

{  bg_border_color = "0x131411ff";  bg_color = "0x272822ee";  corner_radius = "0";  font_size = 24;  force_window = false;  height = 512;  input_text = {    bg_color = "0x75715eff";    font_color = "0xf8f8f2ff";    margin = "5";    padding = "1.7 -4";  };  width = 400;}

Declared by:

<home-manager/modules/programs/yofi.nix>
programs.yt-dlp.enable

Whether to enable yt-dlp.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/yt-dlp.nix>
programs.yt-dlp.package

The yt-dlp package to use.

Type:package

Default:pkgs.yt-dlp

Declared by:

<home-manager/modules/programs/yt-dlp.nix>
programs.yt-dlp.extraConfig

Extra configuration to add to$XDG_CONFIG_HOME/yt-dlp/config.

Type:strings concatenated with “\n”

Default:""

Example:

''  --update  -F''

Declared by:

<home-manager/modules/programs/yt-dlp.nix>
programs.yt-dlp.settings

Configuration written to$XDG_CONFIG_HOME/yt-dlp/config.

Options must be specified in their “long form”, forexample,update = true; instead ofU = true;.Short options can be specified in theextraConfig option.Seehttps://github.com/yt-dlp/yt-dlp#configurationfor explanation about possible values.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  embed-thumbnail = true;  embed-subs = true;  sub-langs = "all";  downloader = "aria2c";  downloader-args = "aria2c:'-c -x8 -s8 -k1M'";}

Declared by:

<home-manager/modules/programs/yt-dlp.nix>
programs.z-lua.enable

Whether to enable z.lua.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.enableAliases

Whether to enable recommended z.lua aliases.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.package

The z-lua package to use.

Type:package

Default:pkgs.z-lua

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.z-lua.options

List of options to pass to z.lua.

Type:list of string

Default:[ ]

Example:

[  "enhanced"  "once"  "fzf"]

Declared by:

<home-manager/modules/programs/z-lua.nix>
programs.zapzap.enable

Whether to enable zapzap.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zapzap.nix>
programs.zapzap.package

The zapzap package to use.

Type:null or package

Default:pkgs.zapzap

Declared by:

<home-manager/modules/programs/zapzap.nix>
programs.zapzap.settings

Configuration settings for zapzap. All the available options can be found bychanging the settings from the GUI and looking at $XDG_CONFIG_HOME/ZapZap/ZapZap.conf.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  notification = {    donation_message = true;  };  system = {    scale = 150;    theme = "dark";    wayland = true;  };  website = {    open_page = false;  };}

Declared by:

<home-manager/modules/programs/zapzap.nix>
programs.zathura.enable

Whether to enable Zathura, a highly customizable and functional document viewerfocused on keyboard interaction.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zathura.nix>
programs.zathura.package

The zathura package to use.

Type:package

Default:pkgs.zathura

Declared by:

<home-manager/modules/programs/zathura.nix>
programs.zathura.extraConfig

Additional commands for zathura that will be added to thezathurarc file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zathura.nix>
programs.zathura.mappings

Add:map mappings to zathura and makethem permanent. Seezathurarc(5)for the full list of possible mappings.

You can create a mode-specific mapping by specifying the mode before the key:"[normal] <C-b>" = "scroll left";

Type:attribute set of string

Default:{ }

Example:

{  "<Right>" = "navigate next";  D = "toggle_page_mode";  "[fullscreen] <C-i>" = "zoom in";}

Declared by:

<home-manager/modules/programs/zathura.nix>
programs.zathura.options

Add:set command options to zathura and makethem permanent. Seezathurarc(5)for the full list of options.

Type:attribute set of (string or boolean or signed integer or floating point number)

Default:{ }

Example:

{  default-bg = "#000000";  default-fg = "#FFFFFF";}

Declared by:

<home-manager/modules/programs/zathura.nix>
programs.zed-editor.enable

Whether to enable Zed, the high performance, multiplayer code editor from the creators of Atom and Tree-sitter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.package

The zed-editor package to use.

Type:null or package

Default:pkgs.zed-editor

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.extensions

A list of the extensions Zed should install on startup.Use the name of a repository in theextension list.

Type:list of string

Default:[ ]

Example:

[ "swift" "nix" "xy-zed" ]

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.extraPackages

Extra packages available to Zed.

Type:list of package

Default:[ ]

Example:[ pkgs.nixd ]

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.installRemoteServer

Whether to symlink the Zed’s remote server binary to the expectedlocation. This allows remotely connecting to this system from adistant Zed client.

For more information, consult the“Remote Server” sectionin the wiki.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.mutableUserDebug

Whether user debug configurations (debug.json) can be updated by zed.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.mutableUserKeymaps

Whether user keymaps (keymap.json) can be updated by zed.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.mutableUserSettings

Whether user settings (settings.json) can be updated by zed.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.mutableUserTasks

Whether user tasks (tasks.json) can be updated by zed.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.themes

Each theme is written to$XDG_CONFIG_HOME/zed/themes/theme-name.jsonwhere the name of each attribute is the theme-name

Seehttps://zed.dev/docs/extensions/themes for the structure of aZed theme

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

Default:{ }

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.userDebug

Configuration written to Zed’sdebug.json.

Global debug configurations for Zed’sDebugger.

Type:JSON value

Default:[ ]

Example:

[  {    label = "Go (Delve)";    adapter = "Delve";    program = "$ZED_FILE";    request = "launch";    mode = "debug";  }]

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.userKeymaps

Configuration written to Zed’skeymap.json.

Type:JSON value

Default:[ ]

Example:

[  {    context = "Workspace";    bindings = {      ctrl-shift-t = "workspace::NewTerminal";    };  };]

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.userSettings

Configuration written to Zed’ssettings.json.

Type:JSON value

Default:{ }

Example:

{  features = {    copilot = false;  };  telemetry = {    metrics = false;  };  vim_mode = false;  ui_font_size = 16;  buffer_font_size = 16;}

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zed-editor.userTasks

Configuration written to Zed’stasks.json.

List of tasks that can be run from thecommand palette.

Type:JSON value

Default:[ ]

Example:

[  {    label = "Format Code";    command = "nix";    args = [ "fmt" "$ZED_WORKTREE_ROOT" ];  }]

Declared by:

<home-manager/modules/programs/zed-editor.nix>
programs.zellij.enable

Whether to enable Zellij.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:true

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:true

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:true

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.package

The zellij package to use.

Type:package

Default:pkgs.zellij

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.attachExistingSession

Whether to attach to the default session after being autostarted if a Zellij session already exists.

Variable is checked inauto-start script. Requires shell integration to be enabled to have effect.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.exitShellOnExit

Whether to exit the shell when Zellij exits after being autostarted.

Variable is checked inauto-start script. Requires shell integration to be enabled to have effect.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.extraConfig

Extra configuration lines to add to$XDG_CONFIG_HOME/zellij/config.kdl.

This does not support zellij.yaml and it’s mostly a workaround for https://github.com/nix-community/home-manager/issues/4659.

Type:strings concatenated with “\n”

Default:""

Example:

''  keybinds {      // keybinds are divided into modes      normal {          // bind instructions can include one or more keys (both keys will be bound separately)          // bind keys can include one or more actions (all actions will be performed with no sequential guarantees)          bind "Ctrl g" { SwitchToMode "locked"; }          bind "Ctrl p" { SwitchToMode "pane"; }          bind "Alt n" { NewPane; }          bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }      }      pane {          bind "h" "Left" { MoveFocus "Left"; }          bind "l" "Right" { MoveFocus "Right"; }          bind "j" "Down" { MoveFocus "Down"; }          bind "k" "Up" { MoveFocus "Up"; }          bind "p" { SwitchFocus; }      }      locked {          bind "Ctrl g" { SwitchToMode "normal"; }      }  }''

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.layouts

Configuration written to$XDG_CONFIG_HOME/zellij/layouts/<layout>.kdl.

Seehttps://zellij.dev/documentation for the fulllist of options.

Type:attribute set of (YAML 1.1 value or absolute path or strings concatenated with “\n”)

Default:{ }

Example:

{  dev = {    layout = {      _children = [        {          default_tab_template = {            _children = [              {                pane = {                  size = 1;                  borderless = true;                  plugin = {                    location = "zellij:tab-bar";                  };                };              }              { "children" = { }; }              {                pane = {                  size = 2;                  borderless = true;                  plugin = {                    location = "zellij:status-bar";                  };                };              }            ];          };        }        {          tab = {            _props = {              name = "Project";              focus = true;            };            _children = [              {                pane = {                  command = "nvim";                };              }            ];          };        }        {          tab = {            _props = {              name = "Git";            };            _children = [              {                pane = {                  command = "lazygit";                };              }            ];          };        }        {          tab = {            _props = {              name = "Files";            };            _children = [              {                pane = {                  command = "yazi";                };              }            ];          };        }        {          tab = {            _props = {              name = "Shell";            };            _children = [              {                pane = {                  command = "zsh";                };              }            ];          };        }      ];    };  };}

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.settings

Configuration written to$XDG_CONFIG_HOME/zellij/config.kdl.

Ifprograms.zellij.package.version is older than 0.32.0, thenthe configuration is written to$XDG_CONFIG_HOME/zellij/config.yaml.

Seehttps://zellij.dev/documentation for the fulllist of options.

Type:YAML 1.1 value

Default:{ }

Example:

{  theme = "custom";  themes.custom.fg = "#ffffff";  keybinds._props.clear-defaults = true;  keybinds.pane._children = [    {      bind = {        _args = ["e"];        _children = [          { TogglePaneEmbedOrFloating = {}; }          { SwitchToMode._args = ["locked"]; }        ];      };    }    {      bind = {        _args = ["left"];        MoveFocus = ["left"];      };    }  ];}

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zellij.themes

Each them is written to$XDG_CONFIG_HOME/zellij/themes/NAME.kdl.Seehttps://zellij.dev/documentation/themes.html for more information.

Type:attribute set of (YAML 1.1 value or absolute path or strings concatenated with “\n”)

Default:{ }

Declared by:

<home-manager/modules/programs/zellij.nix>
programs.zk.enable

Whether to enable zk.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zk.nix>
programs.zk.package

The zk package to use.

Type:null or package

Default:pkgs.zk

Declared by:

<home-manager/modules/programs/zk.nix>
programs.zk.settings

Configuration written to$XDG_CONFIG_HOME/zk/config.toml.

Seehttps://github.com/mickael-menu/zk/blob/main/docs/config.md foravailable options and documentation.

Type:TOML value

Default:{ }

Example:

{  note = {    language = "en";    default-title = "Untitled";    filename = "{{id}}-{{slug title}}";    extension = "md";    template = "default.md";    id-charset = "alphanum";    id-length = 4;    id-case = "lower";  };  extra = {    author = "Mickaël";  };}

Declared by:

<home-manager/modules/programs/zk.nix>
programs.zoxide.enable

Whether to enable zoxide.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.package

The zoxide package to use.

Type:package

Default:pkgs.zoxide

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zoxide.options

List of options to pass to zoxide init.

Type:list of string

Default:[ ]

Example:

[  "--no-cmd"]

Declared by:

<home-manager/modules/programs/zoxide.nix>
programs.zsh.enable

Whether to enable Z shell (Zsh).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.enableCompletion

Enable zsh completion. Don’t forget to add

  environment.pathsToLink = [ "/share/zsh" ];

to your system configuration to get completion for system packages (e.g. systemd).

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.enableVteIntegration

Whether to enable integration with terminals using the VTElibrary. This will let the terminal track the current workingdirectory.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/vte.nix>
programs.zsh.package

The zsh package to use.

Type:package

Default:pkgs.zsh

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.antidote.enable

Whether to enable antidote - a zsh plugin manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/antidote.nix>
programs.zsh.antidote.package

The antidote package to use.

Type:null or package

Default:pkgs.antidote

Declared by:

<home-manager/modules/programs/antidote.nix>
programs.zsh.antidote.plugins

List of antidote plugins.

Type:list of string

Default:[ ]

Example:

[  "zsh-users/zsh-autosuggestions"]

Declared by:

<home-manager/modules/programs/antidote.nix>
programs.zsh.antidote.useFriendlyNames

Whether to enable friendly names.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/antidote.nix>
programs.zsh.autocd

Automatically enter into a directory if typed directly into shell.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.autosuggestion.enable

Enable zsh autosuggestions

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.autosuggestion.highlight

Custom styles for autosuggestion highlighting. Seezshzle(1) for syntax.

Type:null or string

Default:null

Example:"fg=#ff00ff,bg=cyan,bold,underline"

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.autosuggestion.strategy

ZSH_AUTOSUGGEST_STRATEGY is an array that specifies how suggestions should be generated.The strategies in the array are tried successively until a suggestion is found.There are currently three built-in strategies to choose from:

  • history: Chooses the most recent match from history.

  • completion: Chooses a suggestion based on what tab-completion would suggest. (requireszpty module)

  • match_prev_cmd: Likehistory, but chooses the most recent match whose preceding history item matchesthe most recently executed command. Note that this strategy won’t work as expected with ZSH options thatdon’t preserve the history order such asHIST_IGNORE_ALL_DUPS orHIST_EXPIRE_DUPS_FIRST.

Setting the option to an empty list[] will make ZSH_AUTOSUGGESTION_STRATEGY not be set automatically,allowing the variable to be declared inprograms.zsh.localVariables orprograms.zsh.sessionVariables

Type:list of (one of “history”, “completion”, “match_prev_cmd”)

Default:

[  "history"]

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.cdpath

List of paths to autocomplete calls tocd.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.completionInit

Initialization commands to run when completion is enabled.

Type:strings concatenated with “\n”

Default:"autoload -U compinit && compinit"

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.defaultKeymap

The default base keymap to use.

Type:null or one of “emacs”, “vicmd”, “viins”

Default:null

Example:"emacs"

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.dirHashes

An attribute set that adds to named directory hash table.

Type:attribute set of string

Default:{ }

Example:

{  docs  = "$\{config.home.homeDirectory}/Documents";  vids  = "$\{config.home.homeDirectory}/Videos";  dl    = "$\{config.home.homeDirectory}/Downloads";}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.dotDir

Directory where the zsh configuration and more should be located,relative to the users home directory. The default is the homedirectory.

Type:null or string

Default:"`config.home.homeDirectory`"

Example:"`\${config.xdg.configHome}/zsh`"

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.envExtra

Extra commands that should be added to.zshenv.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.history

Options related to commands history configuration.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.append

If set, zsh sessions will append their history list to the historyfile, rather than replace it. Thus, multiple parallel zsh sessionswill all have the new entries from their history lists added to thehistory file, in the order that they exit.

This file will still be periodically re-written to trim it when thenumber of lines grows 20% beyond the value specified byprograms.zsh.history.save.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.expireDuplicatesFirst

Expire duplicates first.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.extended

Save timestamp into the history file.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.findNoDups

Do not display a line previously found in the historyfile.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.ignoreAllDups

If a new command line being added to the history listduplicates an older one, the older command is removedfrom the list (even if it is not the previous event).

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.ignoreDups

Do not enter command lines into the history listif they are duplicates of the previous event.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.ignorePatterns

Do not enter command lines into the history listif they match any one of the given shell patterns.

Type:list of string

Default:[ ]

Example:[ "rm *" "pkill *" ]

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.ignoreSpace

Do not enter command lines into the history listif the first character is a space.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.path

History file location

Type:string

Default:"`\${config.programs.zsh.dotDir}/.zsh_history`"

Example:"`\${config.xdg.dataHome}/zsh/zsh_history`"

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.save

Number of history lines to save.

Type:signed integer

Default:10000

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.saveNoDups

Do not write duplicate entries into the history file.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.share

Share command history between zsh sessions.

Type:boolean

Default:true

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.history.size

Number of history lines to keep.

Type:signed integer

Default:10000

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.historySubstringSearch

Options related to zsh-history-substring-search.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.historySubstringSearch.enable

Whether to enable history substring search.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.historySubstringSearch.searchDownKey

The key codes to be used when searching down.The default of^[[B may correspond to the DOWN key – if not, try$terminfo[kcud1].

Type:(list of string) or string

Default:

[  "^[[B"]

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.historySubstringSearch.searchUpKey

The key codes to be used when searching up.The default of^[[A may correspond to the UP key – if not, try$terminfo[kcuu1].

Type:(list of string) or string

Default:

[  "^[[A"]

Declared by:

<home-manager/modules/programs/zsh/history.nix>
programs.zsh.initContent

Content to be added to.zshrc.

To specify the order, uselib.mkOrder.

Common order values:

  • 500 (mkBefore): Early initialization (replaces initExtraFirst)

  • 550: Before completion initialization (replaces initExtraBeforeCompInit)

  • 1000 (default): General configuration (replaces initExtra)

  • 1500 (mkAfter): Last to run configuration

To specify both content in Early initialization and General configuration, uselib.mkMerge.

e.g.

initContent = letzshConfigEarlyInit = lib.mkOrder 500 “do something”;zshConfig = lib.mkOrder 1000 “do something”;inlib.mkMerge [ zshConfigEarlyInit zshConfig ];

Type:strings concatenated with “\n”

Default:""

Example:

lib.mkOrder 1200 '''  echo "Hello zsh initContent!"''';

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.localVariables

Extra local variables defined at the top of.zshrc.

Type:attribute set

Default:{ }

Example:

{  POWERLEVEL9K_LEFT_PROMPT_ELEMENTS = [    "dir"    "vcs"  ];}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.loginExtra

Extra commands that should be added to.zlogin.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.logoutExtra

Extra commands that should be added to.zlogout.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.oh-my-zsh

Options to configure oh-my-zsh.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.enable

Whether to enable oh-my-zsh.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.package

The oh-my-zsh package to use.

Type:package

Default:pkgs.oh-my-zsh

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.custom

Path to a custom oh-my-zsh package to override config ofoh-my-zsh. Seehttps://github.com/robbyrussell/oh-my-zsh/wiki/Customizationfor more information.

Type:string

Default:""

Example:"\${config.home.homeDirectory}/my_customizations"

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.extraConfig

Extra settings for plugins.

Type:strings concatenated with “\n”

Default:""

Example:

''  zstyle :omz:plugins:ssh-agent identities id_rsa id_rsa2 id_github''

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.plugins

List of oh-my-zsh plugins

Type:list of string

Default:[ ]

Example:

[  "git"  "sudo"]

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.oh-my-zsh.theme

Name of the theme to be used by oh-my-zsh.

Type:string

Default:""

Example:"robbyrussell"

Declared by:

<home-manager/modules/programs/zsh/plugins/oh-my-zsh.nix>
programs.zsh.plugins

Plugins to source in.zshrc.

Type:list of (submodule)

Default:[ ]

Example:

[  {    name = "enhancd";    file = "init.sh";    src = pkgs.fetchFromGitHub {      owner = "b4b4r07";      repo = "enhancd";      rev = "v2.2.1";      sha256 = "0iqa9j09fwm6nj5rpip87x3hnvbbz9w9ajgm6wkrd5fls8fn8i5g";    };  }{  name = "wd";  src = pkgs.zsh-wd;  file = "share/wd/wd.plugin.zsh";  completions = [ "share/zsh/site-functions" ];}]

Declared by:

<home-manager/modules/programs/zsh/plugins>
programs.zsh.plugins.*.completions

Paths of additional functions to add tofpath.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/zsh/plugins>
programs.zsh.plugins.*.file

The plugin script to source.Required if the script name does not matchname.plugin.zshusing the pluginname from the pluginsrc.

Type:string

Declared by:

<home-manager/modules/programs/zsh/plugins>
programs.zsh.plugins.*.name

The name of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/zsh/plugins>
programs.zsh.plugins.*.src

Path to the plugin folder.

Will be added tofpath andPATH.

Type:absolute path

Declared by:

<home-manager/modules/programs/zsh/plugins>
programs.zsh.prezto

Options to configure prezto.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.enable

Whether to enable prezto.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.package

The prezto package to use.

Type:package

Default:pkgs.zsh-prezto

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.autosuggestions.color

Set the query found color.

Type:null or string

Default:null

Example:"fg=blue"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.caseSensitive

Set case-sensitivity for completion, history lookup, etc.

Type:null or boolean

Default:true

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.color

Color output (automatically set tofalse on dumb terminals).

Type:null or boolean

Default:true

Example:false

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.completions.ignoredHosts

Set the entries to ignore in static/etc/hosts forhost completion.

Type:list of string

Default:[ ]

Example:

[  "0.0.0.0"  "127.0.0.1"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.editor.dotExpansion

Automatically convert.... to../..

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.editor.keymap

Set the key mapping style toemacs orvi.

Type:null or one of “emacs”, “vi”

Default:"emacs"

Example:"vi"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.editor.promptContext

Allow the Zsh prompt context to be shown.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.extraConfig

Additional configuration to add to.zpreztorc.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.extraFunctions

Set the Zsh functions to load (zshcontrib(1)).

Type:list of string

Default:[ ]

Example:

[  "zargs"  "zmv"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.extraModules

Set the Zsh modules to load (zshmodules(1)).

Type:list of string

Default:[ ]

Example:

[  "attr"  "stat"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.git.submoduleIgnore

Ignore submodules when they aredirty,untracked,all,ornone.

Type:null or one of “dirty”, “untracked”, “all”, “none”

Default:null

Example:"all"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.gnuUtility.prefix

Set the command prefix on non-GNU systems.

Type:null or string

Default:null

Example:"g"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.historySubstring.foundColor

Set the query found color.

Type:null or string

Default:null

Example:"fg=blue"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.historySubstring.globbingFlags

Set the search globbing flags.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.historySubstring.notFoundColor

Set the query not found color.

Type:null or string

Default:null

Example:"fg=red"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.macOS.dashKeyword

Set the keyword used bymand to open man pagesin Dash.app.

Type:null or string

Default:null

Example:"manpages"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.pmoduleDirs

Add additional directories to load prezto modules from.

Type:list of absolute path

Default:[ ]

Example:[ "${config.home.homeDirectory}/.zprezto-contrib" ]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.pmodules

Set the Prezto modules to load (browse modules). The order matters.

Type:list of string

Default:

[  "environment"  "terminal"  "editor"  "history"  "directory"  "spectrum"  "utility"  "completion"  "prompt"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.prompt.pwdLength

Set the working directory prompt display length. Bydefault, it is set toshort. Set it tolong (without~expansion) for longer orfull (with~ expansion) foreven longer prompt display.

Type:null or one of “short”, “long”, “full”

Default:null

Example:"short"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.prompt.showReturnVal

Set the prompt to display the return code along with anindicator for non-zero return codes. This is not supported by all prompts.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.prompt.theme

Set the prompt theme to load. Setting it torandomloads a random theme. Automatically set tooff on dumbterminals.

Type:null or string

Default:"sorin"

Example:"pure"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.python.virtualenvAutoSwitch

Auto switch to Python virtualenv on directory change.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.python.virtualenvInitialize

Automatically initialize virtualenvwrapper if pre-requisites are met.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.ruby.chrubyAutoSwitch

Auto switch the Ruby version on directory change.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.screen.autoStartLocal

Auto start a session when Zsh is launched in a local terminal.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.screen.autoStartRemote

Auto start a session when Zsh is launched in a SSH connection.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.ssh.identities

Set the SSH identities to load into the agent.

Type:list of string

Default:[ ]

Example:

[  "id_rsa"  "id_rsa2"  "id_github"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.syntaxHighlighting.highlighters

Set syntax highlighters. By default, only the mainhighlighter is enabled.

Type:list of string

Default:[ ]

Example:

[  "main"  "brackets"  "pattern"  "line"  "cursor"  "root"]

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.syntaxHighlighting.pattern

Set syntax pattern styles.

Type:attribute set of string

Default:{ }

Example:

{  "rm*-rf*" = "fg=white,bold,bg=red";}

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.syntaxHighlighting.styles

Set syntax highlighting styles.

Type:attribute set of string

Default:{ }

Example:

{  builtin = "bg=blue";  command = "bg=blue";  function = "bg=blue";}

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.terminal.autoTitle

Auto set the tab and window titles.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.terminal.multiplexerTitleFormat

Set the multiplexer title format.

Type:null or string

Default:null

Example:"%s"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.terminal.tabTitleFormat

Set the tab title format.

Type:null or string

Default:null

Example:"%m: %s"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.terminal.windowTitleFormat

Set the window title format.

Type:null or string

Default:null

Example:"%n@%m: %s"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.tmux.autoStartLocal

Auto start a session when Zsh is launched in a local terminal.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.tmux.autoStartRemote

Auto start a session when Zsh is launched in a SSH connection.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.tmux.defaultSessionName

Set the default session name.

Type:null or string

Default:null

Example:"YOUR DEFAULT SESSION NAME"

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.tmux.itermIntegration

Integrate with iTerm2.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.prezto.utility.safeOps

Enabled safe options. This aliasescp,ln,mv andrm so that theyprompt before deleting or overwriting files. Set tono todisable this safer behavior.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/prezto.nix>
programs.zsh.profileExtra

Extra commands that should be added to.zprofile.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.sessionVariables

Environment variables that will be set for zsh session.

Type:attribute set

Default:{ }

Example:

{  MAILCHECK = 30;}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.setOptions

Configure zsh options. Seezshoptions(1).

To unset an option, prefix it with “NO_”.

Type:list of string

Default:[ ]

Example:

[  "EXTENDED_HISTORY"  "RM_STAR_WAIT"  "NO_BEEP"]

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.shellAliases

An attribute set that maps aliases (the top level attribute names inthis 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/zsh>
programs.zsh.shellGlobalAliases

Similar toprograms.zsh.shellAliases,but are substituted anywhere on a line.

Type:attribute set of string

Default:{ }

Example:

{  UUID = "$(uuidgen | tr -d \\n)";  G = "| grep";}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.siteFunctions

Functions that are added to the Zsh environment and are subject toautoloading. The key is the name and the value is the body ofthe function to be autoloaded.

They are also already marked for autoloading throughautoload -Uz.

Type:attribute set of strings concatenated with “\n”

Default:{ }

Example:

{  mkcd = ''    mkdir --parents "$1" && cd "$1"  '';}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting

Options related to zsh-syntax-highlighting.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting.enable

Whether to enable zsh syntax highlighting.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting.package

The zsh-syntax-highlighting package to use.

Type:package

Default:pkgs.zsh-syntax-highlighting

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting.highlighters

Highlighters to enableSee the list of highlighters:https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

Type:list of string

Default:[ ]

Example:

[  "brackets"]

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting.patterns

Custom syntax highlighting for user-defined patterns.Reference:https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/pattern.md

Type:attribute set of string

Default:{ }

Example:

{  "rm -rf *" = "fg=white,bold,bg=red";}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.syntaxHighlighting.styles

Custom styles for syntax highlighting.See each highlighter style option:https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/main.md

Type:attribute set of string

Default:{ }

Example:

{  comment = "fg=black,bold";}

Declared by:

<home-manager/modules/programs/zsh>
programs.zsh.zplug.enable

Whether to enable zplug - a zsh plugin manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zplug.package

The zplug package to use.

Type:package

Default:pkgs.zplug

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zplug.plugins

List of zplug plugins.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zplug.plugins.*.name

The name of the plugin.

Type:string

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zplug.plugins.*.tags

The plugin tags.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zplug.zplugHome

Path to zplug home directory.

Type:absolute path

Default:"~/.zplug"

Declared by:

<home-manager/modules/programs/zplug.nix>
programs.zsh.zprof.enable

Enable zprof in your zshrc.

Type:boolean

Default:false

Declared by:

<home-manager/modules/programs/zsh/plugins/zprof.nix>
programs.zsh.zsh-abbr.enable

Whether to enable zsh-abbr - zsh manager for auto-expanding abbreviations.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/zsh/plugins/zsh-abbr.nix>
programs.zsh.zsh-abbr.package

The zsh-abbr package to use.

Type:package

Default:pkgs.zsh-abbr

Declared by:

<home-manager/modules/programs/zsh/plugins/zsh-abbr.nix>
programs.zsh.zsh-abbr.abbreviations

An attribute set that maps aliases (the top level attribute namesin this option) to abbreviations. Abbreviations are expanded withthe longer phrase after they are entered.

Type:attribute set of string

Default:{ }

Example:

{  gco = "git checkout";  l = "less";}

Declared by:

<home-manager/modules/programs/zsh/plugins/zsh-abbr.nix>
programs.zsh.zsh-abbr.globalAbbreviations

Similar toprograms.zsh.zsh-abbr.abbreviations,but are expanded anywhere on a line.

Type:attribute set of string

Default:{ }

Example:

{  G = "| grep";  L = "| less -R";}

Declared by:

<home-manager/modules/programs/zsh/plugins/zsh-abbr.nix>
qt.enable

Whether to enable Qt 5 and 6 configuration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/qt.nix>
qt.kde.settings

A set of values to be modified bykwriteconfig6.

The example value would cause the following command to run in theactivation script:

kwriteconfig6 --file $XDG_CONFIG_HOME/powermanagementprofilesrc \              --group AC \              --group HandleButtonEvents \              --group lidAction \              --key lidAction \              32

Note,null values will delete the corresponding entry instead ofinserting any value.

Type:attribute set of (KDE option value)

Default:{ }

Example:

{  powermanagementprofilesrc = {    AC = {      HandleButtonEvents = {        lidAction = 32;      };    };  };}

Declared by:

<home-manager/modules/misc/qt/kconfig.nix>
qt.platformTheme

Deprecated. Useqt.platformTheme.name instead.

Type:null or one of “gtk”, “gtk3”, “gnome”, “adwaita”, “lxqt”, “qtct”, “kde”, “kde6” or (submodule)

Default:null

Declared by:

<home-manager/modules/misc/qt.nix>
qt.style.package

Theme package to be used in Qt5/Qt6 applications.Auto-detected fromqt.style.name if possible.See its documentation for available options.

Type:null or package or list of package

Default:null

Example:pkgs.adwaita-qt

Declared by:

<home-manager/modules/misc/qt.nix>
qt.style.name

Style to use for Qt5/Qt6 applications. Case-insensitive.

Some examples are

adwaita,adwaita-dark,adwaita-highcontrast,adwaita-highcontrastinverse

Use the Adwaita style fromadwaita-qt

breeze

Use the Breeze style frombreeze

bb10bright,bb10dark,cde,cleanlooks,gtk2,motif,plastique

Use styles fromqtstyleplugins

kvantum

Use styles fromkvantum

Type:null or string

Default:null

Example:"adwaita-dark"

Related packages:

Declared by:

<home-manager/modules/misc/qt.nix>
services.activitywatch.enable

Whether to enable ActivityWatch, an automated time tracker.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.package

Package containingthe Rust implementation of ActivityWatchserver.

Type:package

Default:pkgs.activitywatch

Example:pkgs.aw-server-rust

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.extraOptions

Additional arguments to be passed on to the ActivityWatch server.

Type:list of string

Default:[ ]

Example:

[  "--port"  "5999"]

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.settings

Configuration foraw-server-rust to be generated at$XDG_CONFIG_HOME/activitywatch/aw-server-rust/config.toml.

Type:TOML value

Default:{ }

Example:

{  port = 3012;  custom_static = {    my-custom-watcher = "${pkgs.my-custom-watcher}/share/my-custom-watcher/static";    aw-keywatcher = "${pkgs.aw-keywatcher}/share/aw-keywatcher/static";  };}

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers

Watchers to be included with the service alongside with theirconfiguration.

Check withsystemctl --user status "*aw*"

If a configuration is set, a file will be generated in$XDG_CONFIG_HOME/activitywatch/$WATCHER_NAME/$WATCHER_SETTINGS_FILENAME.

Note

The watchers are run with the service manager and the settings formatof the configuration is only assumed to be in TOML. Furthermore, itassumes the watcher program is using the official client librarieswhich has functions to store it in the appropriate location.

Type:attribute set of (submodule)

Default:{ }

Example:

{  aw-watcher-afk = {    package = pkgs.activitywatch;    settings = {      timeout = 300;      poll_time = 2;    };  };  aw-watcher-window = {    package = pkgs.activitywatch;    settings = {      poll_time = 1;      exclude_title = true;    };  };  my-custom-watcher = {    package = pkgs.my-custom-watcher;    executable = "mcw";    settings = {      hello = "there";      enable_greetings = true;      poll_time = 5;    };    settingsFilename = "config.toml";  };}

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.package

The activitywatch package to use. The derivation containing the watcher executable.

Type:package

Default:pkgs.activitywatch

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.executable

The name of the executable of the watcher. This is useful in case thewatcher name is different from the executable. By default, thisoption uses the watcher name.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.extraOptions

Extra arguments to be passed to the watcher executable.

Type:list of string

Default:[ ]

Example:

[  "--host"  "127.0.0.1"]

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.name

The name of the watcher. This will be used as the directory name for$XDG_CONFIG_HOME/activitywatch/$NAME whenservices.activitywatch.watchers.<name>.settings is set.

Type:string

Default:"‹name›"

Example:"aw-watcher-afk"

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.settings

The settings for the individual watcher in TOML format. If set, afile will be generated at$XDG_CONFIG_HOME/activitywatch/$NAME/$FILENAME.

To set the basename of the settings file, seeservices.activitywatch.watchers.<name>.settingsFilename.

Type:TOML value

Default:{ }

Example:

{  poll_time = 2;  timeout = 300;}

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.activitywatch.watchers.<name>.settingsFilename

The filename of the generated settings file. By default, this usesthe watcher name to be generated at$XDG_CONFIG_HOME/activitywatch/$NAME/$NAME.toml.

This is useful in case the watcher requires a different name for theconfiguration file.

Type:string

Default:"‹name›.toml"

Example:"config.toml"

Declared by:

<home-manager/modules/services/activitywatch.nix>
services.amberol.enable

Whether to enable Amberol music player as a daemon.

Note, it is necessary to add

programs.dconf.enable = true;

to your system configuration for the daemon to work correctly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/amberol.nix>
services.amberol.enableRecoloring

UI recoloring using the album art.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/amberol.nix>
services.amberol.package

The amberol package to use.

Type:package

Default:pkgs.amberol

Declared by:

<home-manager/modules/services/amberol.nix>
services.amberol.replaygain

ReplayGain mode.

Type:one of “album”, “track”, “off”

Default:"track"

Declared by:

<home-manager/modules/services/amberol.nix>
services.arrpc.enable

Whether to enable arrpc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/arrpc.nix>
services.arrpc.package

The arrpc package to use.

Type:package

Default:pkgs.arrpc

Declared by:

<home-manager/modules/services/arrpc.nix>
services.arrpc.systemdTarget

Systemd target to bind to.

Type:string

Default:"graphical-session.target"

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/arrpc.nix>
services.autorandr.enable

Whether to enable the Autorandr systemd service.This module is complementary toprograms.autorandrwhich handles the configuration (profiles).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/autorandr.nix>
services.autorandr.package

The autorandr package to use.

Type:package

Default:pkgs.autorandr

Declared by:

<home-manager/modules/services/autorandr.nix>
services.autorandr.extraOptions

Extra options to pass to Autorandr.

Type:list of string

Default:[ ]

Example:

[  "--force"]

Declared by:

<home-manager/modules/services/autorandr.nix>
services.autorandr.ignoreLid

Treat outputs as connected even if their lids are closed.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/autorandr.nix>
services.autorandr.matchEdid

Match displays based on edid instead of name.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/autorandr.nix>
services.autotiling.enable

Whether to enable enable autotiling service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/autotiling.nix>
services.autotiling.package

The autotiling package to use.

Type:package

Default:pkgs.autotiling

Declared by:

<home-manager/modules/services/autotiling.nix>
services.autotiling.extraArgs

Extra arguments to pass to autotiling.

Type:list of string

Default:[ ]

Example:

[  "--workspaces"  "8"  "9"]

Declared by:

<home-manager/modules/services/autotiling.nix>
services.autotiling.systemdTarget

Systemd target to bind to.

Type:string

Default:"graphical-session.target"

Declared by:

<home-manager/modules/services/autotiling.nix>
services.avizo.enable

Whether to enable avizo, a simple notification daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/avizo.nix>
services.avizo.package

The avizo package to use.

Type:package

Default:pkgs.avizo

Example:

pkgs.avizo.overrideAttrs (final: prev: {  patchPhase = "cp ${./images}/*.png data/images/";})

Declared by:

<home-manager/modules/services/avizo.nix>
services.avizo.settings

The settings that will be written to the avizo configuration file.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  default = {    time = 1.0;    y-offset = 0.5;    fade-in = 0.1;    fade-out = 0.2;    padding = 10;  };}

Declared by:

<home-manager/modules/services/avizo.nix>
services.batsignal.enable

Whether to enable Batsignal Battery Daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/batsignal.nix>
services.batsignal.package

The batsignal package to use.

Type:package

Default:pkgs.batsignal

Declared by:

<home-manager/modules/services/batsignal.nix>
services.batsignal.extraArgs

Extra arguments to be passed to the batsignal executable.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/batsignal.nix>
services.betterlockscreen.enable

Whether to enable betterlockscreen, a screen-locker module.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/betterlockscreen.nix>
services.betterlockscreen.package

The betterlockscreen package to use.

Type:package

Default:pkgs.betterlockscreen

Declared by:

<home-manager/modules/services/betterlockscreen.nix>
services.betterlockscreen.arguments

List of arguments appended to./betterlockscreen --lock [args]

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/betterlockscreen.nix>
services.betterlockscreen.inactiveInterval

Value used forservices.screen-locker.inactiveInterval.

Type:signed integer

Default:10

Declared by:

<home-manager/modules/services/betterlockscreen.nix>
services.blanket.enable

Whether to enable blanket.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/blanket.nix>
services.blanket.package

The blanket package to use.

Type:package

Default:pkgs.blanket

Declared by:

<home-manager/modules/services/blanket.nix>
services.blueman-applet.enable

Whether to enable the Blueman applet.

Note that for the applet to work, theblueman service shouldbe enabled system-wide. You can enable it in the systemconfiguration using

services.blueman.enable = true;

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/blueman-applet.nix>
services.blueman-applet.package

The blueman package to use.

Type:package

Default:pkgs.blueman

Declared by:

<home-manager/modules/services/blueman-applet.nix>
services.blueman-applet.systemdTargets

The systemd targets that will automatically start the blueman applet service.

When setting this value to["sway-session.target"],make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:list of string

Default:

[  "graphical-session.target"]

Example:

[  "sway-session.target"]

Declared by:

<home-manager/modules/services/blueman-applet.nix>
services.borgmatic.enable

Whether to enable Borgmatic service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/borgmatic.nix>
services.borgmatic.frequency

How often to run borgmatic whenservices.borgmatic.enable = true.This value is passed to the systemd timer configuration asthe onCalendar option. Seesystemd.time(7)for more information about the format.

On Darwin it must be one of: hourly, daily, weekly, monthly, semiannually, annually, which are implemented as defined insystemd.time(7).

Type:string

Default:"hourly"

Declared by:

<home-manager/modules/services/borgmatic.nix>
services.cachix-agent.enable

Whether to enable Cachix Deploy Agent:https://docs.cachix.org/deploy/.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.package

The cachix package to use.

Type:package

Default:pkgs.cachix

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.credentialsFile

Required file that needs to containCACHIX_AGENT_TOKEN=....

Type:absolute path

Default:"${config.xdg.configHome}/cachix-agent.token"

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.host

Cachix URI to use.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.name

The unique agent name.

Type:string

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.profile

The Nix profile name.

Type:string

Default:"home-manager"

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.cachix-agent.verbose

Whether to enable verbose output.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/cachix-agent.nix>
services.caffeine.enable

Whether to enable Caffeine service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/caffeine.nix>
services.caffeine.package

The caffeine-ng package to use.

Type:package

Default:pkgs.caffeine-ng

Declared by:

<home-manager/modules/services/caffeine.nix>
services.cbatticon.enable

Whether to enable cbatticon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.package

The cbatticon package to use. Usepkgs.batticonplusfor wayland support.

Type:package

Default:pkgs.cbatticon

Example:pkgs.batticonplus

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.batteryId

ID of the battery to monitor. List withcbatticon -p.Defaults to the first entry in the list.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.commandCriticalLevel

Command to execute when the critical battery level is reached.

Type:null or strings concatenated with “\n”

Default:null

Example:

''  notify-send "battery critical!"''

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.commandLeftClick

Command to execute when left clicking on the tray icon.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.criticalLevelPercent

Critical level percentage of the battery in percent (withoutthe percent symbol).

Type:null or integer between 0 and 100 (both inclusive)

Default:null

Example:5

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.hideNotification

Hide the notification popups.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.iconType

Icon type to display in the system tray.

Type:null or one of “standard”, “notification”, “symbolic”

Default:null

Example:"symbolic"

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.lowLevelPercent

Low level percentage of the battery in percent (without thepercent symbol).

Type:null or integer between 0 and 100 (both inclusive)

Default:null

Example:20

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.cbatticon.updateIntervalSeconds

Number of seconds between updates of the battery information.

Type:null or (positive integer, meaning >0)

Default:null

Example:5

Declared by:

<home-manager/modules/services/cbatticon.nix>
services.clipcat.enable

Whether to enable clipcat.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.enableSystemdUnit

Enable clipcat’s Systemd Unit.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.package

The clipcat package to use.

Type:package

Default:pkgs.clipcat

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.ctlSettings

Configuration settings for clipcatctl. All available options can be foundhere:https://github.com/xrelkd/clipcat?tab=readme-ov-file#configuration.

Type:TOML value

Default:{ }

Example:

''  {    server_endpoint = "/run/user/<user-id>/clipcat/grpc.sock";    log = {      file_path = "/path/to/log/file";      emit_journald = true;      emit_stdout = false;      emit_stderr = false;      level = "INFO";    };  }''

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.daemonSettings

Configuration settings for clipcatd. All available options can be foundhere:https://github.com/xrelkd/clipcat?tab=readme-ov-file#configuration.

Type:TOML value

Default:

{  daemonize = true;}

Example:

''  {    daemonize = true;    max_history = 50;    history_file_path = "/home/<username>/.cache/clipcat/clipcatd-history";    pid_file = "/run/user/<user-id>/clipcatd.pid";    primary_threshold_ms = 5000;    log = {      file_path = "/path/to/log/file";      emit_journald = true;      emit_stdout = false;      emit_stderr = false;      level = "INFO";    };  }''

Declared by:

<home-manager/modules/services/clipcat.nix>
services.clipcat.menuSettings

Configuration settings for clipcat-menu. All available options can be foundhere:https://github.com/xrelkd/clipcat?tab=readme-ov-file#configuration.

Type:TOML value

Default:{ }

Example:

''  {    server_endpoint = "/run/user/<user-id>/clipcat/grpc.sock";    finder = "rofi";    rofi = {      line_length = 100;      menu_length = 30;      menu_prompt = "Clipcat";      extra_arguments = [        "-mesg"        "Please select a clip"      ];    };    dmenu = {      line_length = 100;      menu_length = 30;      menu_prompt = "Clipcat";    };  }''

Declared by:

<home-manager/modules/services/clipcat.nix>
services.cliphist.enable

Whether to enable cliphist, a clipboard history “manager” for wayland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/cliphist.nix>
services.cliphist.package

The cliphist package to use.

Type:package

Default:pkgs.cliphist

Declared by:

<home-manager/modules/services/cliphist.nix>
services.cliphist.allowImages

Store images in clipboard history.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/cliphist.nix>
services.cliphist.clipboardPackage

The wl-clipboard package to use.

Type:package

Default:pkgs.wl-clipboard

Declared by:

<home-manager/modules/services/cliphist.nix>
services.cliphist.extraOptions

Flags to append to the cliphist command.

Type:list of string

Default:

[  "-max-dedupe-search"  "10"  "-max-items"  "500"]

Declared by:

<home-manager/modules/services/cliphist.nix>
services.cliphist.systemdTargets

The systemd targets that will automatically start the cliphist service.

When setting this value to["sway-session.target"],make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Note: A single string value is deprecated, please use a list.

Type:(list of string) or string

Default:[ config.wayland.systemd.target ]

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/cliphist.nix>
services.clipman.enable

Whether to enable clipman, a simple clipboard manager for Wayland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/clipman.nix>
services.clipman.package

The clipman package to use.

Type:package

Default:pkgs.clipman

Declared by:

<home-manager/modules/services/clipman.nix>
services.clipman.systemdTarget

The systemd target that will automatically start the clipman service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:config.wayland.systemd.target

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/clipman.nix>
services.clipmenu.enable

Whether to enable clipmenu, the clipboard management daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/clipmenu.nix>
services.clipmenu.package

The clipmenu package to use.

Type:package

Default:pkgs.clipmenu

Declared by:

<home-manager/modules/services/clipmenu.nix>
services.clipmenu.launcher

Launcher command, if not set,dmenuwill be used by default.

Type:null or string

Default:null

Example:"rofi"

Declared by:

<home-manager/modules/services/clipmenu.nix>
services.clipse.enable

Whether to enable Enable clipse clipboard manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.package

The clipse package to use.

Type:null or package

Default:pkgs.clipse

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.allowDuplicates

Allow duplicates

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.historySize

Number of history lines to keep.

Type:signed integer

Default:100

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.imageDisplay.heightCut

Height cut

Type:signed integer

Default:2

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.imageDisplay.scaleX

Image scaling factor X

Type:signed integer

Default:9

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.imageDisplay.scaleY

Image scaling factor Y

Type:signed integer

Default:9

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.imageDisplay.type

Preview image method

Type:one of “basic”, “kitty”, “sixel”

Default:"basic"

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.keyBindings

Custom key bindings

Type:JSON value

Default:{ }

Example:

 {   "choose" = "enter";   "clearSelected" = "S";   "down" = "down";   "end" = "end";   "filter" = "/";   "home" = "home";   "more" = "?";   "nextPage" = "right";   "prevPage" = "left";   "preview" = "t";   "quit" = "q";   "remove" = "x";   "selectDown" = "ctrl+down";   "selectSingle" = "s";   "selectUp" = "ctrl+up";   "togglePin" = "p";   "togglePinned" = "tab";   "up" = "up";   "yankFilter" = "ctrl+s";};

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.systemdTarget

The systemd target that will automatically start the clipse service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:"graphical-session.target"

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/clipse.nix>
services.clipse.theme

Configuration written to$XDG_CONFIG_HOME/clipse/custom_theme.json.

Type:JSON value

Default:

{  useCustomTheme = false;}

Example:

{  useCustomTheme = true;  DimmedDesc = "#ffffff";  DimmedTitle = "#ffffff";  FilteredMatch = "#ffffff";  NormalDesc = "#ffffff";  NormalTitle = "#ffffff";  SelectedDesc = "#ffffff";  SelectedTitle = "#ffffff";  SelectedBorder = "#ffffff";  SelectedDescBorder = "#ffffff";  TitleFore = "#ffffff";  Titleback = "#434C5E";  StatusMsg = "#ffffff";  PinIndicatorColor = "#ff0000";};

Declared by:

<home-manager/modules/services/clipse.nix>
services.comodoro.enable

Whether to enable Comodoro server.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/comodoro.nix>
services.comodoro.package

The comodoro package to use.

Type:package

Default:pkgs.comodoro

Declared by:

<home-manager/modules/services/comodoro.nix>
services.comodoro.environment

Extra environment variables to be exported in the service.

Type:attribute set of string

Default:{ }

Example:

{  "PASSWORD_STORE_DIR" = "~/.password-store";}

Declared by:

<home-manager/modules/services/comodoro.nix>
services.comodoro.preset

Use configuration from the given preset as defined in the configuration file.

Type:non-empty string

Declared by:

<home-manager/modules/services/comodoro.nix>
services.comodoro.protocols

Define protocols the server should use to accept requests.

Type:non-empty (list of non-empty string)

Declared by:

<home-manager/modules/services/comodoro.nix>
services.conky.enable

Whether to enable Conky, a light-weight system monitor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/conky.nix>
services.conky.package

The conky package to use.

Type:package

Default:pkgs.conky

Declared by:

<home-manager/modules/services/conky.nix>
services.conky.extraConfig

Configuration used by the Conky daemon. Checkhttps://github.com/brndnmtthws/conky/wiki/Configurations foroptions. If not set, the default configuration, as described byconky --print-config, will be used.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/conky.nix>
services.copyq.enable

Whether to enable CopyQ, a clipboard manager with advanced features.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/copyq.nix>
services.copyq.package

The copyq package to use.

Type:package

Default:pkgs.copyq

Declared by:

<home-manager/modules/services/copyq.nix>
services.copyq.forceXWayland

Force the CopyQ to use the X backend on wayland

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/services/copyq.nix>
services.copyq.systemdTarget

The systemd target that will automatically start the CopyQ service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:"graphical-session.target"

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/copyq.nix>
services.darkman.enable

Whether to enable darkman, a tool that automatically switches dark-mode on and off based onthe time of the day.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/darkman.nix>
services.darkman.package

The darkman package to use.

Type:null or package

Default:pkgs.darkman

Declared by:

<home-manager/modules/services/darkman.nix>
services.darkman.darkModeScripts

Scripts to run when switching to “dark mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang isnot required.

Type:attribute set of (absolute path or strings concatenated with “\n”)

Default:{ }

Example:

{  gtk-theme = ''    ${pkgs.dconf}/bin/dconf write \        /org/gnome/desktop/interface/color-scheme "'prefer-dark'"  '';  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''    print('Do something!')  '';}

Declared by:

<home-manager/modules/services/darkman.nix>
services.darkman.lightModeScripts

Scripts to run when switching to “light mode”.

Multiline strings are interpreted as Bash shell scripts and a shebang isnot required.

Type:attribute set of (absolute path or strings concatenated with “\n”)

Default:{ }

Example:

{  gtk-theme = ''    ${pkgs.dconf}/bin/dconf write \        /org/gnome/desktop/interface/color-scheme "'prefer-light'"  '';  my-python-script = pkgs.writers.writePython3 "my-python-script" { } ''    print('Do something!')  '';}

Declared by:

<home-manager/modules/services/darkman.nix>
services.darkman.settings

Settings for thedarkman command. Seehttps://darkman.whynothugo.nl/#CONFIGURATION for details.

Type:open submodule of (YAML 1.1 value)

Default:{ }

Example:

{  lat = 52.3;  lng = 4.8;  usegeoclue = true;}

Declared by:

<home-manager/modules/services/darkman.nix>
services.davmail.enable

Whether to enable DavMail, an MS Exchange gateway…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/davmail.nix>
services.davmail.package

The davmail package to use.

Type:package

Default:pkgs.davmail

Declared by:

<home-manager/modules/services/davmail.nix>
services.davmail.imitateOutlook

Whether DavMail pretends to be Outlook.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/davmail.nix>
services.davmail.settings

Davmail configuration. Refer tohttp://davmail.sourceforge.net/serversetup.htmlandhttp://davmail.sourceforge.net/advanced.htmlfor details on supported values.

Type:attribute set of (string, package, bool, int or float)

Default:{ }

Example:

{  "davmail.allowRemote" = true;  "davmail.bindAddress" = "10.0.1.2";  "davmail.caldavAutoSchedule" = false;  "davmail.folderSizeLimit" = 10;  "davmail.imapPort" = 55555;  "davmail.smtpSaveInSent" = true;  "davmail.url" = "https://outlook.office365.com/EWS/Exchange.asmx";  "log4j.logger.rootLogger" = "DEBUG";}

Declared by:

<home-manager/modules/services/davmail.nix>
services.devilspie2.enable

Whether to enable Devilspie2, a window matching utility, allowing the user toperform scripted actions on windows as they are created.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/devilspie2.nix>
services.devilspie2.package

The devilspie2 package to use.

Type:package

Default:pkgs.devilspie2

Declared by:

<home-manager/modules/services/devilspie2.nix>
services.devilspie2.config

Content of file placed in the devilspie2 config directory.

Type:strings concatenated with “\n”

Default:""

Example:

''  if (get_window_class() == "Gnome-terminal") then      make_always_on_top();  end''

Declared by:

<home-manager/modules/services/devilspie2.nix>
services.dropbox.enable

Whether to enable Dropbox daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/dropbox.nix>
services.dropbox.package

The dropbox-cli package to use.

Type:package

Default:pkgs.dropbox-cli

Declared by:

<home-manager/modules/services/dropbox.nix>
services.dropbox.path

Where to put the Dropbox directory.

Type:absolute path

Default:"${config.home.homeDirectory}/Dropbox"

Declared by:

<home-manager/modules/services/dropbox.nix>
services.dunst.enable

Whether to enable the dunst notification daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.package

The dunst package to use.

Type:package

Default:pkgs.dunst

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.configFile

Path to the configuration file read by dunst.

Note that the configuration generated by Home Manager will bewritten to$XDG_CONFIG_HOME/dunst/dunstrcregardless. This allows using a mutable configuration file generatedfrom the immutable one, useful in scenarios where live reloading isdesired.

Type:null or string or absolute path

Default:null

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.iconTheme

Set the icon theme.

Type:submodule

Default:

{  name = "hicolor";  package = <derivation hicolor-icon-theme-0.18>;  size = "32x32";}

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.iconTheme.package

Package providing the theme.

Type:package

Example:pkgs.adwaita-icon-theme

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.iconTheme.name

The name of the theme within the package.

Type:string

Example:"Adwaita"

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.iconTheme.size

The desired icon size.

Type:string

Default:"32x32"

Example:"16x16"

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.settings

Configuration written to$XDG_CONFIG_HOME/dunst/dunstrc.

Type:open submodule of attribute set of attribute set of (string or boolean or signed integer or list of string)

Default:{ }

Example:

{  global = {    width = "(200,300)";    height = "(0,150)";    offset = "(30,50)";    origin = "top-right";    transparency = 10;    frame_color = "#eceff1";    font = "Droid Sans 9";  };  urgency_normal = {    background = "#37474f";    foreground = "#eceff1";    timeout = 10;  };};

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.settings.global.icon_path

Paths where dunst will look for icons.

Type:strings concatenated with “:”

Declared by:

<home-manager/modules/services/dunst.nix>
services.dunst.waylandDisplay

Set the service’sWAYLAND_DISPLAY environment variable.

Type:string

Default:""

Declared by:

<home-manager/modules/services/dunst.nix>
services.dwm-status.enable

Whether to enable dwm-status user service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/dwm-status.nix>
services.dwm-status.package

The dwm-status package to use.

Type:package

Default:pkgs.dwm-status

Example:pkgs.dwm-status.override { enableAlsaUtils = false; }

Declared by:

<home-manager/modules/services/dwm-status.nix>
services.dwm-status.extraConfig

Extra config of dwm-status.

Type:JSON value

Default:{ }

Example:

{  separator = "#";  battery = {    notifier_levels = [ 2 5 10 15 20 ];  };  time = {    format = "%H:%M";  };}

Declared by:

<home-manager/modules/services/dwm-status.nix>
services.dwm-status.order

List of enabled features in order.

Type:list of (one of “audio”, “backlight”, “battery”, “cpu_load”, “network”, “time”)

Declared by:

<home-manager/modules/services/dwm-status.nix>
services.easyeffects.enable

Whether to enable Easyeffects daemon.Note, it is necessary to add

programs.dconf.enable = true;

to your system configuration for the daemon to work correctly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/easyeffects.nix>
services.easyeffects.package

The easyeffects package to use.

Type:package

Default:pkgs.easyeffects

Declared by:

<home-manager/modules/services/easyeffects.nix>
services.easyeffects.extraPresets

List of presets to import to easyeffects.Presets are written to input and output folder in$XDG_CONFIG_HOME/easyeffects.Top level block (input/output) determines the folder the file is written to.

See community presets at:https://github.com/wwmm/easyeffects/wiki/Community-Presets

Type:null or (attribute set of attribute set of (JSON value))

Default:{ }

Example:

{  my-preset = {    input = {      blocklist = [      ];      "plugins_order" = [        "rnnoise#0"      ];      "rnnoise#0" = {        bypass = false;        "enable-vad" = false;        "input-gain" = 0.0;        "model-path" = "";        "output-gain" = 0.0;        release = 20.0;        "vad-thres" = 50.0;        wet = 0.0;      };    };  };};

Declared by:

<home-manager/modules/services/easyeffects.nix>
services.easyeffects.preset

Which preset to use when starting easyeffects.Will likely need to launch easyeffects to initially create preset.

Type:string

Default:""

Declared by:

<home-manager/modules/services/easyeffects.nix>
services.emacs.enable

Whether to enable the Emacs daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.package

The Emacs package to use.

Type:package

Default:

if config.programs.emacs.enable then config.programs.emacs.finalPackageelse pkgs.emacs

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.client.enable

Whether to enable generation of Emacs client desktop file.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.client.arguments

Command-line arguments to pass toemacsclient.

Type:list of string

Default:

[  "-c"]

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.defaultEditor

Whether to configureemacsclient as the defaulteditor using theEDITOR environment variable.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.extraOptions

Extra command-line arguments to pass toemacs.

Type:list of string

Default:[ ]

Example:

[  "-f"  "exwm-enable"]

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.socketActivation.enable

Whether to enable systemd socket activation for the Emacs service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/emacs.nix>
services.emacs.startWithUserSession

Whether to launch Emacs service with the systemd user session. If it istrue, Emacs service is started bydefault.target. If it is"graphical", Emacs service is started bygraphical-session.target.

Type:boolean or value “graphical” (singular enum)

Default:!config.services.emacs.socketActivation.enable

Example:"graphical"

Declared by:

<home-manager/modules/services/emacs.nix>
services.espanso.enable

Whether to enable Espanso: cross platform text expander in Rust.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.package

The espanso package to use.

Type:package

Default:pkgs.espanso

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.package-wayland

The espanso-wayland package to use. Whichespanso package to use when running under wayland.

Type:null or package

Default:pkgs.espanso-wayland

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.configs

The Espanso configuration to use. Seehttps://espanso.org/docs/configuration/basics/for a description of available options.

Type:YAML 1.1 value

Default:

{  default = { };}

Example:

{  default = {    show_notifications = false;  };  vscode = {    filter_title = "Visual Studio Code$";    backend = "Clipboard";  };};

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.matches

The Espanso matches to use. Seehttps://espanso.org/docs/matches/basics/for a description of available options.

Type:YAML 1.1 value

Default:

{  default = {    matches = [ ];  };}

Example:

{  base = {    matches = [      {        trigger = ":now";        replace = "It's {{currentdate}} {{currenttime}}";      }      {        trigger = ":hello";        replace = "line1\nline2";      }      {        regex = ":hi(?P<person>.*)\\.";        replace = "Hi {{person}}!";      }    ];  };  global_vars = {    global_vars = [      {        name = "currentdate";        type = "date";        params = {format = "%d/%m/%Y";};      }      {        name = "currenttime";        type = "date";        params = {format = "%R";};      }    ];  };};

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.waylandSupport

Whether to enable wayland support on linux

Type:boolean

Default:"`true` on linux"

Declared by:

<home-manager/modules/services/espanso.nix>
services.espanso.x11Support

Whether to enable x11 support on linux

Type:boolean

Default:"`true` on linux"

Declared by:

<home-manager/modules/services/espanso.nix>
services.etesync-dav.enable

Whether to enable etesync-dav.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/etesync-dav.nix>
services.etesync-dav.package

The etesync-dav package to use.

Type:package

Default:pkgs.etesync-dav

Declared by:

<home-manager/modules/services/etesync-dav.nix>
services.etesync-dav.serverUrl

The URL to the etesync server.

Type:string

Default:"https://api.etebase.com/partner/etesync/"

Declared by:

<home-manager/modules/services/etesync-dav.nix>
services.etesync-dav.settings

Settings for etesync-dav, passed as environment variables.

Type:attribute set of (string or signed integer)

Default:{ }

Example:

{  ETESYNC_LISTEN_ADDRESS = "localhost";  ETESYNC_LISTEN_PORT = 37358;}

Declared by:

<home-manager/modules/services/etesync-dav.nix>
services.flameshot.enable

Whether to enable Flameshot.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/flameshot.nix>
services.flameshot.package

The flameshot package to use.

Type:package

Default:pkgs.flameshot

Declared by:

<home-manager/modules/services/flameshot.nix>
services.flameshot.settings

Configuration to use for Flameshot. Seehttps://github.com/flameshot-org/flameshot/blob/master/flameshot.example.inifor available options.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  General = {    disabledTrayIcon = true;    showStartupLaunchMessage = false;  };}

Declared by:

<home-manager/modules/services/flameshot.nix>
services.fluidsynth.enable

Whether to enable fluidsynth midi synthesizer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/fluidsynth.nix>
services.fluidsynth.package

The fluidsynth package to use.

Type:package

Default:pkgs.fluidsynth

Declared by:

<home-manager/modules/services/fluidsynth.nix>
services.fluidsynth.extraOptions

Extra arguments, added verbatim to the fluidsynth command. Seefluidsynth.conf(1).

Type:list of string

Default:[ ]

Example:

[  "--sample-rate 96000"]

Declared by:

<home-manager/modules/services/fluidsynth.nix>
services.fluidsynth.soundFont

The soundfont file to use, in SoundFont 2 format.

Type:absolute path

Default:

"${pkgs.soundfont-fluid}/share/soundfonts/FluidR3_GM2-2.sf2";

Declared by:

<home-manager/modules/services/fluidsynth.nix>
services.fluidsynth.soundService

The systemd sound service to depend on.

Type:one of “jack”, “pipewire-pulse”, “pulseaudio”

Default:"pulseaudio"

Example:"pipewire-pulse"

Declared by:

<home-manager/modules/services/fluidsynth.nix>
services.fnott.enable

Whether to enable fnott, a lightweight Wayland notification daemon for wlroots-based compositors.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/fnott.nix>
services.fnott.package

The fnott package to use.

Type:package

Default:pkgs.fnott

Declared by:

<home-manager/modules/services/fnott.nix>
services.fnott.configFile

Path to the configuration file read by fnott.

Note that environment variables in the path won’t be properly expanded.

The configuration specified underservices.fnott.settings will be generated andwritten to$XDG_CONFIG_HOME/fnott/fnott.iniregardless of this option. This allows using a mutable configuration filegenerated from the immutable one, useful in scenarios where live reloading is desired.

Type:string or absolute path

Default:"$XDG_CONFIG_HOME/fnott/fnott.ini"

Declared by:

<home-manager/modules/services/fnott.nix>
services.fnott.extraFlags

Extra arguments to use for executing fnott.

Type:list of string

Default:[ ]

Example:

[  "-s"]

Declared by:

<home-manager/modules/services/fnott.nix>
services.fnott.settings

Configuration written to$XDG_CONFIG_HOME/fnott/fnott.ini.

Seefnott.ini(5) for a list of available options andhttps://codeberg.org/dnkl/fnott/src/branch/master/fnott.inifor an example configuration.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  main = {    notification-margin = 5;  };  low = {    timeout = 5;    title-font = "Dina:weight=bold:slant=italic";    title-color = "ffffff";  };}

Declared by:

<home-manager/modules/services/fnott.nix>
services.fusuma.enable

Whether to enable the fusuma systemd service to automatically enable touchpad gesture.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/fusuma.nix>
services.fusuma.package

The fusuma package to use.

Type:package

Default:pkgs.fusuma

Declared by:

<home-manager/modules/services/fusuma.nix>
services.fusuma.extraPackages

Extra packages needs to bring to the scope of fusuma service.

Type:list of package

Default:pkgs.xdotool pkgs.coreutils pkgs.xorg.xprop

Example:

with pkgs; [ xdotool coreutils xorg.xprop ];

Declared by:

<home-manager/modules/services/fusuma.nix>
services.fusuma.settings

YAML config that will override the default fusuma configuration.

Type:YAML 1.1 value

Example:

{  threshold = {    swipe = 0.1;  };  interval = {    swipe = 0.7;  };  swipe = {    "3" = {      left = {        # GNOME: Switch to left workspace        command = "xdotool key ctrl+alt+Right";      };    };  };};

Declared by:

<home-manager/modules/services/fusuma.nix>
services.gammastep.enable

Whether to enable Gammastep.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.enableVerboseLogging

Whether to enable verbose service logging.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.package

Gammastep derivation to use.

Type:package

Default:pkgs.gammastep

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.dawnTime

Set the time interval of dawn manually.The times must be specified as HH:MM in 24-hour format.

Type:null or string

Default:null

Example:"6:00-7:45"

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.duskTime

Set the time interval of dusk manually.The times must be specified as HH:MM in 24-hour format.

Type:null or string

Default:null

Example:"18:35-20:15"

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.latitude

Your current latitude, between-90.0 and90.0. Must be provided along withlongitude.

Type:null or string or floating point number

Default:null

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.longitude

Your current longitude, between-180.0 and180.0. Must be provided along withlatitude.

Type:null or string or floating point number

Default:null

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.provider

The location provider to use for determining your location. If set tomanual you must also provide latitude/longitude.If set togeoclue2, you must also enable the globalgeoclue2 service.

Type:one of “manual”, “geoclue2”

Default:"manual"

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.settings

The configuration to pass to Gammastep.Available options for Gammastep described ingammastep(1).

Type:open submodule of attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  general = {    adjustment-method = "randr";  };  randr = {    screen = 0;  };};

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.temperature.day

Colour temperature to use during the day, between1000 and25000 K.

Type:signed integer

Default:5500

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.temperature.night

Colour temperature to use at night, between1000 and25000 K.

Type:signed integer

Default:3700

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.gammastep.tray

Start the gammastep-indicator tray applet.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/gammastep.nix>
services.getmail.enable

Whether to enable the getmail systemd service to automatically retrieve mail.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/getmail.nix>
services.getmail.package

The getmail package to use.

Type:package

Default:pkgs.getmail6

Declared by:

<home-manager/modules/services/getmail.nix>
services.getmail.frequency

The refresh frequency. Checkman systemd.time formore information on the syntax. If you use a gpg-agent incombination with the passwordCommand, keep the pollfrequency below the cache-ttl value (as set by thedefault) to avoid pinentry askingpermanently for a password.

Type:string

Default:"*:0/5"

Example:"hourly"

Declared by:

<home-manager/modules/services/getmail.nix>
services.git-sync.enable

Whether to enable git-sync services.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.package

The git-sync package to use.

Type:package

Default:pkgs.git-sync

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.repositories

The repositories that should be synchronized.

Type:attribute set of (submodule)

Example:

{  xyz = {    path = "${config.home.homeDirectory}/foo/home-manager";    uri = "git@github.com:nix-community/home-manager.git";    interval = 1000;  };}

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.repositories.<name>.extraPackages

Extra packages available to git-sync.

Type:list of package

Default:[ ]

Example:with pkgs; [ git-crypt ]

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.repositories.<name>.interval

The interval, specified in seconds, at which the synchronization willbe triggered even without filesystem changes.

Type:signed integer

Default:500

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.repositories.<name>.path

The path at which to sync the repository

Type:absolute path

Declared by:

<home-manager/modules/services/git-sync.nix>
services.git-sync.repositories.<name>.uri

The URI of the remote to be synchronized. This is only used in theevent that the directory does not already exist. Seehttps://git-scm.com/docs/git-clone#_git_urlsfor the supported URIs.

This option is not supported on Darwin.

Type:string

Example:"git+ssh://user@example.com:/~[user]/path/to/repo.git"

Declared by:

<home-manager/modules/services/git-sync.nix>
services.glance.enable

Whether to enable glance.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/glance.nix>
services.glance.package

The glance package to use.

Type:package

Default:pkgs.glance

Declared by:

<home-manager/modules/services/glance.nix>
services.glance.settings

Configuration written to a yaml file that is read by glance. Seehttps://github.com/glanceapp/glance/blob/main/docs/configuration.mdfor more.

Type:YAML 1.1 value

Default:

{  pages = [    {      columns = [        {          size = "full";          widgets = [            {              type = "calendar";            }          ];        }      ];      name = "Calendar";    }  ];}

Example:

{  pages = [    {      columns = [        {          size = "full";          widgets = [            {              type = "calendar";            }            {              location = "London, United Kingdom";              type = "weather";            }          ];        }      ];      name = "Home";    }  ];  server = {    port = 5678;  };}

Declared by:

<home-manager/modules/services/glance.nix>
services.gnome-keyring.enable

Whether to enable GNOME Keyring.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/gnome-keyring.nix>
services.gnome-keyring.package

The gnome-keyring package to use.

Type:package

Default:pkgs.gnome-keyring

Declared by:

<home-manager/modules/services/gnome-keyring.nix>
services.gnome-keyring.components

The GNOME keyring components to start. If empty then thedefault set of components will be started.

Type:list of (one of “pkcs11”, “secrets”, “ssh”)

Default:[ ]

Declared by:

<home-manager/modules/services/gnome-keyring.nix>
services.gpg-agent.enable

Whether to enable GnuPG private key agent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableExtraSocket

Whether to enable extra socket of the GnuPG key agent (useful for GPGAgent forwarding).

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableScDaemon

Make use of the scdaemon tool. This option has the effect ofenabling the ability to do smartcard operations. Whendisabled, this option passesdisable-scdaemon setting to gpg-agent.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableSshSupport

Whether to use the GnuPG key agent for SSH keys.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.defaultCacheTtl

Set the time a cache entry is valid to the given number ofseconds.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.defaultCacheTtlSsh

Set the time a cache entry used for SSH keys is valid to thegiven number of seconds.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.extraConfig

Extra configuration lines to append to the gpg-agentconfiguration file.

Type:strings concatenated with “\n”

Default:""

Example:

''  allow-emacs-pinentry  allow-loopback-pinentry''

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.grabKeyboardAndMouse

Tell the pinentry to grab the keyboard and mouse. Thisoption should in general be used to avoid X-sniffingattacks. When disabled, this option passesno-grab setting to gpg-agent.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.maxCacheTtl

Set the maximum time a cache entry is valid to n seconds. After thistime a cache entry will be expired even if it has been accessedrecently or has been set using gpg-preset-passphrase. The default is2 hours (7200 seconds).

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.maxCacheTtlSsh

Set the maximum time a cache entry used for SSH keys is valid to nseconds. After this time a cache entry will be expired even if it hasbeen accessed recently or has been set using gpg-preset-passphrase.The default is 2 hours (7200 seconds).

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.noAllowExternalCache

Tell Pinentry not to enable features which use an external cache forpassphrases.

Some desktop environments prefer to unlock all credentials with onemaster password and may have installed a Pinentry which employs anadditional external cache to implement such a policy. By using thisoption the Pinentry is advised not to make use of such a cache andinstead always ask the user for the requested passphrase.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.pinentry.package

The pinentry-gnome3 package to use. Which pinentry interface to use. If notnull, it setspinentry-program ingpg-agent.conf. Beware thatpinentry-gnome3 may not work on non-GNOME systems. You can fix it byadding the following to your configuration:

home.packages = [ pkgs.gcr ];

Type:null or package

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.pinentry.program

Which program to search for in the configuredpinentry.package.

Type:null or string

Example:"pinentry-wayprompt"

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.sshKeys

Which GPG keys (by keygrip) to expose as SSH keys.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.gpg-agent.verbose

Whether to produce verbose output.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/gpg-agent.nix>
services.grobi.enable

Whether to enable the grobi display setup daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/grobi.nix>
services.grobi.package

The grobi package to use.

Type:package

Default:pkgs.grobi

Declared by:

<home-manager/modules/services/grobi.nix>
services.grobi.executeAfter

Commands to be run after an output configuration waschanged. The Nix value declared here will be translated toJSON and written to theexecute_after keyin$XDG_CONFIG_HOME/grobi.conf.

Type:list of string

Default:[ ]

Example:

[  "setxkbmap dvorak"]

Declared by:

<home-manager/modules/services/grobi.nix>
services.grobi.rules

These are the rules grobi tries to match to the currentoutput configuration. The rules are evaluated top to bottom,the first matching rule is applied and processing stops. Seehttps://github.com/fd0/grobi/blob/master/doc/grobi.conffor more information. The Nix value declared here will betranslated to JSON and written to theruleskey in$XDG_CONFIG_HOME/grobi.conf.

Type:list of attribute set of (string or boolean or signed integer or list of string)

Default:[ ]

Example:

[  {    name = "Home";    outputs_connected = [ "DP-2" ];    configure_single = "DP-2";    primary = true;    atomic = true;    execute_after = [      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 96"      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";    ];  }  {    name = "Mobile";    outputs_disconnected = [ "DP-2" ];    configure_single = "eDP-1";    primary = true;    atomic = true;    execute_after = [      "${pkgs.xorg.xrandr}/bin/xrandr --dpi 120"      "${pkgs.xmonad-with-packages}/bin/xmonad --restart";    ];  }]

Declared by:

<home-manager/modules/services/grobi.nix>
services.gromit-mpx.enable

Whether to enable Gromit-MPX annotation tool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.package

The gromit-mpx package to use.

Type:package

Default:pkgs.gromit-mpx

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.hotKey

A keysym or raw keycode that toggles the activation state ofgromit-mpx. Set tonull to disable thehotkey in which case you’ll have to activate gromit-mpxmanually using the command line.

Type:null or string or (positive integer, meaning >0)

Default:"F9"

Example:"Insert"

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.opacity

Opacity of the drawing overlay.

Type:float between 0.0 and 1.0 (inclusive)

Default:0.75

Example:1.0

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools

Tool definitions for gromit-mpx to use.

Type:list of (submodule)

Default:

[  {    color = "red";    device = "default";    size = 5;    type = "pen";  }  {    color = "blue";    device = "default";    modifiers = [      "SHIFT"    ];    size = 5;    type = "pen";  }  {    color = "yellow";    device = "default";    modifiers = [      "CONTROL"    ];    size = 5;    type = "pen";  }  {    arrowSize = 1;    color = "green";    device = "default";    modifiers = [      "2"    ];    size = 6;    type = "pen";  }  {    device = "default";    modifiers = [      "3"    ];    size = 75;    type = "eraser";  }]

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.arrowSize

If notnull, automatically draw an arrowat the end of a stroke with the given size.

Type:null or (positive integer, meaning >0)

Default:null

Example:2

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.color

The stroke (or recolor) color of the tool.

Type:string

Default:"red"

Example:"#ff00ff"

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.device

Use this tool with the given xinput device. The device withthe name default works with any input.

Type:string

Example:"default"

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.modifiers

Only activate this tool if the given modifiers are also active.

Type:list of (one of “1”, “2”, “3”, “4”, “5”, “SHIFT”, “CONTROL”, “ALT”, “META”)

Default:[ ]

Example:

[  "SHIFT"]

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.size

The tool size.

Type:positive integer, meaning >0

Default:5

Example:3

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.tools.*.type

Which type of tool this is.

Type:one of “pen”, “eraser”, “recolor”

Default:"pen"

Example:"eraser"

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.gromit-mpx.undoKey

A keysym or raw keycode that causes gromit-mpx to undo thelast stroke. Use this key along with the shift key to redo anundone stoke. Set tonull to disable theundo hotkey.

Type:null or string or (positive integer, meaning >0)

Default:"F10"

Declared by:

<home-manager/modules/services/gromit-mpx.nix>
services.home-manager.autoExpire.enable

Whether to enable the Home Manager expire service that periodically expire yourold Home Manager generations.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/home-manager-auto-expire.nix>
services.home-manager.autoExpire.frequency

The interval at which the Home Manager auto expire is run.

This value is passed to the systemd timer configurationas theOnCalendar option.

The format is described insystemd.time(7).

On Darwin it must be one of: hourly, daily, weekly, monthly, semiannually, annually, which are implemented as defined insystemd.time(7).

Type:string

Default:"monthly"

Example:"weekly"

Declared by:

<home-manager/modules/services/home-manager-auto-expire.nix>
services.home-manager.autoExpire.store.cleanup

Whether to enable to cleanup Nix store when the Home Manager expire service runs.

It will usenix-collect-garbage to cleanup the store,removing all unreachable store objects from the current user(i.e.: not only the expired Home Manager generations).

This may not be what you want, this is why this option is disabledby default.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/home-manager-auto-expire.nix>
services.home-manager.autoExpire.store.options

Options given tonix-collect-garbage when the service runs.

Type:string

Default:""

Example:"--delete-older-than 30d"

Declared by:

<home-manager/modules/services/home-manager-auto-expire.nix>
services.home-manager.autoExpire.timestamp

Remove generations older thanTIMESTAMP whereTIMESTAMP isinterpreted as in the -d argument of the date tool.

Type:string

Default:"-30 days"

Example:"-7 days"

Declared by:

<home-manager/modules/services/home-manager-auto-expire.nix>
services.home-manager.autoUpgrade.enable

Whether to enable the Home Manager upgrade service that periodically updates your Nixchannels before runninghome-manager switch.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/home-manager-auto-upgrade.nix>
services.home-manager.autoUpgrade.flakeDir

The directory of the flake to update.

Type:string

Default:"${config.xdg.configHome}/home-manager"

Example:"/home/user/dotfiles"

Declared by:

<home-manager/modules/services/home-manager-auto-upgrade.nix>
services.home-manager.autoUpgrade.frequency

The interval at which the Home Manager auto upgrade is run.This value is passed to the systemd timer configurationas theOnCalendar option.The format is described insystemd.time(7).

Type:string

Example:"weekly"

Declared by:

<home-manager/modules/services/home-manager-auto-upgrade.nix>
services.home-manager.autoUpgrade.useFlake

Whether to use ‘nix flake update’ instead of ‘nix-channel --update’.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/home-manager-auto-upgrade.nix>
services.hound.enable

Whether to enable hound.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hound.nix>
services.hound.package

The hound package to use.

Type:package

Default:pkgs.hound

Declared by:

<home-manager/modules/services/hound.nix>
services.hound.databasePath

The Hound database path.

Type:absolute path

Default:"$XDG_DATA_HOME/hound"

Declared by:

<home-manager/modules/services/hound.nix>
services.hound.listenAddress

Listen address of the Hound daemon.

Type:string

Default:"localhost:6080"

Declared by:

<home-manager/modules/services/hound.nix>
services.hound.maxConcurrentIndexers

Limit the amount of concurrent indexers.

Type:positive integer, meaning >0

Default:2

Declared by:

<home-manager/modules/services/hound.nix>
services.hound.repositories

The repository configuration.

Type:attribute set of (JSON value)

Default:{ }

Example:

{  SomeGitRepo = {    url = "https://www.github.com/YourOrganization/RepoOne.git";    ms-between-poll = 10000;    exclude-dot-files = true;  };}

Declared by:

<home-manager/modules/services/hound.nix>
services.hypridle.enable

Whether to enable Hypridle, Hyprland’s idle daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hypridle.nix>
services.hypridle.package

The hypridle package to use.

Type:null or package

Default:pkgs.hypridle

Declared by:

<home-manager/modules/services/hypridle.nix>
services.hypridle.importantPrefixes

List of prefix of attributes to source at the top of the config.

Type:list of string

Default:

[  "$"]

Example:

[  "$"]

Declared by:

<home-manager/modules/services/hypridle.nix>
services.hypridle.settings

Hypridle configuration written in Nix. Entries with the same keyshould be written as lists. Variables’ and colors’ names should bequoted. Seehttps://wiki.hypr.land/Hypr-Ecosystem/hypridle/ for more examples.

Type:Hypridle configuration value

Default:{ }

Example:

{  general = {    after_sleep_cmd = "hyprctl dispatch dpms on";    ignore_dbus_inhibit = false;    lock_cmd = "hyprlock";  };  listener = [    {      timeout = 900;      on-timeout = "hyprlock";    }    {      timeout = 1200;      on-timeout = "hyprctl dispatch dpms off";      on-resume = "hyprctl dispatch dpms on";    }  ];}

Declared by:

<home-manager/modules/services/hypridle.nix>
services.hypridle.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Example:"hyprland-session.target"

Declared by:

<home-manager/modules/services/hypridle.nix>
services.hyprpaper.enable

Whether to enable Hyprpaper, Hyprland’s wallpaper daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hyprpaper.nix>
services.hyprpaper.package

The hyprpaper package to use.

Type:null or package

Default:pkgs.hyprpaper

Declared by:

<home-manager/modules/services/hyprpaper.nix>
services.hyprpaper.importantPrefixes

List of prefix of attributes to source at the top of the config.

Type:list of string

Default:

[  "$"]

Example:

[  "$"]

Declared by:

<home-manager/modules/services/hyprpaper.nix>
services.hyprpaper.settings

hyprpaper configuration written in Nix. Entries with the same keyshould be written as lists. Variables’ and colors’ names should bequoted. Seehttps://wiki.hypr.land/Hypr-Ecosystem/hyprpaper/ for more examples.

Type:Hyprpaper configuration value

Default:{ }

Example:

{  ipc = "on";  splash = false;  splash_offset = 2.0;  preload =    [ "/share/wallpapers/buttons.png" "/share/wallpapers/cat_pacman.png" ];  wallpaper = [    "DP-3,/share/wallpapers/buttons.png"    "DP-1,/share/wallpapers/cat_pacman.png"  ];}

Declared by:

<home-manager/modules/services/hyprpaper.nix>
services.hyprpolkitagent.enable

Whether to enable Hyprland Policykit Agent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hyprpolkitagent.nix>
services.hyprpolkitagent.package

The hyprpolkitagent package to use.

Type:package

Default:pkgs.hyprpolkitagent

Declared by:

<home-manager/modules/services/hyprpolkitagent.nix>
services.hyprshell.enable

Whether to enable hyprshell.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.package

The hyprshell package to use.

Type:null or package

Default:pkgs.hyprshell

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.settings

Configuration settings for hyprshell. All the avaiblableoptions can be found here:https://github.com/H3rmt/hyprshell/blob/hyprshell-release/CONFIGURE.md#config-options

Type:JSON value

Default:{ }

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.style

CSS file for customizing hyprshell. All the availableoptions can be found here:https://github.com/H3rmt/hyprshell/blob/hyprshell-release/CONFIGURE.md#css

Type:absolute path or strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.systemd.enable

Whether to enable the hyprshell Systemd service.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.systemd.args

Arguments to pass to the hyprshell service

Type:string

Default:""

Example:"-vv"

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprshell.systemd.target

The Systemd target that will start the hyprshell service

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/services/hyprshell.nix>
services.hyprsunset.enable

Whether to enable Hyprsunset, Hyprland’s blue-light filter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.package

The hyprsunset package to use.

Type:package

Default:pkgs.hyprsunset

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.extraArgs

Additional command-line arguments to pass tohyprsunset.

Type:list of string

Default:[ ]

Example:

[  "--verbose"]

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.importantPrefixes

List of prefix of attributes to source at the top of the config.

Type:list of string

Default:

[  "$"]

Example:

[  "$"]

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.settings

Hyprsunset configuration written in Nix. Entries with the same keyshould be written as lists. Variables’ and colors’ names should bequoted. Seehttps://wiki.hypr.land/Hypr-Ecosystem/hyprsunset/ for more examples.

Type:Hyprsunset configuration value

Default:{ }

Example:

{  max-gamma = 150;  profile = [    {      time = "7:30";      identity = true;    }    {      time = "21:00";      temperature = 5000;      gamma = 0.8;    }  ];};

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Example:"hyprland-session.target"

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.transitions

Deprecated - Useservices.hyprsunset.settings instead to manage transitions.

Set of transitions for different times of day (e.g., sunrise, sunset)

Type:attribute set of (submodule)

Default:{ }

Example:

{  sunrise = {    calendar = "*-*-* 06:00:00";    requests = [      [ "temperature" "6500" ]      [ "gamma 100" ]    ];  };  sunset = {    calendar = "*-*-* 19:00:00";    requests = [      [ "temperature" "3500" ]    ];  };}

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.transitions.<name>.calendar

Deprecated - Useservices.hyprsunset.settings instead to manage transitions.

Systemd calendar expression for when to run this transition.

Type:string

Example:"*-*-* 06:00:00"

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.hyprsunset.transitions.<name>.requests

Deprecated - Useservices.hyprsunset.settings instead to manage transitions.

List of requests to pass tohyprctl hyprsunset for this transition. Each inner list represents a separate command.

Type:list of list of string

Default:[ ]

Example:

[  [ "temperature" "3500" ]]

Declared by:

<home-manager/modules/services/hyprsunset.nix>
services.imapnotify.enable

Whether to enable imapnotify.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/imapnotify>
services.imapnotify.package

The goimapnotify package to use.

Type:package

Default:pkgs.goimapnotify

Example:pkgs.imapnotify

Declared by:

<home-manager/modules/services/imapnotify>
services.imapnotify.path

List of packages to provide in PATH for the imapnotify service.

Note, this does not apply to the Darwin launchd service.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/services/imapnotify>
services.jankyborders.enable

Whether to enable jankyborders.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/jankyborders.nix>
services.jankyborders.package

The jankyborders package to use.

Type:package

Default:pkgs.jankyborders

Declared by:

<home-manager/modules/services/jankyborders.nix>
services.jankyborders.errorLogFile

Absolute path to log all stderr output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/jankyborders/err.log

Example:"/Users/khaneliman/Library/Logs/jankyborders.log"

Declared by:

<home-manager/modules/services/jankyborders.nix>
services.jankyborders.outLogFile

Absolute path to log all stdout output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/jankyborders/out.log

Example:"/Users/khaneliman/Library/Logs/jankyborders.log"

Declared by:

<home-manager/modules/services/jankyborders.nix>
services.jankyborders.settings

Configuration settings to passed toborders in$XDG_CONFIG_HOME/borders/bordersc. Seehttps://github.com/FelixKratz/JankyBordersfor the documentation.

Type:attribute set of anything

Default:{ }

Example:

        {          style=round;        width=6.0;        hidpi="off";        active_color="0xffe2e2e3";        inactive_color="0xff414550";        }

Declared by:

<home-manager/modules/services/jankyborders.nix>
services.jellyfin-mpv-shim.enable

Whether to enable Jellyfin mpv shim.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/jellyfin-mpv-shim.nix>
services.jellyfin-mpv-shim.package

The jellyfin-mpv-shim package to use.

Type:package

Default:pkgs.jellyfin-mpv-shim

Declared by:

<home-manager/modules/services/jellyfin-mpv-shim.nix>
services.jellyfin-mpv-shim.mpvBindings

mpv input bindings to use for jellyfin-mpv-shim.If null, jellyfin-mpv-shim will use its default input configuration.

Type:null or (attribute set of string)

Default:null

Example:

{          WHEEL_UP = "seek 10";          WHEEL_DOWN = "seek -10";        }

Declared by:

<home-manager/modules/services/jellyfin-mpv-shim.nix>
services.jellyfin-mpv-shim.mpvConfig

mpv configuration options to use for jellyfin-mpv-shim.If null, jellyfin-mpv-shim will use its default mpv configuration.

Type:null or (attribute set of (string or signed integer or boolean or floating point number))

Default:null

Example:

{          profile = "gpu-hq";          force-window = true;        }

Declared by:

<home-manager/modules/services/jellyfin-mpv-shim.nix>
services.jellyfin-mpv-shim.settings

Configuration written to$XDG_CONFIG_HOME/jellyfin-mpv-shim/conf.json. Seehttps://github.com/jellyfin/jellyfin-mpv-shim#configurationfor the configuration documentation.

Type:JSON value

Default:{ }

Example:

{  allow_transcode_to_h265 = false;  always_transcode = false;  audio_output = "hdmi";  auto_play = true;  fullscreen = true;  player_name = "mpv-shim";}

Declared by:

<home-manager/modules/services/jellyfin-mpv-shim.nix>
services.kanshi.enable

Whether to enable kanshi, a Wayland daemon that automatically configures outputs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.package

The kanshi package to use.

Type:package

Default:pkgs.kanshi

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.extraConfig

Extra configuration lines to append to the kanshiconfiguration file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles

Attribute set of profiles.

Type:attribute set of (submodule)

Default:{ }

Example:

{  undocked = {    outputs = [      {        criteria = "eDP-1";      }    ];  };  docked = {    outputs = [      {        criteria = "eDP-1";      }      {        criteria = "Some Company ASDF 4242";        transform = "90";      }    ];  };}

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.exec

Commands executed after the profile is successfully applied.Note that if you provide multiple commands, they will beexecuted asynchronously with no guaranteed ordering.

Type:(list of string) or string convertible to it

Default:[ ]

Example:"[ \${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1 ]"

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.name

Profile name

Type:string

Default:""

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs

Outputs configuration.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.adaptiveSync

Enables or disables adaptive synchronization(aka. Variable Refresh Rate).

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.alias

Defines an alias for the output

Type:null or string

Default:null

Example:"laptopMonitor"

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.criteria

The criteria can either be an output name, an output description or “*”.The latter can be used to match any output.

Onsway(1),output names and descriptions can be obtained viaswaymsg -t get_outputs.

Type:string

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.mode

<width>x<height>[@<rate>[Hz]]

Configures the specified output to use the specified mode.Modes are a combination of width and height (in pixels) anda refresh rate (in Hz) that your display can be configured to use.

Type:null or string

Default:null

Example:"1920x1080@60Hz"

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.position

<x>,<y>

Places the output at the specified position in the global coordinatesspace.

Type:null or string

Default:null

Example:"1600,0"

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.scale

Scales the output by the specified scale factor.

Type:null or floating point number

Default:null

Example:2

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.status

Enables or disables the specified output.

Type:null or one of “enable”, “disable”

Default:null

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.profiles.<name>.outputs.*.transform

Sets the output transform.

Type:null or one of “normal”, “90”, “180”, “270”, “flipped”, “flipped-90”, “flipped-180”, “flipped-270”

Default:null

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.settings

Ordered list of directives.See kanshi(5) for informations.

Type:list of attribute-tagged union

Default:[ ]

Example:

[  { include = "path/to/included/files"; }  { output.criteria = "eDP-1";    output.scale = 2;  }  { profile.name = "undocked";    profile.outputs = [      {        criteria = "eDP-1";      }    ];  }  { profile.name = "docked";    profile.outputs = [      {        criteria = "eDP-1";      }      {        criteria = "Some Company ASDF 4242";        transform = "90";      }    ];  }]

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.settings.*.include

Include as another file frompath.Expands shell syntax (seewordexp(3) for details).

Type:string

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.settings.*.output

output attribute set.

Type:submodule

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.settings.*.output.adaptiveSync

Enables or disables adaptive synchronization(aka. Variable Refresh Rate).

Type:null or boolean

Default:null

Example:true

services.kanshi.settings.*.output.alias

Defines an alias for the output

Type:null or string

Default:null

Example:"laptopMonitor"

services.kanshi.settings.*.output.criteria

The criteria can either be an output name, an output description or “*”.The latter can be used to match any output.

Onsway(1),output names and descriptions can be obtained viaswaymsg -t get_outputs.

Type:string

services.kanshi.settings.*.output.mode

<width>x<height>[@<rate>[Hz]]

Configures the specified output to use the specified mode.Modes are a combination of width and height (in pixels) anda refresh rate (in Hz) that your display can be configured to use.

Type:null or string

Default:null

Example:"1920x1080@60Hz"

services.kanshi.settings.*.output.position

<x>,<y>

Places the output at the specified position in the global coordinatesspace.

Type:null or string

Default:null

Example:"1600,0"

services.kanshi.settings.*.output.scale

Scales the output by the specified scale factor.

Type:null or floating point number

Default:null

Example:2

services.kanshi.settings.*.output.status

Enables or disables the specified output.

Type:null or one of “enable”, “disable”

Default:null

services.kanshi.settings.*.output.transform

Sets the output transform.

Type:null or one of “normal”, “90”, “180”, “270”, “flipped”, “flipped-90”, “flipped-180”, “flipped-270”

Default:null

services.kanshi.settings.*.profile

profile attribute set.

Type:submodule

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kanshi.settings.*.profile.exec

Commands executed after the profile is successfully applied.Note that if you provide multiple commands, they will beexecuted asynchronously with no guaranteed ordering.

Type:(list of string) or string convertible to it

Default:[ ]

Example:"[ \${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1 ]"

services.kanshi.settings.*.profile.name

Profile name

Type:string

Default:""

services.kanshi.settings.*.profile.outputs

Outputs configuration.

Type:list of (submodule)

Default:[ ]

services.kanshi.settings.*.profile.outputs.*.adaptiveSync

Enables or disables adaptive synchronization(aka. Variable Refresh Rate).

Type:null or boolean

Default:null

Example:true

services.kanshi.settings.*.profile.outputs.*.alias

Defines an alias for the output

Type:null or string

Default:null

Example:"laptopMonitor"

services.kanshi.settings.*.profile.outputs.*.criteria

The criteria can either be an output name, an output description or “*”.The latter can be used to match any output.

Onsway(1),output names and descriptions can be obtained viaswaymsg -t get_outputs.

Type:string

services.kanshi.settings.*.profile.outputs.*.mode

<width>x<height>[@<rate>[Hz]]

Configures the specified output to use the specified mode.Modes are a combination of width and height (in pixels) anda refresh rate (in Hz) that your display can be configured to use.

Type:null or string

Default:null

Example:"1920x1080@60Hz"

services.kanshi.settings.*.profile.outputs.*.position

<x>,<y>

Places the output at the specified position in the global coordinatesspace.

Type:null or string

Default:null

Example:"1600,0"

services.kanshi.settings.*.profile.outputs.*.scale

Scales the output by the specified scale factor.

Type:null or floating point number

Default:null

Example:2

services.kanshi.settings.*.profile.outputs.*.status

Enables or disables the specified output.

Type:null or one of “enable”, “disable”

Default:null

services.kanshi.settings.*.profile.outputs.*.transform

Sets the output transform.

Type:null or one of “normal”, “90”, “180”, “270”, “flipped”, “flipped-90”, “flipped-180”, “flipped-270”

Default:null

services.kanshi.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/services/kanshi.nix>
services.kbfs.enable

Whether to enable Keybase File System.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/kbfs.nix>
services.kbfs.package

The kbfs package to use.

Type:package

Default:pkgs.kbfs

Declared by:

<home-manager/modules/services/kbfs.nix>
services.kbfs.extraFlags

Additional flags to pass to the Keybase filesystem on launch.

Type:list of string

Default:[ ]

Example:

[  "-label kbfs"  "-mount-type normal"]

Declared by:

<home-manager/modules/services/kbfs.nix>
services.kbfs.mountPoint

Mount point for the Keybase filesystem, relative toHOME.

Type:string

Default:"keybase"

Declared by:

<home-manager/modules/services/kbfs.nix>
services.kdeconnect.enable

Whether to enable KDE connect.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/kdeconnect.nix>
services.kdeconnect.package

The kdeconnect-kde package to use.

Type:package

Default:pkgs.kdePackages.kdeconnect-kde

Example:pkgs.plasma5Packages.kdeconnect-kde

Declared by:

<home-manager/modules/services/kdeconnect.nix>
services.kdeconnect.indicator

Whether to enable kdeconnect-indicator service.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/kdeconnect.nix>
services.keybase.enable

Whether to enable Keybase.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/keybase.nix>
services.keybase.package

The keybase package to use.

Type:package

Default:pkgs.keybase

Declared by:

<home-manager/modules/services/keybase.nix>
services.keynav.enable

Whether to enable keynav.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/keynav.nix>
services.keynav.package

The keynav package to use.

Type:package

Default:pkgs.keynav

Declared by:

<home-manager/modules/services/keynav.nix>
services.librespot.enable

Whether to enable Librespot (Spotify Connect speaker daemon).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/librespot.nix>
services.librespot.package

The librespot package to use.

Type:package

Default:pkgs.librespot

Declared by:

<home-manager/modules/services/librespot.nix>
services.librespot.settings

Command-line arguments to pass to librespot.

Boolean values render as a flag if true, and nothing if false.Null values are ignored.All other values are rendered as options with an argument.

Type:open submodule of attribute set of (null or boolean or string or signed integer or absolute path)

Default:{ }

Declared by:

<home-manager/modules/services/librespot.nix>
services.librespot.settings.cache

Path to a directory where files will be cached after downloading.

Type:null or absolute path

Default:"$XDG_CACHE_HOME/librespot"

Declared by:

<home-manager/modules/services/librespot.nix>
services.librespot.settings.system-cache

Path to a directory where system files (credentials, volume) will be cached.

Type:null or absolute path

Default:"$XDG_STATE_HOME/librespot"

Declared by:

<home-manager/modules/services/librespot.nix>
services.lieer.enable

Whether to enable lieer Gmail synchronization service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/lieer.nix>
services.linux-wallpaperengine.enable

Whether to enable linux-wallpaperengine, an implementation of Wallpaper Engine functionality.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.package

The linux-wallpaperengine package to use.

Type:package

Default:pkgs.linux-wallpaperengine

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.assetsPath

Path to the assets directory.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.clamping

Clamping mode for all wallpapers.

Type:null or one of “clamp”, “border”, “repeat”

Default:null

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers

Define wallpapers.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.audio.automute

Automute when another app is playing sound.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.audio.processing

Enables audio processing for background.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.audio.silent

Mutes all sound of the wallpaper.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.extraOptions

Extra arguments to pass to the linux-wallpaperengine command for this wallpaper.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.fps

Limits the FPS to a given number.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.monitor

Which monitor to display the wallpaper.

Type:string

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.scaling

Scaling mode for this wallpaper.

Type:null or one of “stretch”, “fit”, “fill”, “default”

Default:null

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.linux-wallpaperengine.wallpapers.*.wallpaperId

Wallpaper ID to be used.

Type:string

Declared by:

<home-manager/modules/services/linux-wallpaperengine.nix>
services.listenbrainz-mpd.enable

Whether to enable listenbrainz-mpd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/listenbrainz-mpd.nix>
services.listenbrainz-mpd.package

The listenbrainz-mpd package to use.

Type:null or package

Default:pkgs.listenbrainz-mpd

Declared by:

<home-manager/modules/services/listenbrainz-mpd.nix>
services.listenbrainz-mpd.settings

Configuration for listenbrainz-mpd written to$XDG_CONFIG_HOME/listenbrainz-mpd/config.toml.

Type:TOML value

Default:{ }

Example:

{  submission = {    token_file = "/run/secrets/listenbrainz-mpd";  };}

Declared by:

<home-manager/modules/services/listenbrainz-mpd.nix>
services.local-ai.enable

Whether to enable LocalAI is the free, Open Source OpenAI alternative…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/local-ai.nix>
services.local-ai.package

The local-ai package to use.

Type:package

Default:pkgs.local-ai

Declared by:

<home-manager/modules/services/local-ai.nix>
services.local-ai.environment

Additional environment passed to local-ai service. Used to configure local-ai

Seehttps://localai.io/basics for available options.

Type:attribute set of string

Default:{ }

Declared by:

<home-manager/modules/services/local-ai.nix>
services.lorri.enable

Whether to enable lorri build daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/lorri.nix>
services.lorri.enableNotifications

Whether to enable lorri build notifications.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/lorri.nix>
services.lorri.package

The lorri package to use.

Type:package

Default:pkgs.lorri

Declared by:

<home-manager/modules/services/lorri.nix>
services.lorri.nixPackage

Which nix package to use.

Type:package

Default:pkgs.nix

Example:pkgs.nixVersions.unstable

Declared by:

<home-manager/modules/services/lorri.nix>
services.ludusavi.enable

Whether to enable Ludusavi game backup tool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.ludusavi.package

The ludusavi package to use.

Type:package

Default:pkgs.ludusavi

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.ludusavi.backupNotification

Send a notification message after a successful backup.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.ludusavi.configFile

Path to a Ludusaviconfig.yaml. Mutually exclusive with thesettings option.See https://github.com/mtkennerly/ludusavi/blob/master/docs/help/configuration-file.md for available options.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.ludusavi.frequency

How often to run ludusavi. This value is passed to the systemdtimer configuration as the onCalendar option. Seesystemd.time(7)for more information about the format.

Type:string

Default:"daily"

Example:"*-*-* 8:00:00"

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.ludusavi.settings

Ludusavi configuration as an attribute set. Seehttps://github.com/mtkennerly/ludusavi#configuration-filefor available options.

Type:YAML 1.1 value

Default:

{  backup = {    path = "$XDG_STATE_HOME/backups/ludusavi";  };  manifest = {    url = "https://raw.githubusercontent.com/mtkennerly/ludusavi-manifest/master/data/manifest.yaml";  };  restore = {    path = "$XDG_STATE_HOME/backups/ludusavi";  };  roots = [ ];}

Example:

{  backup = {    path = "~/.local/state/backups/ludusavi";  };  language = "en-US";  restore = {    path = "~/.local/state/backups/ludusavi";  };  roots = [    {      path = "~/.local/share/Steam";      store = "steam";    }  ];  theme = "light";}

Declared by:

<home-manager/modules/services/ludusavi.nix>
services.lxqt-policykit-agent.enable

Whether to enable LXQT Policykit Agent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/lxqt-policykit-agent.nix>
services.lxqt-policykit-agent.package

The lxqt-policykit package to use.

Type:package

Default:pkgs.lxqt.lxqt-policykit

Declared by:

<home-manager/modules/services/lxqt-policykit-agent.nix>
services.macos-remap-keys.enable

Whether to enable macOS key remapping service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/macos-remap-keys>
services.macos-remap-keys.keyboard

Mapping of keyboard keys to remap

Type:attribute set of string

Default:{ }

Example:

{  Capslock = "Escape";  SquareBracketOpen = "SquareBracketClose";}

Declared by:

<home-manager/modules/services/macos-remap-keys>
services.macos-remap-keys.keypad

Mapping of keypad keys to remap

Type:attribute set of string

Default:{ }

Example:

{  Enter = "Equal";  Plus = "Minus";}

Declared by:

<home-manager/modules/services/macos-remap-keys>
services.mako.enable

Whether to enable mako.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mako.nix>
services.mako.package

The mako package to use.

Type:package

Default:pkgs.mako

Declared by:

<home-manager/modules/services/mako.nix>
services.mako.extraConfig

Additional configuration lines to inject directly into the generated config file.

Type:strings concatenated with “\n”

Default:""

Example:

[urgency=low]border-color=#b8bb26

Declared by:

<home-manager/modules/services/mako.nix>
services.mako.settings

Configuration settings for mako. Can include both global settings and sections.All available options can be found here:https://github.com/emersion/mako/blob/master/doc/mako.5.scd.

Type:attribute set of (INI atom (null, bool, int, float or string) or attribute set of (INI atom (null, bool, int, float or string)))

Default:{ }

Example:

{  "actionable=true" = {    anchor = "top-left";  };  actions = true;  anchor = "top-right";  background-color = "#000000";  border-color = "#FFFFFF";  border-radius = 0;  default-timeout = 0;  font = "monospace 10";  height = 100;  icons = true;  ignore-timeout = false;  layer = "top";  margin = 10;  markup = true;  width = 300;}

Declared by:

<home-manager/modules/services/mako.nix>
services.mbsync.enable

Whether to enable mbsync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.package

The isync package to use.

Type:package

Default:pkgs.isync

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.configFile

Optional configuration file to link to use instead ofthe default file (~/.mbsyncrc).

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.frequency

How often to run mbsync. This value is passed to the systemdtimer configuration as the onCalendar option. Seesystemd.time(7)for more information about the format.

Type:string

Default:"*:0/5"

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.postExec

An optional command to run after mbsync executes successfully.This is useful for running mailbox indexing tools.

Type:null or string

Default:null

Example:"\${pkgs.mu}/bin/mu index"

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.preExec

An optional command to run before mbsync executes. This isuseful for creating the directories mbsync is going to use.

Type:null or string

Default:null

Example:"mkdir -p %h/mail"

Declared by:

<home-manager/modules/services/mbsync.nix>
services.mbsync.verbose

Whether mbsync should produce verbose output.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/mbsync.nix>
services.megasync.enable

Whether to enable Megasync client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/megasync.nix>
services.megasync.package

The megasync package to use.

Type:package

Default:pkgs.megasync

Declared by:

<home-manager/modules/services/megasync.nix>
services.megasync.forceWayland

Force Megasync to run on wayland

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/megasync.nix>
services.mopidy.enable

Whether to enable Mopidy music player daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mopidy.nix>
services.mopidy.extensionPackages

Mopidy extensions that should be loaded by the service.

Type:list of package

Default:[ ]

Example:with pkgs; [ mopidy-spotify mopidy-mpd mopidy-mpris ]

Declared by:

<home-manager/modules/services/mopidy.nix>
services.mopidy.extraConfigFiles

Extra configuration files read by Mopidy when the service starts.Later files in the list override earlier configuration files andstructured settings.

Type:list of absolute path

Default:[ ]

Declared by:

<home-manager/modules/services/mopidy.nix>
services.mopidy.settings

Configuration written to$XDG_CONFIG_HOME/mopidy/mopidy.conf.

Seehttps://docs.mopidy.com/en/latest/config/ formore details.

Type:attribute set of attribute set of (Mopidy config value)

Default:{ }

Example:

{  file = {    media_dirs = [      "$XDG_MUSIC_DIR|Music"      "~/library|Library"    ];    follow_symlinks = true;    excluded_file_extensions = [      ".html"      ".zip"      ".jpg"      ".jpeg"      ".png"    ];  };  # Please don't put your mopidy-spotify configuration in the public. :)  # Think of your Spotify Premium subscription!  spotify = {    client_id = "CLIENT_ID";    client_secret = "CLIENT_SECRET";  };}

Declared by:

<home-manager/modules/services/mopidy.nix>
services.mpd.enable

Whether to enable MPD, the music player daemon.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.package

The mpd package to use.

Type:package

Default:pkgs.mpd

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.dataDir

The directory where MPD stores its state, tag cache,playlists etc.

Type:absolute path

Default:"$XDG_DATA_HOME/mpd"

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.dbFile

The path to MPD’s database. If set tonull the parameter is omitted from theconfiguration.

Type:null or string

Default:"\${dataDir}/tag_cache"

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.extraArgs

Extra command-line arguments to pass to MPD.

Type:list of string

Default:[ ]

Example:

[  "--verbose"]

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.extraConfig

Extra directives added to the end of MPD’s configurationfile,mpd.conf. Basic configurationlike file location and uid/gid is added automatically to thebeginning of the file. For available options seempd.conf(5).

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.musicDirectory

The directory where mpd reads music from.

Ifxdg.userDirs.enable istrue then the defined XDG music directory is used.Otherwise, you must explicitly specify a value.

Type:absolute path or string

Default:

${home.homeDirectory}/music    if state version < 22.11${xdg.userDirs.music}          if xdg.userDirs.enable == trueundefined                      otherwise

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.network.listenAddress

The address for the daemon to listen on.Useany to listen on all addresses.

Type:string

Default:"127.0.0.1"

Example:"any"

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.network.port

The TCP port on which the the daemon will listen.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:6600

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.network.startWhenNeeded

Enable systemd socket activation. This is only supported on Linux.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd.playlistDirectory

The directory where mpd stores playlists.

Type:absolute path

Default:"\${dataDir}/playlists"

Declared by:

<home-manager/modules/services/mpd.nix>
services.mpd-discord-rpc.enable

Whether to enable the mpd-discord-rpc service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpd-discord-rpc.nix>
services.mpd-discord-rpc.package

The mpd-discord-rpc package to use.

Type:package

Default:pkgs.mpd-discord-rpc

Declared by:

<home-manager/modules/services/mpd-discord-rpc.nix>
services.mpd-discord-rpc.settings

Configuration included inconfig.toml.For available options seehttps://github.com/JakeStanger/mpd-discord-rpc#configuration

Type:TOML value

Default:{ }

Example:

{  hosts = [ "localhost:6600" ];  format = {    details = "$title";    state = "On $album by $artist";  };}

Declared by:

<home-manager/modules/services/mpd-discord-rpc.nix>
services.mpd-mpris.enable

Whether to enable mpd-mpris: An implementation of the MPRIS protocol for MPD.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.package

The mpd-mpris package to use.

Type:package

Default:pkgs.mpd-mpris

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.mpd.host

The address where MPD is listening for connections.

Type:null or string

Default:null

Example:"192.168.1.1"

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.mpd.network

The network used to dial to the MPD server. Checkhttps://golang.org/pkg/net/#Dialfor available values (most common are “tcp” and “unix”)

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.mpd.password

The password to connect to MPD.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.mpd.port

The port number where MPD is listening for connections.

Type:null or 16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:null

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpd-mpris.mpd.useLocal

Whether to configure for the local MPD daemon. Iftrue thenetwork,host, andportsettings are ignored.

Type:boolean

Default:config.services.mpd.enable

Declared by:

<home-manager/modules/services/mpd-mpris.nix>
services.mpdris2.enable

Whether to enable mpDris2 the MPD to MPRIS2 bridge.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.package

The mpdris2 package to use.

Type:package

Default:pkgs.mpdris2

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.mpd.host

The address where MPD is listening for connections.

Type:string

Default:"config.services.mpd.network.listenAddress"

Example:"192.168.1.1"

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.mpd.musicDirectory

If set, mpDris2 will use this directory to access music artwork.

Type:null or absolute path

Default:"config.services.mpd.musicDirectory"

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.mpd.password

The password to connect to MPD.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.mpd.port

The port number where MPD is listening for connections.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:"config.services.mpd.network.port"

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.multimediaKeys

Whether to enable multimedia key support.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdris2.notifications

Whether to enable song change notifications.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpdris2.nix>
services.mpdscribble.enable

Whether to enable mpdscribble, an MPD client which submits info about tracks being played toLast.fm (formerly AudioScrobbler).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.package

The mpdscribble package to use.

Type:package

Default:pkgs.mpdscribble

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.endpoints

Endpoints to scrobble to.If the endpoint is one of “jamendo”, “last.fm”, “libre.fm”, “listenbrainz” the url is set automatically.

Type:attribute set of (submodule)

Default:{ }

Example:

{  "last.fm" = {    passwordFile = "/run/secrets/lastfm_password";    username = "foo";  };}

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.endpoints.<name>.passwordFile

File containing the password, either as MD5SUM or cleartext.

Type:null or string

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.endpoints.<name>.url

The url endpoint where the scrobble API is listening.

Type:string

Default:""

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.endpoints.<name>.username

Username for the scrobble service.

Type:string

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.host

Host for the mpdscribble daemon to search for a mpd daemon on.

Type:string

Default:

if config.services.mpd.network.listenAddress != "any"then config.services.mpd.network.listenAddresselse "localhost"

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.journalInterval

How often should mpdscribble save the journal file? [seconds]

Type:signed integer

Default:600

Example:60

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.passwordFile

File containing the password for the mpd daemon.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.port

Port for the mpdscribble daemon to search for a mpd daemon on.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:config.services.mpd.network.port

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.proxy

HTTP proxy URL.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpdscribble.verbose

Log level for the mpdscribble daemon.

Type:signed integer

Default:1

Declared by:

<home-manager/modules/services/mpdscribble.nix>
services.mpris-proxy.enable

Whether to enable a proxy forwarding Bluetooth MIDI controls via MPRIS2 to control media players.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/mpris-proxy.nix>
services.mpris-proxy.package

The bluez package to use.

Type:package

Default:pkgs.bluez

Declared by:

<home-manager/modules/services/mpris-proxy.nix>
services.muchsync.package

The muchsync package to use.

Type:package

Default:pkgs.muchsync

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes

Muchsync remotes to synchronise with.

Type:attribute set of (submodule)

Default:{ }

Example:

{  server = {    frequency = "*:0/10";    remote.host = "server.tld";  };}

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.frequency

How often to runmuchsync. Thisvalue is passed to the systemd timer configuration as theOnCalendar option. Seesystemd.time(7)for more information about the format.

Type:string

Default:"*:0/5"

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.local.checkForModifiedFiles

Check for locally modified files.Without this option, muchsync assumes that files in a maildir arenever edited.

checkForModifiedFiles disables certainoptimizations so as to make muchsync at least check the timestamp onevery file, which will detect modified files at the cost of a longerstartup time.

This option is useful if your software regularly modifies thecontents of mail files (e.g., because you are running offlineimapwith “synclabels = yes”).

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.local.importNew

Whether to begin the synchronisation by runningnotmuch new locally.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.remote.checkForModifiedFiles

Check for modified files on the remote side.Without this option, muchsync assumes that files in a maildir arenever edited.

checkForModifiedFiles disables certainoptimizations so as to make muchsync at least check the timestamp onevery file, which will detect modified files at the cost of a longerstartup time.

This option is useful if your software regularly modifies thecontents of mail files (e.g., because you are running offlineimapwith “synclabels = yes”).

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.remote.host

Remote SSH host to synchronize with.

Type:string

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.remote.importNew

Whether to begin the synchronisation by runningnotmuch new on the remote side.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.remote.muchsyncPath

Specifies the path to muchsync on the server.Ordinarily, muchsync should be in the default PATH on the serverso this option is not required.However, this option is useful if you have to install muchsync ina non-standard place or wish to test development versions of thecode.

Type:string

Default:"$PATH/muchsync"

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.sshCommand

Specifies a command line to pass to/bin/shto execute a command on another machine.

Note that because this string is passed to the shell,special characters including spaces may need to be escaped.

Type:string

Default:"ssh -CTaxq"

Declared by:

<home-manager/modules/services/muchsync.nix>
services.muchsync.remotes.<name>.upload

Whether to propagate local changes to the remote.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/muchsync.nix>
services.network-manager-applet.enable

Whether to enable the Network Manager applet (nm-applet).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/network-manager-applet.nix>
services.network-manager-applet.package

The networkmanagerapplet package to use.

Type:package

Default:pkgs.networkmanagerapplet

Declared by:

<home-manager/modules/services/network-manager-applet.nix>
services.nextcloud-client.enable

Whether to enable Nextcloud Client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/nextcloud-client.nix>
services.nextcloud-client.package

The nextcloud-client package to use.

Type:package

Default:pkgs.nextcloud-client

Declared by:

<home-manager/modules/services/nextcloud-client.nix>
services.nextcloud-client.startInBackground

Whether to start the Nextcloud client in the background.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/nextcloud-client.nix>
services.notify-osd.enable

Whether to enable notify-osd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/notify-osd.nix>
services.notify-osd.package

The notify-osd package to use.

Type:package

Default:pkgs.notify-osd

Declared by:

<home-manager/modules/services/notify-osd.nix>
services.ollama.enable

Whether to enable ollama server for local large language models.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/ollama.nix>
services.ollama.package

The ollama package to use.

Type:package

Default:pkgs.ollama

Declared by:

<home-manager/modules/services/ollama.nix>
services.ollama.acceleration

What interface to use for hardware acceleration.

  • null: default behavior

    • ifnixpkgs.config.rocmSupport is enabled, uses"rocm"

    • ifnixpkgs.config.cudaSupport is enabled, uses"cuda"

    • otherwise defaults tofalse

  • false: disable GPU, only use CPU

  • "rocm": supported by most modern AMD GPUs

    • may require overriding gpu type withservices.ollama.rocmOverrideGfxif rocm doesn’t detect your AMD gpu

  • "cuda": supported by most modern NVIDIA GPUs

Type:null or one of false, “rocm”, “cuda”

Default:null

Example:"rocm"

Declared by:

<home-manager/modules/services/ollama.nix>
services.ollama.environmentVariables

Set arbitrary environment variables for the ollama service.

Be aware that these are only seen by the ollama server (systemd service),not normal invocations likeollama run.Sinceollama run is mostly a shell around the ollama server, this is usually sufficient.

Type:attribute set of string

Default:{ }

Example:

{  HIP_VISIBLE_DEVICES = "0,1";  OLLAMA_LLM_LIBRARY = "cpu";}

Declared by:

<home-manager/modules/services/ollama.nix>
services.ollama.host

The host address which the ollama server HTTP interface listens to.

Type:string

Default:"127.0.0.1"

Example:"[::]"

Declared by:

<home-manager/modules/services/ollama.nix>
services.ollama.port

Which port the ollama server listens to.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:11434

Example:11111

Declared by:

<home-manager/modules/services/ollama.nix>
services.opensnitch-ui.enable

Whether to enable Opensnitch client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/opensnitch-ui.nix>
services.opensnitch-ui.package

The opensnitch-ui package to use.

Type:package

Default:pkgs.opensnitch-ui

Declared by:

<home-manager/modules/services/opensnitch-ui.nix>
services.osmscout-server.enable

Whether to enable OSM Scout Server.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/osmscout-server.nix>
services.osmscout-server.package

The osmscout-server package to use.

Type:package

Default:pkgs.osmscout-server

Declared by:

<home-manager/modules/services/osmscout-server.nix>
services.osmscout-server.network.listenAddress

The address for the server to listen on.

Type:string

Default:"127.0.0.1"

Declared by:

<home-manager/modules/services/osmscout-server.nix>
services.osmscout-server.network.port

The TCP port on which the server will listen.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:8553

Declared by:

<home-manager/modules/services/osmscout-server.nix>
services.osmscout-server.network.startWhenNeeded

Enable systemd socket activation.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/osmscout-server.nix>
services.owncloud-client.enable

Whether to enable Owncloud Client.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/owncloud-client.nix>
services.owncloud-client.package

The owncloud-client package to use.

Type:package

Default:pkgs.owncloud-client

Declared by:

<home-manager/modules/services/owncloud-client.nix>
services.pantalaimon.enable

Whether to enable Pantalaimon, an E2EE aware proxy daemon for matrix clients.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pantalaimon.nix>
services.pantalaimon.package

The pantalaimon package to use.

Type:package

Default:pkgs.pantalaimon

Declared by:

<home-manager/modules/services/pantalaimon.nix>
services.pantalaimon.settings

Configuration written to$XDG_CONFIG_HOME/pantalaimon/pantalaimon.conf.

Seehttps://github.com/matrix-org/pantalaimon/blob/master/docs/manpantalaimon.5.md orpantalaimon(5)for options.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  Default = {    LogLevel = "Debug";    SSL = true;  };  local-matrix = {    Homeserver = "https://matrix.org";    ListenAddress = "127.0.0.1";    ListenPort = 8008;  };}

Declared by:

<home-manager/modules/services/pantalaimon.nix>
services.parcellite.enable

Whether to enable Parcellite.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/parcellite.nix>
services.parcellite.package

The parcellite package to use.

Type:package

Default:pkgs.parcellite

Example:pkgs.clipit

Declared by:

<home-manager/modules/services/parcellite.nix>
services.parcellite.extraOptions

Command line arguments passed to Parcellite.

Type:list of string

Default:[ ]

Example:

[  "--no-icon"]

Declared by:

<home-manager/modules/services/parcellite.nix>
services.pass-secret-service.enable

Whether to enable Pass libsecret service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pass-secret-service.nix>
services.pass-secret-service.package

The pass-secret-service package to use.

Type:package

Default:pkgs.pass-secret-service

Declared by:

<home-manager/modules/services/pass-secret-service.nix>
services.pass-secret-service.storePath

Absolute path to password store. Defaults to$HOME/.password-store if theprograms.password-store module is not enabled, andprograms.password-store.settings.PASSWORD_STORE_DIR if it is.

Type:null or string

Default:"$HOME/.password-store"

Example:"/home/user/.local/share/password-store"

Declared by:

<home-manager/modules/services/pass-secret-service.nix>
services.pasystray.enable

Whether to enable PulseAudio system tray.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pasystray.nix>
services.pasystray.package

The pasystray package to use.

Type:package

Default:pkgs.pasystray

Declared by:

<home-manager/modules/services/pasystray.nix>
services.pasystray.extraOptions

Extra command-line arguments to pass topasystray.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/pasystray.nix>
services.pbgopy.enable

Whether to enable pbgopy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pbgopy.nix>
services.pbgopy.cache.ttl

The TTL for the cache. Use"0s" to disable it.

Type:string

Default:"24h"

Example:"10m"

Declared by:

<home-manager/modules/services/pbgopy.nix>
services.pbgopy.httpAuth

Basic HTTP authentication’s username and password. Both the username andpassword are escaped.

Type:null or string

Default:null

Example:"user:pass"

Declared by:

<home-manager/modules/services/pbgopy.nix>
services.pbgopy.port

The port to host the pbgopy server on.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:9090

Example:8080

Declared by:

<home-manager/modules/services/pbgopy.nix>
services.picom.enable

Whether to enable Picom X11 compositor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.package

The picom package to use.

Type:package

Default:pkgs.picom

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.activeOpacity

Opacity of active windows.

Type:integer or floating point number between 0 and 1 (both inclusive)

Default:1.0

Example:0.8

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.backend

Backend to use:egl,glx,xrender orxr_glx_hybrid.

Type:one of “egl”, “glx”, “xrender”, “xr_glx_hybrid”

Default:"xrender"

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.extraArgs

Extra arguments to be passed to the picom executable.

Type:list of string

Default:[ ]

Example:[ "--legacy-backends" ]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.extraConfig

Extra configuration lines to append to the picom configuration file.

Type:strings concatenated with “\n”

Default:""

Example:

''  animations = (    {    triggers = [ "open", "show" ];    preset = "slide-in";    direction = "up";      duration = 0.2;    }  )''

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.fade

Fade windows in and out.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.fadeDelta

Time between fade animation step (in ms).

Type:positive integer, meaning >0

Default:10

Example:5

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.fadeExclude

List of conditions of windows that should not be faded.Seepicom(1) man page for more examples.

Type:list of string

Default:[ ]

Example:

[  "window_type *= 'menu'"  "name ~= 'Firefox$'"  "focused = 1"]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.fadeSteps

Opacity change between fade steps (in and out).

Type:pair of integer or floating point number between 0.01 and 1 (both inclusive)

Default:

[  0.028  0.03]

Example:

[  0.04  0.04]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.inactiveOpacity

Opacity of inactive windows.

Type:integer or floating point number between 0.1 and 1 (both inclusive)

Default:1.0

Example:0.8

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.menuOpacity

Opacity of dropdown and popup menu.

Type:integer or floating point number between 0 and 1 (both inclusive)

Default:1.0

Example:0.8

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.opacityRules

Rules that control the opacity of windows, in format PERCENT:PATTERN.

Type:list of string

Default:[ ]

Example:

[  "95:class_g = 'URxvt' && !_NET_WM_STATE@:32a"  "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.settings

Picom settings. Use this option to configure Picom settings not exposedin a NixOS option or to bypass one. For the available options see theCONFIGURATION FILES section atpicom(1).

Type:libconfig configuration. The format consists of an attributesset (called a group) of settings. Each setting can be a scalar type(boolean, integer, floating point number or string), a list ofscalars or a group itself

Default:{ }

Example:

blur =  { method = "gaussian";    size = 10;    deviation = 5.0;  };

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.shadow

Draw window shadows.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.shadowExclude

List of conditions of windows that should have no shadow.Seepicom(1) man page for more examples.

Type:list of string

Default:[ ]

Example:

[  "window_type *= 'menu'"  "name ~= 'Firefox$'"  "focused = 1"]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.shadowOffsets

Left and right offset for shadows (in pixels).

Type:pair of signed integer

Default:

[  -15  -15]

Example:

[  -10  -15]

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.shadowOpacity

Window shadows opacity.

Type:integer or floating point number between 0 and 1 (both inclusive)

Default:0.75

Example:0.8

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.vSync

Enable vertical synchronization.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/picom.nix>
services.picom.wintypes

Rules for specific window types.

Type:attribute set

Default:

{  popup_menu = { opacity = config.services.picom.menuOpacity; };  dropdown_menu = { opacity = config.services.picom.menuOpacity; };}

Example:{ }

Declared by:

<home-manager/modules/services/picom.nix>
services.pimsync.enable

Whether to enable pimsync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pimsync.nix>
services.pimsync.package

The pimsync package to use.

Type:package

Default:pkgs.pimsync

Declared by:

<home-manager/modules/services/pimsync.nix>
services.pimsync.configFile

Optional configuration file to use instead of the default file($XDG_CONFIG_HOME/pimsync/pimsync.conf).

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/pimsync.nix>
services.pimsync.verbosity

The verbosity in which pimsync should log.

Type:one of “trace”, “debug”, “info”, “warn”, “error”

Default:"warn"

Declared by:

<home-manager/modules/services/pimsync.nix>
services.pizauth.enable

Whether to enable Pizauth, a commandline OAuth2 authentication daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.package

The pizauth package to use.

Type:package

Default:pkgs.pizauth

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts

Pizauth accounts that should be configured

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.authUri

The OAuth2 server’s authentication URI.

Type:string

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.clientId

The OAuth2 client ID.

Type:string

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.clientSecret

The OAuth2 client secret.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.extraConfig

Additional configuration that will be added to the account configuration. See pizauth.conf(5) for available options.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.loginHint

An optional login hint for the account provider.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.name

Unique identifier of the account. This is set to theattribute name of the account configuration.

Type:string(read only)

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.scopes

The scopes which the OAuth2 token will give access to. Optional.Note that Office365 requires the non-standard “offline_access” scope to be specified in order for pizauth to be able to operate successfully.

Type:null or (list of string)

Default:[ ]

Example:

[  "https://outlook.office365.com/IMAP.AccessAsUser.All"  "https://outlook.office365.com/SMTP.Send"  "offline_access"]

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.accounts.<name>.tokenUri

The OAuth2 server’s token URI.

Type:string

Declared by:

<home-manager/modules/services/pizauth.nix>
services.pizauth.extraConfig

Additional global configuration. See pizauth.conf(5) for a available options.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/pizauth.nix>
services.plan9port.package

The plan9port package to use.

Type:package

Default:pkgs.plan9port

Declared by:

<home-manager/modules/services/plan9port.nix>
services.plan9port.fontsrv.enable

Whether to enable the Plan 9 file system access to host fonts.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/plan9port.nix>
services.plan9port.plumber.enable

Whether to enable the Plan 9 file system for interprocess messaging.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/plan9port.nix>
services.playerctld.enable

Whether to enable playerctld daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/playerctld.nix>
services.playerctld.package

The playerctl package to use.

Type:package

Default:pkgs.playerctl

Declared by:

<home-manager/modules/services/playerctld.nix>
services.plex-mpv-shim.enable

Whether to enable Plex mpv shim.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/plex-mpv-shim.nix>
services.plex-mpv-shim.package

The plex-mpv-shim package to use.

Type:package

Default:pkgs.plex-mpv-shim

Declared by:

<home-manager/modules/services/plex-mpv-shim.nix>
services.plex-mpv-shim.settings

Configuration written to$XDG_CONFIG_HOME/plex-mpv-shim/config.json. Seehttps://github.com/iwalton3/plex-mpv-shim/blob/master/README.mdfor the configuration documentation.

Type:JSON value

Default:{ }

Example:

{  adaptive_transcode = false;  allow_http = false;  always_transcode = false;  audio_ac3passthrough = false;  audio_dtspassthrough = false;  auto_play = true;  auto_transcode = true;}

Declared by:

<home-manager/modules/services/plex-mpv-shim.nix>
services.podman.enable

Whether to enable Podman, a daemonless container engine.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.enableTypeChecks

Whether to enable type checks for podman quadlets.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/podman-linux/options.nix>
services.podman.package

The podman package to use.

Type:package

Default:pkgs.podman

Declared by:

<home-manager/modules/services/podman-linux/options.nix>
services.podman.autoUpdate.enable

Automatically update the podman images.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/podman-linux/services.nix>
services.podman.autoUpdate.onCalendar

The systemdOnCalendar expression for the update. Seesystemd.time(7) for a description of the format.

Type:string

Default:"Sun *-*-* 00:00"

Declared by:

<home-manager/modules/services/podman-linux/services.nix>
services.podman.builds

Defines Podman build quadlet configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.authFile

Path of the authentication file.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.autoStart

Whether to start the build on boot. Requires user lingering.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.description

The description of the build.

Type:null or string

Default:"Service for build \${name}"

Example:"My Build"

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.environment

Environment variables to set in the build.

Type:attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))

Default:{ }

Example:

{  VAR1 = "0:100";  VAR2 = true;  VAR3 = 5;}

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.extraConfig

INI sections and values to populate the Build Quadlet.

Type:attribute set of attribute set of ((attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))) or list of (null or boolean or signed integer or string or absolute path) or null or boolean or signed integer or string or absolute path)

Default:{ }

Example:

{  Build = {    Arch = "aarch64";  };  Service = {    TimeoutStartSec = 15;  };}

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.extraPodmanArgs

Extra arguments to pass to the podman build command.

Type:list of string

Default:[ ]

Example:

[  "--retries 5"]

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.file

Path to a Containerfile which contains instructions to build the image.

Type:string

Example:

`"xdg.configFile."containerfiles/my-img/Containerfile"`or`"https://github.com/.../my-img/Containerfile"`

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.labels

The labels to apply to the build.

Type:attribute set of string

Default:{ }

Example:

{  app = "myapp";  some-label = "somelabel";}

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.tags

Name associated with the build.First tag will always be “homemanager/<name>”.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.tlsVerify

Require HTTPS and verification of certificates when contacting registries.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.builds.<name>.workingDirectory

WorkingDirectory of the systemd unit file.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/podman-linux/builds.nix>
services.podman.containers

Defines Podman container quadlet configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.addCapabilities

The capabilities to add to the container.

Type:list of string

Default:[ ]

Example:

[  "CAP_DAC_OVERRIDE"  "CAP_IPC_OWNER"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.autoStart

Whether to start the container on boot (requires user lingering).

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.autoUpdate

The autoupdate policy for the container.

Type:one of <null>, “registry”, “local”

Default:null

Example:"registry"

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.description

The description of the container.

Type:null or string

Default:null

Example:"My Container"

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.devices

The devices to mount into the container

Type:list of string

Default:[ ]

Example:

[  "/dev/<host>:/dev/<container>"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.dropCapabilities

The capabilities to drop from the container.

Type:list of string

Default:[ ]

Example:

[  "CAP_DAC_OVERRIDE"  "CAP_IPC_OWNER"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.entrypoint

The container entrypoint.

Type:null or string

Default:null

Example:"/foo.sh"

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.environment

Environment variables to set in the container.

Type:attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))

Default:{ }

Example:

{  VAR1 = "0:100";  VAR2 = true;  VAR3 = 5;}

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.environmentFile

Paths to files containing container environment variables.

Type:list of string

Default:[ ]

Example:

[  "/etc/environment"  "/etc/other-env"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.exec

The command to run after the container start.

Type:null or string

Default:null

Example:"sleep inf"

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.extraConfig

INI sections and values to populate the Container Quadlet.

Type:attribute set of attribute set of ((attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))) or list of (null or boolean or signed integer or string or absolute path) or null or boolean or signed integer or string or absolute path)

Default:{ }

Example:

{  Container = {    User = 1000;  };  Service = {    TimeoutStartSec = 15;  };}

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.extraPodmanArgs

Extra arguments to pass to the podman run command.

Type:list of string

Default:[ ]

Example:

[  "--security-opt=no-new-privileges"  "--security-opt=seccomp=unconfined"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.group

The group ID inside the container.

Type:null or signed integer or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.image

The container image.

Type:string

Example:"registry.access.redhat.com/ubi9-minimal:latest"

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.ip4

Set an IPv4 address for the container.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.ip6

Set an IPv6 address for the container.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.labels

The labels to apply to the container.

Type:attribute set of string

Default:{ }

Example:

{  app = "myapp";  some-label = "somelabel";}

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.network

The network mode or network/s to connect the container to. Equivalenttopodman run --network=<option>.

Type:string or list of string

Default:[ ]

Example:"host"or"bridge_network_1"or[ "bridge_network_1" "bridge_network_2" ]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.networkAlias

Network aliases for the container.

Type:list of string

Default:[ ]

Example:

[  "mycontainer"  "web"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.ports

A mapping of ports between host and container

Type:list of string

Default:[ ]

Example:

[  "8080:80"  "8443:443"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.user

The user ID inside the container.

Type:null or signed integer or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.userNS

Use a user namespace for the container.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.containers.<name>.volumes

The volumes to mount into the container.

Type:list of string

Default:[ ]

Example:

[  "/tmp:/tmp"  "/var/run/test.secret:/etc/secret:ro"]

Declared by:

<home-manager/modules/services/podman-linux/containers.nix>
services.podman.images

Defines Podman image quadlet configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.authFile

Path of the authentication file used to connect to registry.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.autoStart

Whether to pull the image on boot. Requires user lingering.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.certDir

Path of certificates (*.{crt,cert,key}) used to connect to registry.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.decryptionKeyFile

Path to key used for decryption of images.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.description

The description of the image.

Type:null or string

Default:"Service for image \${name}"

Example:"My Image"

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.extraConfig

INI sections and values to populate the Image Quadlet.

Type:attribute set of attribute set of ((attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))) or list of (null or boolean or signed integer or string or absolute path) or null or boolean or signed integer or string or absolute path)

Default:{ }

Example:

{  Image = {    ContainersConfModule = "/etc/nvd.conf";  };}

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.extraPodmanArgs

Extra arguments to pass to the podman image pull command.

Type:list of string

Default:[ ]

Example:

[  "--os=linux"]

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.image

Image to pull.

Type:string

Example:"quay.io/centos/centos:latest"

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.password

Password used to connect to registry. (Will be visible in nix store)

Type:null or string

Default:null

Example:"P@ssw0rd"

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.tag

FQIN of referenced Image when source is a file or directory archive.

Type:null or string

Default:null

Example:"quay.io/centos/centos:latest"

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.tlsVerify

Require HTTPS and verification of certificates when contacting registries.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.images.<name>.username

Username used to connect to registry.

Type:null or string

Default:null

Example:"bob"

Declared by:

<home-manager/modules/services/podman-linux/images.nix>
services.podman.networks

Defines Podman network quadlet configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.autoStart

Whether to start the network on boot (requires user lingering).

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.description

The description of the network.

Type:null or string

Default:null

Example:"My Network"

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.driver

The network driver to use.

Type:null or string

Default:null

Example:"bridge"

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.extraConfig

INI sections and values to populate the Network Quadlet

Type:attribute set of attribute set of ((attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))) or list of (null or boolean or signed integer or string or absolute path) or null or boolean or signed integer or string or absolute path)

Default:{ }

Example:

{  Network = {    ContainerConfModule = "/etc/nvd.conf";  };  Service = {    TimeoutStartSec = 30;  };}

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.extraPodmanArgs

Extra arguments to pass to the podman network create command.

Type:list of string

Default:[ ]

Example:

[  "--dns=192.168.55.1"  "--ipam-driver"]

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.gateway

The gateway IP to use for the network.

Type:null or string

Default:null

Example:"192.168.20.1"

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.internal

Whether the network should be internal

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.labels

The labels to apply to the network.

Type:attribute set of string

Default:{ }

Example:

{  app = "myapp";  some-label = "somelabel";}

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.networks.<name>.subnet

The subnet to use for the network.

Type:null or string

Default:null

Example:"192.168.20.0/24"

Declared by:

<home-manager/modules/services/podman-linux/networks.nix>
services.podman.settings.containers

containers.conf configuration

Type:TOML value

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.mounts

mounts.conf configuration

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.policy

Signature verification policy file.If this option is empty the default policy file fromskopeo will be used.

Type:attribute set

Default:{ }

Example:

{  default = [ { type = "insecureAcceptAnything"; } ];  transports = {    docker-daemon = {      "" = [ { type = "insecureAcceptAnything"; } ];    };  };}

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.registries.block

List of blocked repositories.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.registries.insecure

List of insecure repositories.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.registries.search

List of repositories to search.

Type:list of string

Default:

[  "docker.io"]

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.settings.storage

storage.conf configuration

Type:TOML value

Declared by:

<home-manager/modules/services/podman-linux>
services.podman.volumes

Defines Podman volume quadlet configurations.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.autoStart

Whether to create the volume on boot.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.copy

Copy content of the image located at the mountpoint of the volume on first run.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.description

The description of the volume.

Type:null or string

Default:"Service for volume \${name}"

Example:"My Volume"

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.device

The path of a device which is mounted for the volume.

Type:null or string

Default:null

Example:"tmpfs"

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.driver

The volume driver to use.

Type:null or string

Default:null

Example:"image"

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.extraConfig

INI sections and values to populate the Volume Quadlet.

Type:attribute set of attribute set of ((attribute set of (null or boolean or signed integer or string or absolute path or list of (null or boolean or signed integer or string or absolute path))) or list of (null or boolean or signed integer or string or absolute path) or null or boolean or signed integer or string or absolute path)

Default:{ }

Example:

{  Volume = {    ContainerConfModule = "/etc/nvd.conf";  };}

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.extraPodmanArgs

Extra arguments to pass to the podman volume create command.

Type:list of string

Default:[ ]

Example:

[  "--opt copy"]

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.group

The group ID owning the volume inside the container.

Type:null or signed integer or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.image

Specifies the image the volume is based on when Driver is set to the image.

Type:null or string

Default:null

Example:"quay.io/centos/centos:latest"

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.labels

The labels to apply to the volume.

Type:attribute set of string

Default:{ }

Example:

{  app = "myapp";  some-label = "somelabel";}

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.preserve

Whether the volume should be preserved if it is removed from the configuration.Setting this to false will cause the volume to be deleted if the volume is removed from the configuration

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.type

Filesystem type of Device. (used as -t in mount commands)

Type:null or string

Default:null

Example:"tmpfs"

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.podman.volumes.<name>.user

The user ID owning the volume inside the container.

Type:null or signed integer or string

Default:null

Declared by:

<home-manager/modules/services/podman-linux/volumes.nix>
services.polkit-gnome.enable

Whether to enable GNOME Policykit Agent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/polkit-gnome.nix>
services.polkit-gnome.package

The polkit_gnome package to use.

Type:package

Default:pkgs.polkit_gnome

Declared by:

<home-manager/modules/services/polkit-gnome.nix>
services.polybar.enable

Whether to enable Polybar status bar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/polybar.nix>
services.polybar.package

The polybar package to use.

Type:package

Default:pkgs.polybar

Example:

pkgs.polybar.override {  i3GapsSupport = true;  alsaSupport = true;  iwSupport = true;  githubSupport = true;}

Declared by:

<home-manager/modules/services/polybar.nix>
services.polybar.config

Polybar configuration. Can be either path to a file, or set of attributesthat will be used to create the final configuration.See alsoservices.polybar.settings for a more nix-friendly format.

Type:(attribute set of attribute set of (string or boolean or signed integer or list of string)) or absolute path convertible to it

Default:{ }

Example:

{  "bar/top" = {    monitor = "\${env:MONITOR:eDP1}";    width = "100%";    height = "3%";    radius = 0;    modules-center = "date";  };  "module/date" = {    type = "internal/date";    internal = 5;    date = "%d.%m.%y";    time = "%H:%M";    label = "%time%  %date%";  };}

Declared by:

<home-manager/modules/services/polybar.nix>
services.polybar.extraConfig

Additional configuration to add.

Type:strings concatenated with “\n”

Default:""

Example:

''  [module/date]  type = internal/date  interval = 5  date = "%d.%m.%y"  time = %H:%M  format-prefix-foreground = \''${colors.foreground-alt}  label = %time%  %date%''

Declared by:

<home-manager/modules/services/polybar.nix>
services.polybar.script

This script will be used to start the polybars.Set all necessary environment variables here and start all bars.It can be assumed thatpolybar executable is in thePATH.

Note, this script must start all bars in the background and then terminate.

Type:strings concatenated with “\n”

Example:"polybar bar &"

Declared by:

<home-manager/modules/services/polybar.nix>
services.polybar.settings

Polybar configuration. This takes a nix attrset and converts it to thestrange data format that polybar uses.Each entry will be converted to a section in the output file.Several things are treated specially: nested keys are convertedto dash-separated keys; the specialtext key is ignored as a nested key,to allow mixing different levels of nesting; and lists are converted topolybar’sfoo-0, foo-1, ... format.

For example:

"module/volume" = {  type = "internal/pulseaudio";  format.volume = "<ramp-volume> <label-volume>";  label.muted.text = "🔇";  label.muted.foreground = "#666";  ramp.volume = ["🔈" "🔉" "🔊"];  click.right = "pavucontrol &";}

becomes:

[module/volume]type=internal/pulseaudioformat-volume=<ramp-volume> <label-volume>label-muted=🔇label-muted-foreground=#666ramp-volume-0=🔈ramp-volume-1=🔉ramp-volume-2=🔊click-right=pavucontrol &

Type:attribute set of attribute sets

Default:{ }

Example:

{  "module/volume" = {    type = "internal/pulseaudio";    format.volume = "<ramp-volume> <label-volume>";    label.muted.text = "🔇";    label.muted.foreground = "#666";    ramp.volume = ["🔈" "🔉" "🔊"];    click.right = "pavucontrol &";  };}

Declared by:

<home-manager/modules/services/polybar.nix>
services.poweralertd.enable

Whether to enable the Upower-powered power alertd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/poweralertd.nix>
services.poweralertd.package

The poweralertd package to use.

Type:package

Default:pkgs.poweralertd

Declared by:

<home-manager/modules/services/poweralertd.nix>
services.poweralertd.extraArgs

Extra command line arguments to pass to poweralertd.

Type:list of string

Default:[ ]

Example:

[  "-s"  "-S"]

Declared by:

<home-manager/modules/services/poweralertd.nix>
services.protonmail-bridge.enable

Whether to enable ProtonMail Bridge.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/protonmail-bridge.nix>
services.protonmail-bridge.package

The protonmail-bridge package to use.

Type:package

Default:pkgs.protonmail-bridge

Declared by:

<home-manager/modules/services/protonmail-bridge.nix>
services.protonmail-bridge.extraPackages

List of derivations to place in ProtonMail Bridge’s service path.

Type:list of package

Default:[ ]

Example:with pkgs; [ pass gnome-keyring ]

Declared by:

<home-manager/modules/services/protonmail-bridge.nix>
services.protonmail-bridge.logLevel

Log level of the ProtonMail Bridge service.

If set to null, the service uses its default log level.

Type:null or one of “panic”, “fatal”, “error”, “warn”, “info”, “debug”

Default:null

Declared by:

<home-manager/modules/services/protonmail-bridge.nix>
services.psd.enable

Whether to enable Profile-sync-daemon service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/psd.nix>
services.psd.package

The profile-sync-daemon package to use.

Type:package

Default:pkgs.profile-sync-daemon

Declared by:

<home-manager/modules/services/psd.nix>
services.psd.backupLimit

Maximum number of crash recovery snapshots to keep (the oldest ones are deleted first).

Type:unsigned integer, meaning >=0

Default:5

Declared by:

<home-manager/modules/services/psd.nix>
services.psd.browsers

A list of browsers to sync. An empty list will enable all browsers to be managed by profile-sync-daemon.

Available choices are:chromium chromium-dev conkeror.mozdev.org epiphany falkon firefox firefox-trunk google-chrome google-chrome-beta google-chrome-unstable heftig-aurora icecat inox luakit midori opera opera-beta opera-developer opera-legacy otter-browser qupzilla qutebrowser palemoon rekonq seamonkey surf vivaldi vivaldi-snapshot

Type:list of string

Default:[ ]

Example:

[  "chromium"  "google-chrome"  "firefox"]

Declared by:

<home-manager/modules/services/psd.nix>
services.psd.resyncTimer

The amount of time to wait before syncing browser profiles back to thedisk.

Takes a systemd time span, seesystemd.time(7). The time unitdefaults to seconds if omitted.

Type:string

Default:"1h"

Example:"1h 30min"

Declared by:

<home-manager/modules/services/psd.nix>
services.psd.useBackup

Whether to completly enable or disable the crash recovery feature.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/psd.nix>
services.pueue.enable

Whether to enable Pueue, CLI process scheduler and manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pueue.nix>
services.pueue.package

The pueue package to use.

Type:null or package

Default:pkgs.pueue

Declared by:

<home-manager/modules/services/pueue.nix>
services.pueue.settings

Configuration written to$XDG_CONFIG_HOME/pueue/pueue.yml.

Type:YAML 1.1 value

Default:{ }

Example:

{  daemon = {    default_parallel_tasks = 2;  };}

Declared by:

<home-manager/modules/services/pueue.nix>
services.pulseeffects.enable

Whether to enable Pulseeffects daemonNote, it is necessary to add

programs.dconf.enable = true;

to your system configuration for the daemon to work correctly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/pulseeffects.nix>
services.pulseeffects.package

The pulseeffects-legacy package to use.

Type:package

Default:pkgs.pulseeffects-legacy

Declared by:

<home-manager/modules/services/pulseeffects.nix>
services.pulseeffects.preset

Which preset to use when starting pulseeffects.Will likely need to launch pulseeffects to initially create preset.

Type:string

Default:""

Declared by:

<home-manager/modules/services/pulseeffects.nix>
services.radicle.node.enable

Whether to enable Radicle Node.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/radicle.nix>
services.radicle.node.package

The radicle-node package to use.

Type:package

Default:pkgs.radicle-node

Declared by:

<home-manager/modules/services/radicle.nix>
services.radicle.node.args

Additional command line arguments to pass when executingradicle-node.

Type:string

Default:""

Example:"--force"

Declared by:

<home-manager/modules/services/radicle.nix>
services.radicle.node.environment

Environment to set when executingradicle-node.

Type:attribute set of (null or string or absolute path or package)

Default:{ }

Example:

{  RUST_BACKTRACE = "full";}

Declared by:

<home-manager/modules/services/radicle.nix>
services.radicle.node.lazy.enable

Whether to enable a proxy service to lazily start and stop Radicle Node on demand.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/radicle.nix>
services.radicle.node.lazy.exitIdleTime

The idle time after which no interaction with Radicle Node via therad CLI should be stopped, in a format thatsystemd-socket-proxyd(8) understands for its--exit-idle-time argument.

Type:string

Default:"30min"

Example:"1h"

Declared by:

<home-manager/modules/services/radicle.nix>
services.random-background.enable

Whether to enable random desktop background.

Note, if you are using NixOS and have set up a customdesktop manager session for Home Manager, then the sessionconfiguration must have thebgSupportoption set totrue or the backgroundimage set by this module may be overwritten.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/random-background.nix>
services.random-background.enableXinerama

Will place a separate image per screen when enabled,otherwise a single image will be stretched across allscreens.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/random-background.nix>
services.random-background.package

The feh package to use.

Type:package

Default:pkgs.feh

Declared by:

<home-manager/modules/services/random-background.nix>
services.random-background.display

Display background images according to this option.

Type:one of “center”, “fill”, “max”, “scale”, “tile”

Default:"fill"

Declared by:

<home-manager/modules/services/random-background.nix>
services.random-background.imageDirectory

The directory of images from which a background should bechosen. Should be formatted in a way understood by systemd,e.g., ‘%h’ is the home directory.

Type:string

Example:"%h/backgrounds"

Declared by:

<home-manager/modules/services/random-background.nix>
services.random-background.interval

The duration between changing background image, set to nullto only set background when logging in. Should be formattedas a duration understood by systemd.

Type:null or string

Default:null

Example:"1h"

Declared by:

<home-manager/modules/services/random-background.nix>
services.recoll.enable

Whether to enable Recoll file index service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/recoll.nix>
services.recoll.package

The recoll package to use.

Type:package

Default:pkgs.recoll

Example:(pkgs.recoll.override { withGui = false; })

Declared by:

<home-manager/modules/services/recoll.nix>
services.recoll.configDir

The directory to contain Recoll configuration files. This will be setasRECOLL_CONFDIR.

Type:string

Default:${config.home.homeDirectory}/.recoll

Example:${config.xdg.configHome}/recoll

Declared by:

<home-manager/modules/services/recoll.nix>
services.recoll.settings

The configuration to be written at$RECOLL_CONFDIR/recoll.conf.

Seerecoll.conf(5) for more details about the configuration.

Type:attribute set of (Recoll config value)

Default:{ }

Example:

{  nocjk = true;  loglevel = 5;  topdirs = [ "~/Downloads" "~/Documents" "~/projects" ];  "~/Downloads" = {    "skippedNames+" = [ "*.iso" ];  };  "~/projects" = {    "skippedNames+" = [ "node_modules" "target" "result" ];  };}

Declared by:

<home-manager/modules/services/recoll.nix>
services.recoll.startAt

When or how often the periodic update should run. Must be the formatdescribed fromsystemd.time(7).

Type:string

Default:"hourly"

Example:"00/2:00"

Declared by:

<home-manager/modules/services/recoll.nix>
services.redshift.enable

Whether to enable Redshift.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.enableVerboseLogging

Whether to enable verbose service logging.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.package

Redshift derivation to use.

Type:package

Default:pkgs.redshift

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.dawnTime

Set the time interval of dawn manually.The times must be specified as HH:MM in 24-hour format.

Type:null or string

Default:null

Example:"6:00-7:45"

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.duskTime

Set the time interval of dusk manually.The times must be specified as HH:MM in 24-hour format.

Type:null or string

Default:null

Example:"18:35-20:15"

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.latitude

Your current latitude, between-90.0 and90.0. Must be provided along withlongitude.

Type:null or string or floating point number

Default:null

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.longitude

Your current longitude, between-180.0 and180.0. Must be provided along withlatitude.

Type:null or string or floating point number

Default:null

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.provider

The location provider to use for determining your location. If set tomanual you must also provide latitude/longitude.If set togeoclue2, you must also enable the globalgeoclue2 service.

Type:one of “manual”, “geoclue2”

Default:"manual"

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.settings

The configuration to pass to Redshift.Available options for Redshift described inredshift(1).

Type:open submodule of attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  redshift = {    adjustment-method = "randr";  };  randr = {    screen = 0;  };};

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.temperature.day

Colour temperature to use during the day, between1000 and25000 K.

Type:signed integer

Default:5500

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.temperature.night

Colour temperature to use at night, between1000 and25000 K.

Type:signed integer

Default:3700

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.redshift.tray

Start the redshift-gtk tray applet.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/redshift-gammastep/redshift.nix>
services.remmina.enable

Whether to enable Remmina.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/remmina.nix>
services.remmina.package

The remmina package to use.

Type:package

Default:pkgs.remmina

Declared by:

<home-manager/modules/services/remmina.nix>
services.remmina.addRdpMimeTypeAssoc

Whether to enable Remmina RDP file open option.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/remmina.nix>
services.remmina.systemdService.enable

Whether to enable systemd Remmina service.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/remmina.nix>
services.remmina.systemdService.startupFlags

Startup flags documented in the manpage to run at service startup.

Type:list of string

Default:

[  "--icon"]

Declared by:

<home-manager/modules/services/remmina.nix>
services.rescrobbled.enable

Whether to enable rescrobbled, a MPRIS music scrobbler daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/rescrobbled.nix>
services.rescrobbled.package

The rescrobbled package to use.

Type:package

Default:pkgs.rescrobbled

Declared by:

<home-manager/modules/services/rescrobbled.nix>
services.rescrobbled.settings

Configuration written to$XDG_CONFIG_HOME/rescrobbled/config.tomlSeehttps://github.com/InputUsername/rescrobbled#configuration forthe full list of options.

Type:TOML value

Default:{ }

Example:

{  filter-script = "path/to/script";  lastfm-key = "Last.fm API key";  lastfm-secret = "Last.fm API secret";  listenbrainz = [    {      token = "User token";      url = "Custom API URL";    }  ];  min-play-time = 0;  player-whitelist = [    "Player MPRIS identity or bus name"  ];  use-track-start-timestamp = false;}

Declared by:

<home-manager/modules/services/rescrobbled.nix>
services.restic.enable

Whether to enable restic.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups

Backup configurations for Restic.

On Linux systems, a corresponding systemd user service(and optionally a systemd timer for automatic scheduling)will be created, along with a helper wrapper script.

On non-Linux platforms, only the helper wrapper scriptwill be created.

Type:attribute set of (submodule)

Default:{ }

Example:

{  localbackup = {    exclude = [      "/home/*/.cache"    ];    initialize = true;    passwordFile = "/etc/nixos/secrets/restic-password";    paths = [      "/home"    ];    repository = "/mnt/backup-hdd";  };  remotebackup = {    extraOptions = [      "sftp.command='ssh backup@host -i /etc/nixos/secrets/backup-private-key -s sftp'"    ];    passwordFile = "/etc/nixos/secrets/restic-password";    paths = [      "/home"    ];    repository = "sftp:backup@host:/backups/home";    timerConfig = {      OnCalendar = "00:05";      RandomizedDelaySec = "5h";    };  };}

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.package

The restic package to use.

Type:package

Default:pkgs.restic

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.backupCleanupCommand

A script that must run after finishing the backup process.

This option is only supported on linux.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.backupPrepareCommand

A script that must run before starting the backup process.

This option is only supported on linux.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.checkOpts

A list of options for ‘restic check’.

This option is only supported on linux.

Type:list of string

Default:[ ]

Example:

[  "--with-cache"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.createWrapper

Whether to generate and add a script to the system path, that has thesame environment variables set as the systemd service. This can be usedto e.g. mount snapshots or perform other opterations, without having tomanually specify most options.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.dynamicFilesFrom

A script that produces a list of files to back up. The results ofthis command, along with the paths specified viapaths,are given to the ‘–files-from’ option.

This option is only supported on linux.

Type:null or string

Default:null

Example:"find /home/alice/git -type d -name .git"

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.environmentFile

A file containing the credentials to access the repository, in theformat of an EnvironmentFile as described bysystemd.exec(5).Seehttps://restic.readthedocs.io/en/stable/030_preparing_a_new_repo.htmlfor the specific credentials you will need for your backend.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.exclude

Patterns to exclude when backing up. Seehttps://restic.readthedocs.io/en/stable/040_backup.html#excluding-files fordetails on syntax.

This option is only supported on linux.

Type:list of string

Default:[ ]

Example:

[  "/var/cache"  "/home/*/.cache"  ".git"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.extraBackupArgs

Extra arguments passed to restic backup.

This option is only supported on linux.

Type:list of string

Default:[ ]

Example:

[  "--cleanup-cache"  "--exclude-file=/etc/nixos/restic-ignore"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.extraOptions

Extra extended options to be passed to the restic-o flag. See the resticdocumentation for more details.

Type:list of string

Default:[ ]

Example:

[  "sftp.command='ssh backup@192.168.1.100 -i /home/user/.ssh/id_rsa -s sftp'"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.inhibitsSleep

Prevents the system from sleeping while backing up. This uses systemd-inhibitto block system idling so you may need to enable polkitd withsecurity.polkit.enable.

This option is only supported on linux.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.initialize

Create the repository if it does not already exist.

This option is only supported on linux.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.passwordFile

A file containing the repository password.

Type:string

Example:"/etc/nixos/restic-password"

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.paths

Paths to back up, alongside those defined by thedynamicFilesFromoption. If left empty anddynamicFilesFrom is also not specified, nobackup command will be run. This can be used to create a prune-only job.

This option is only supported on linux.

Type:list of string

Default:[ ]

Example:

[  "/var/lib/postgresql"  "/home/user/backup"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.progressFps

Controls the frequency of progress reporting.

Type:null or (nonnegative integer or floating point number, meaning >=0)

Default:null

Example:0.1

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.pruneOpts

A list of policy options for ‘restic forget --prune’, to automaticallyprune old snapshots. Seehttps://restic.readthedocs.io/en/latest/060_forget.html#removing-snapshots-according-to-a-policyfor a full list of options.

Note: The ‘forget’ command is runafter the ‘backup’ command, so keepthat in mind when constructing the --keep-* options.

This option is only supported on linux.

Type:list of string

Default:[ ]

Example:

[  "--keep-daily 7"  "--keep-weekly 5"  "--keep-monthly 12"  "--keep-yearly 75"]

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.rcloneOptions

Options to pass to rclone to control its behavior. Seehttps://rclone.org/docs/#options for available options. When specifyingoption names, strip the leading--. To set a flag such as--drive-use-trash, which does not take a value, set the value to theBooleantrue.

Type:attribute set of (string or boolean)

Default:{ }

Example:

{  bwlimit = "10M";  drive-use-trash = true;}

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.repository

Repository to backup to. This should be in the form of a backend specification asdetailed herehttps://restic.readthedocs.io/en/stable/030_preparing_a_new_repo.html.

If your using the rclone backend, you can configure your remotes withprograms.rclone.remotes then use them in your backend specification.

Type:null or string

Default:null

Example:"sftp:backup@192.168.1.100:/backups/‹name›"

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.repositoryFile

Path to a file containing the repository location to backup to. This should bein the same form as therepository option.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.runCheck

Whether to run ‘restic check’ with the providedcheckOpts options.This option is only supported on linux.

Type:boolean

Default:lib.length config.checkOpts > 0 || lib.length config.pruneOpts > 0

Example:true

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.ssh-package

The openssh package to use.

Type:package

Default:pkgs.openssh

Declared by:

<home-manager/modules/services/restic.nix>
services.restic.backups.<name>.timerConfig

When to run the backup. Seesystemd.timer(5) for details. If nullno timer is created and the backup will only run when explicitly started.

This option is only supported on linux.

Type:null or (attribute set of (boolean or signed integer or string or absolute path or list of (boolean or signed integer or string or absolute path)))

Default:

{  OnCalendar = "daily";  Persistent = true;}

Example:

{  OnCalendar = "00:05";  Persistent = true;  RandomizedDelaySec = "5h";}

Declared by:

<home-manager/modules/services/restic.nix>
services.rsibreak.enable

Whether to enable rsibreak.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/rsibreak.nix>
services.rsibreak.package

The rsibreak package to use.

Type:package

Default:pkgs.rsibreak

Declared by:

<home-manager/modules/services/rsibreak.nix>
services.safeeyes.enable

Whether to enable The Safe Eyes OSGI service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/safeeyes.nix>
services.safeeyes.package

The safeeyes package to use.

Type:package

Default:pkgs.safeeyes

Declared by:

<home-manager/modules/services/safeeyes.nix>
services.screen-locker.enable

Whether to enable screen locker for X session.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.inactiveInterval

Inactive time interval in minutes after which session will be locked.The minimum is 1 minute, and the maximum is 1 hour.Ifxautolock.enable is true, it will use this setting.Seehttps://linux.die.net/man/1/xautolock.Otherwise, this will be used withxset to configurethe X server’s screensaver timeout.

Type:signed integer

Default:10

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.lockCmd

Locker command to run.

Type:string

Example:"\${pkgs.i3lock}/bin/i3lock -n -c 000000"

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.lockCmdEnv

Environment variables to source a with the locker command (lockCmd).

Type:list of string

Default:[ ]

Example:

[  "XSECURELOCK_PAM_SERVICE=xsecurelock"]

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xautolock.enable

Use xautolock for time-based locking.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xautolock.package

The xautolock package to use.

Type:package

Default:pkgs.xautolock

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xautolock.detectSleep

Whether to reset xautolock timers when awaking from sleep.No effect ifxautolock.enable is false.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xautolock.extraOptions

Extra command-line arguments to pass toxautolock.No effect ifxautolock.enable is false.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xss-lock.package

The xss-lock package to use.

Type:package

Default:pkgs.xss-lock

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xss-lock.extraOptions

Extra command-line arguments to pass toxss-lock.

Type:list of string

Default:[ ]

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.screen-locker.xss-lock.screensaverCycle

The X server’s screensaver cycle value expressed as seconds.This will be used withxset to configurethe cycle along with timeout.

Type:signed integer

Default:600

Declared by:

<home-manager/modules/services/screen-locker.nix>
services.sctd.enable

Whether to enable sctd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/sctd.nix>
services.sctd.package

The sct package to use.

Type:package

Default:pkgs.sct

Declared by:

<home-manager/modules/services/sctd.nix>
services.sctd.baseTemperature

The base color temperature used by sctd, which should be between 2500 and 9000.Seesctd(1)for more details.

Type:integer between 2500 and 9000 (both inclusive)

Default:4500

Declared by:

<home-manager/modules/services/sctd.nix>
services.shikane.enable

Whether to enable shikane, A dynamic output configuration tool that automatically detects and configures connected outputs based on a set of profiles…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/shikane.nix>
services.shikane.package

The shikane package to use.

Type:package

Default:pkgs.shikane

Declared by:

<home-manager/modules/services/shikane.nix>
services.shikane.settings

Configuration written to<filename>$XDG_CONFIG_HOME/shikane/config.toml</filename>.</para><para>See <link xlink:href=“https://gitlab.com/w0lff/shikane/-/blob/master/docs/shikane.5.man.md” />for more information.

Type:TOML value

Default:{ }

Example:

{  profile = [    {      name = "external-monitor-default";      output = [        {          match = "eDP-1";          enable = true;        }        {          match = "HDMI-A-1";          enable = true;          position = {            x = 1920;            y = 0;          };        }      ];    }    {      name = "builtin-monitor-only";      output = [        {          match = "eDP-1";          enable = true;        }      ];    }  ];}

Declared by:

<home-manager/modules/services/shikane.nix>
services.shpool.enable

Whether to enable shpool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/shpool.nix>
services.shpool.package

The shpool package to use.

Type:null or package

Default:pkgs.shpool

Declared by:

<home-manager/modules/services/shpool.nix>
services.shpool.settings

Configuration to use for shpool. Seehttps://github.com/shell-pool/shpool/blob/master/CONFIG.mdfor available options.

Type:TOML value

Default:{ }

Example:

{  keybinding = [    {      action = "detach";      binding = "Ctrl-a d";    }  ];  motd = "never";  prompt_prefix = "[$SHPOOL_SESSION_NAME]";  session_restore_mode = {    lines = 1000;  };}

Declared by:

<home-manager/modules/services/shpool.nix>
services.shpool.systemd

Whether to enable systemd service and socket for shpool.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/shpool.nix>
services.signaturepdf.enable

Whether to enable signaturepdf; signing, organizing, editing metadatas or compressing PDFs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/signaturepdf.nix>
services.signaturepdf.package

The signaturepdf package to use.

Type:package

Default:pkgs.signaturepdf

Declared by:

<home-manager/modules/services/signaturepdf.nix>
services.signaturepdf.extraConfig

Additional configuration optional.

Type:attribute set of (string or signed integer or boolean or floating point number)

Default:{ }

Example:

{  max_file_uploads = "201";  post_max_size = "24M";  upload_max_filesize = "24M";}

Declared by:

<home-manager/modules/services/signaturepdf.nix>
services.signaturepdf.port

The port on which the application runs

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:8080

Example:8081

Declared by:

<home-manager/modules/services/signaturepdf.nix>
services.skhd.enable

Whether to enable skhd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/skhd.nix>
services.skhd.package

The skhd package to use.

Type:package

Default:pkgs.skhd

Declared by:

<home-manager/modules/services/skhd.nix>
services.skhd.config

Contents of skhd’s configuration file. If empty (the default), the configuration file won’t be managed.

Seedocumentationandexample.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  # open terminal, blazingly fast compared to iTerm/Hyper  cmd - return : /Applications/kitty.app/Contents/MacOS/kitty --single-instance -d ~    # open qutebrowser  cmd + shift - return : ~/Scripts/qtb.sh    # open mpv  cmd - m : open -na /Applications/mpv.app $(pbpaste)''

Declared by:

<home-manager/modules/services/skhd.nix>
services.skhd.errorLogFile

Absolute path to log all stderr output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/skhd/err.log

Example:"/Users/khaneliman/Library/Logs/skhd.log"

Declared by:

<home-manager/modules/services/skhd.nix>
services.skhd.outLogFile

Absolute path to log all stdout output.

Type:null or absolute path or string

Default:${config.home.homeDirectory}/Library/Logs/skhd/out.log

Example:"/Users/khaneliman/Library/Logs/skhd.log"

Declared by:

<home-manager/modules/services/skhd.nix>
services.snixembed.enable

Whether to enable snixembed: proxy StatusNotifierItems as XEmbedded systemtray-spec icons.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/snixembed.nix>
services.snixembed.package

The snixembed package to use.

Type:package

Default:pkgs.snixembed

Declared by:

<home-manager/modules/services/snixembed.nix>
services.snixembed.beforeUnits

List of other units that should be started after snixembed.

Type:list of string

Default:[ ]

Example:

[  "safeeyes.service"]

Declared by:

<home-manager/modules/services/snixembed.nix>
services.spotifyd.enable

Whether to enable SpotifyD connect.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/spotifyd.nix>
services.spotifyd.package

The spotifyd package to use. Can be used to specify extensions.

Type:package

Default:pkgs.spotifyd

Example:(pkgs.spotifyd.override { withKeyring = true; })

Declared by:

<home-manager/modules/services/spotifyd.nix>
services.spotifyd.settings

Configuration for spotifyd

Type:TOML value

Default:{ }

Example:

{  global = {    username = "Alex";    password = "foo";    device_name = "nix";  };}

Declared by:

<home-manager/modules/services/spotifyd.nix>
services.ssh-agent.enable

Whether to enable OpenSSH private key agent.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.enableBashIntegration

Whether to enable Bash integration.

Type:boolean

Default:home.shell.enableBashIntegration

Example:false

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.enableFishIntegration

Whether to enable Fish integration.

Type:boolean

Default:home.shell.enableFishIntegration

Example:false

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.enableNushellIntegration

Whether to enable Nushell integration.

Type:boolean

Default:home.shell.enableNushellIntegration

Example:false

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.enableZshIntegration

Whether to enable Zsh integration.

Type:boolean

Default:home.shell.enableZshIntegration

Example:false

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.package

The openssh package to use.

Type:package

Default:pkgs.openssh

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.defaultMaximumIdentityLifetime

Set a default value for the maximum lifetime in seconds of identities added to the agent.

Type:null or (positive integer, meaning >0)

Default:null

Example:3600

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-agent.socket

The agent’s socket; interpreted as a suffix to$XDG_RUNTIME_DIR.

Type:string

Default:"ssh-agent"

Example:"ssh-agent/socket"

Declared by:

<home-manager/modules/services/ssh-agent.nix>
services.ssh-tpm-agent.enable

Whether to enable SSH agent for TPMs.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/ssh-tpm-agent.nix>
services.ssh-tpm-agent.package

The ssh-tpm-agent package to use.

Type:package

Default:pkgs.ssh-tpm-agent

Declared by:

<home-manager/modules/services/ssh-tpm-agent.nix>
services.ssh-tpm-agent.keyDir

Path of the directory to look for TPM sealed keys in, defaults to $HOME/.ssh if unset

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/ssh-tpm-agent.nix>
services.stalonetray.enable

Whether to enable Stalonetray system tray.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/stalonetray.nix>
services.stalonetray.package

The stalonetray package to use.

Type:package

Default:pkgs.stalonetray

Declared by:

<home-manager/modules/services/stalonetray.nix>
services.stalonetray.config

Stalonetray configuration as a set of attributes.

Type:attribute set of (null or string or boolean or signed integer)

Default:{ }

Example:

{  background = "#cccccc";  decorations = null;  geometry = "3x1-600+0";  icon_size = 30;  sticky = true;}

Declared by:

<home-manager/modules/services/stalonetray.nix>
services.stalonetray.extraConfig

Additional configuration lines for stalonetrayrc.

Type:strings concatenated with “\n”

Default:""

Example:

''  geometry 3x1-600+0  decorations none  icon_size 30  sticky true  background "#cccccc"''

Declared by:

<home-manager/modules/services/stalonetray.nix>
services.status-notifier-watcher.enable

Whether to enable Status Notifier Watcher.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/status-notifier-watcher.nix>
services.status-notifier-watcher.package

The status-notifier-item package to use.

Type:package

Default:pkgs.haskellPackages.status-notifier-item

Declared by:

<home-manager/modules/services/status-notifier-watcher.nix>
services.swayidle.enable

Whether to enable idle manager for Wayland.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.package

The swayidle package to use.

Type:package

Default:pkgs.swayidle

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.events

Run command on occurrence of a event.

Type:list of (submodule)

Default:[ ]

Example:

[  { event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock -fF"; }  { event = "lock"; command = "lock"; }]

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.events.*.command

Command to run when event occurs.

Type:string

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.events.*.event

Event name.

Type:one of “before-sleep”, “after-resume”, “lock”, “unlock”

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.extraArgs

Extra arguments to pass to swayidle.

Type:list of string

Default:

[  "-w"]

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.timeouts

List of commands to run after idle timeout.

Type:list of (submodule)

Default:[ ]

Example:

[  { timeout = 60; command = "${pkgs.swaylock}/bin/swaylock -fF"; }  { timeout = 90; command = "${pkgs.systemd}/bin/systemctl suspend"; }]

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.timeouts.*.command

Command to run after timeout seconds of inactivity.

Type:string

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.timeouts.*.resumeCommand

Command to run when there is activity again.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swayidle.timeouts.*.timeout

Timeout in seconds.

Type:positive integer, meaning >0

Example:60

Declared by:

<home-manager/modules/services/swayidle.nix>
services.swaync.enable

Whether to enable Swaync notification daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/swaync.nix>
services.swaync.package

The swaynotificationcenter package to use.

Type:package

Default:pkgs.swaynotificationcenter

Declared by:

<home-manager/modules/services/swaync.nix>
services.swaync.settings

Configuration written to$XDG_CONFIG_HOME/swaync/config.json.Seehttps://github.com/ErikReider/SwayNotificationCenter/blob/main/src/configSchema.jsonfor the documentation.

Type:JSON value

Default:{ }

Example:

{  positionX = "right";  positionY = "top";  layer = "overlay";  control-center-layer = "top";  layer-shell = true;  cssPriority = "application";  control-center-margin-top = 0;  control-center-margin-bottom = 0;  control-center-margin-right = 0;  control-center-margin-left = 0;  notification-2fa-action = true;  notification-inline-replies = false;  notification-icon-size = 64;  notification-body-image-height = 100;  notification-body-image-width = 200;};

Declared by:

<home-manager/modules/services/swaync.nix>
services.swaync.style

CSS style of the bar. Seehttps://github.com/ErikReider/SwayNotificationCenter/blob/main/src/style.cssfor the documentation.

If the value is set to a path literal, then the path will be used as the CSS file.

Type:null or absolute path or strings concatenated with “\n”

Default:null

Example:

''  .notification-row {    outline: none;  }    .notification-row:focus,  .notification-row:hover {    background: @noti-bg-focus;  }    .notification {    border-radius: 12px;    margin: 6px 12px;    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),      0 2px 6px 2px rgba(0, 0, 0, 0.3);    padding: 0;  }''

Declared by:

<home-manager/modules/services/swaync.nix>
services.swayosd.enable

Whether to enable swayosd, a GTK based on screen display for keyboard shortcuts likecaps-lock and volume.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/swayosd.nix>
services.swayosd.package

The swayosd package to use.

Type:package

Default:pkgs.swayosd

Declared by:

<home-manager/modules/services/swayosd.nix>
services.swayosd.stylePath

Use a custom Stylesheet file instead of looking for one.

Type:null or absolute path

Default:null

Example:"/etc/xdg/swayosd/style.css"

Declared by:

<home-manager/modules/services/swayosd.nix>
services.swayosd.topMargin

OSD margin from top edge (0.5 would be screen center).

Type:null or float between 0.0 and 1.0 (inclusive)

Default:null

Example:1.0

Declared by:

<home-manager/modules/services/swayosd.nix>
services.swww.enable

Whether to enable swww, a Solution to your Wayland Wallpaper Woes.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/swww.nix>
services.swww.package

The swww package to use.

Type:package

Default:pkgs.swww

Declared by:

<home-manager/modules/services/swww.nix>
services.swww.extraArgs

Options given to swww-daemon when the service is run.

Seeswww-daemon --help for more information.

Type:list of string

Default:[ ]

Example:

[  "--no-cache"  "--layer"  "bottom"]

Declared by:

<home-manager/modules/services/swww.nix>
services.sxhkd.enable

Whether to enable simple X hotkey daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/sxhkd.nix>
services.sxhkd.package

The sxhkd package to use. containing the sxhkd executable

Type:package

Default:pkgs.sxhkd

Declared by:

<home-manager/modules/services/sxhkd.nix>
services.sxhkd.extraConfig

Additional configuration to add.

Type:strings concatenated with “\n”

Default:""

Example:

super + {_,shift +} {1-9,0}  i3-msg {workspace,move container to workspace} {1-10}

Declared by:

<home-manager/modules/services/sxhkd.nix>
services.sxhkd.extraOptions

Command line arguments to invokesxhkd with.

Type:list of string

Default:[ ]

Example:[ "-m 1" ]

Declared by:

<home-manager/modules/services/sxhkd.nix>
services.sxhkd.keybindings

An attribute set that assigns hotkeys to commands.

Type:attribute set of (null or string or absolute path)

Default:{ }

Example:

{  "super + shift + {r,c}" = "i3-msg {restart,reload}";  "super + {s,w}"         = "i3-msg {stacking,tabbed}";  "super + F1"            = pkgs.writeShellScript "script" "echo $USER";}

Declared by:

<home-manager/modules/services/sxhkd.nix>
services.syncthing.enable

Whether to enable Syncthing, a self-hosted open-source alternative to Dropbox and Bittorrent Sync..

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.package

The syncthing package to use.

Type:package

Default:pkgs.syncthing

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.allProxy

Overwrites theall_proxy environment variable for the Syncthingprocess to the given value. This is normally used to let Syncthingconnect through a SOCKS5 proxy server. Seehttps://docs.syncthing.net/users/proxying.html.

Type:null or string

Default:null

Example:"socks5://address.com:1234"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.cert

Path to thecert.pem file, which will be copied into Syncthing’sconfig directory.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.extraOptions

Extra command-line arguments to pass tosyncthing

Type:list of string

Default:[ ]

Example:

[  "--reset-deltas"]

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.guiAddress

The address to serve the web interface at.

Type:string

Default:"127.0.0.1:8384"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.key

Path to thekey.pem file, which will be copied into Syncthing’sconfig directory.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.overrideDevices

Whether to delete the devices which are not configured via thedevices option.If set tofalse, devices added via the webinterface will persist and will have to be deleted manually.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.overrideFolders

Whether to delete the folders which are not configured via thefolders option.If set tofalse, folders added via the webinterface will persist and will have to be deleted manually.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.passwordFile

Path to the gui password file.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings

Extra configuration options for Syncthing.Seehttps://docs.syncthing.net/users/config.html.Note that this attribute set does not exactly match the documentedXML format. Instead, this is the format of the JSON REST API. Thereare slight differences. For example, this XML:

<options>  <listenAddress>default</listenAddress>  <minHomeDiskFree unit="%">1</minHomeDiskFree></options>

corresponds to the Nix code:

{  options = {    listenAddresses = [      "default"    ];    minHomeDiskFree = {      unit = "%";      value = 1;    };  };}

Type:open submodule of (JSON value)

Default:{ }

Example:

{  gui = {    theme = "black";  };  options = {    localAnnounceEnabled = false;  };}

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.devices

Peers/devices which Syncthing should communicate with.

Note that you can still add devices manually, but those changeswill be reverted on restart ifoverrideDevicesis enabled.

Type:attribute set of (open submodule of (JSON value))

Default:{ }

Example:

{  bigbox = {    addresses = [      "tcp://192.168.0.10:51820"    ];    id = "7CFNTQM-IMTJBHJ-3UWRDIU-ZGQJFR6-VCXZ3NB-XUH3KZO-N52ITXR-LAIYUAU";  };}

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.devices.<name>.autoAcceptFolders

Automatically create or share folders that this device advertises at the default path.Seehttps://docs.syncthing.net/users/config.html?highlight=autoaccept#config-file-format.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.devices.<name>.id

The device ID. Seehttps://docs.syncthing.net/dev/device-ids.html.

Type:string

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.devices.<name>.name

The name of the device.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders

Folders which should be shared by Syncthing.

Note that you can still add folders manually, but those changeswill be reverted on restart ifoverrideFoldersis enabled.

Type:attribute set of (open submodule of (JSON value))

Default:{ }

Example:

{  "/home/user/sync" = {    id = "syncme";    devices = [ "bigbox" ];  };}

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.enable

Whether to share this folder.This option is useful when you want to define all foldersin one place, but not every machine should share all folders.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.copyOwnershipFromParent

On Unix systems, tries to copy file/folder ownership fromthe parent directory (the directory it’s located in).Requires running Syncthing as a privileged user, orgranting it additional capabilities (e.g. CAP_CHOWN onLinux).

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.devices

The devices this folder should be shared with. Each device mustbe defined in thedevices option.

A list of either strings or attribute sets, where valuesare device names or device configurations.

Type:list of (string or (open submodule of (JSON value)))

Default:[ ]

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.id

The ID of the folder. Must be the same on all devices.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.label

The label of the folder.

Type:string

Default:"‹name›"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.path

The path to the folder which should be shared.Only absolute paths (starting with/) and paths relative tothe user’s home directory (starting with~/) are allowed.

Type:string starting with / or ~/

Default:"‹name›"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.type

Controls how the folder is handled by Syncthing.Seehttps://docs.syncthing.net/users/config.html#config-option-folder.type.

Type:one of “sendreceive”, “sendonly”, “receiveonly”, “receiveencrypted”

Default:"sendreceive"

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.versioning

How to keep changed/deleted files with Syncthing.There are 4 different types of versioning with different parameters.Seehttps://docs.syncthing.net/users/versioning.html.

Type:null or (open submodule of (JSON value))

Default:null

Example:

[  {    versioning = {      type = "simple";      params.keep = "10";    };  }  {    versioning = {      type = "trashcan";      params.cleanoutDays = "1000";    };  }  {    versioning = {      type = "staggered";      fsPath = "/syncthing/backup";      params = {        cleanInterval = "3600";        maxAge = "31536000";      };    };  }  {    versioning = {      type = "external";      params.versionsPath = pkgs.writers.writeBash "backup" ''        folderpath="$1"        filepath="$2"        rm -rf "$folderpath/$filepath"      '';    };  }]

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.folders.<name>.versioning.type

The type of versioning.Seehttps://docs.syncthing.net/users/versioning.html.

Type:one of “external”, “simple”, “staggered”, “trashcan”

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options

The options element contains all other global configuration options

Type:open submodule of (JSON value)

Default:{ }

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.limitBandwidthInLan

Whether to apply bandwidth limits to devices in the same broadcast domain as the local device.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.localAnnounceEnabled

Whether to send announcements to the local LAN, also use such announcements to find other devices.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.localAnnouncePort

The port on which to listen and send IPv4 broadcast announcements to.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.maxFolderConcurrency

This option controls how many folders may concurrently be in I/O-intensive operations such as syncing or scanning.The mechanism is described in detail in aseparate chapter.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.relaysEnabled

When true, relays will be connected to and potentially used for device to device connections.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.settings.options.urAccepted

Whether the user has accepted to submit anonymous usage data.The default, 0, mean the user has not made a choice, and Syncthing will ask at some point in the future.“-1” means no, a number above zero means that that version of usage reporting has been accepted.

Type:null or signed integer

Default:null

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.tray.enable

Whether to enable a syncthing tray service.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.tray.package

Syncthing tray package to use.

Type:package

Default:pkgs.syncthingtray-minimal

Example:pkgs.qsyncthingtray

Declared by:

<home-manager/modules/services/syncthing.nix>
services.syncthing.tray.command

Syncthing tray command to use.

Type:string

Default:syncthingtray --wait

Example:qsyncthingtray

Declared by:

<home-manager/modules/services/syncthing.nix>
services.systembus-notify.enable

Whether to enable systembus-notify - system bus notification daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/systembus-notify.nix>
services.systembus-notify.package

The systembus-notify package to use.

Type:package

Default:pkgs.systembus-notify

Declared by:

<home-manager/modules/services/systembus-notify.nix>
services.taffybar.enable

Whether to enable Taffybar.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/taffybar.nix>
services.taffybar.package

The taffybar package to use.

Type:package

Default:pkgs.taffybar

Declared by:

<home-manager/modules/services/taffybar.nix>
services.tahoe-lafs.enable

Whether to enable Tahoe-LAFS.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/tahoe-lafs.nix>
services.tahoe-lafs.package

The tahoe-lafs package to use.

Type:package

Default:pkgs.tahoe-lafs

Declared by:

<home-manager/modules/services/tahoe-lafs.nix>
services.tailscale-systray.enable

Whether to enable Official Tailscale systray application for Linux.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/tailscale-systray.nix>
services.tailscale-systray.package

The tailscale package to use.

Type:package

Default:pkgs.tailscale

Declared by:

<home-manager/modules/services/tailscale-systray.nix>
services.taskwarrior-sync.enable

Whether to enable Taskwarrior periodic sync.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/taskwarrior-sync.nix>
services.taskwarrior-sync.package

The taskwarrior2 package to use.

Type:package

Default:pkgs.taskwarrior2

Example:pkgs.taskwarrior3

Declared by:

<home-manager/modules/services/taskwarrior-sync.nix>
services.taskwarrior-sync.frequency

How often to runtaskwarrior sync. Thisvalue is passed to the systemd timer configuration as theOnCalendar option. Seesystemd.time(7)for more information about the format.

Type:string

Default:"*:0/5"

Declared by:

<home-manager/modules/services/taskwarrior-sync.nix>
services.tldr-update.enable

Whether to enable Automatic updates for the tldr CLI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/tldr-update.nix>
services.tldr-update.package

The tldr package to use.

Type:package

Default:pkgs.tldr

Example:tlrc

Declared by:

<home-manager/modules/services/tldr-update.nix>
services.tldr-update.period

Systemd timer period to create for scheduledtldr --update.

The format is described insystemd.time(7).

Type:string

Default:"weekly"

Declared by:

<home-manager/modules/services/tldr-update.nix>
services.trayer.enable

Whether to enable trayer, the lightweight GTK2+ systray for UNIX desktops.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/trayer.nix>
services.trayer.package

The trayer package to use.

Type:package

Default:pkgs.trayer

Declared by:

<home-manager/modules/services/trayer.nix>
services.trayer.settings

Trayer configuration as a set of attributes. Further details can befound intrayer’s README.

SetDockType

boolean (default:true)

SetPartialStrut

boolean (default:true)

align

one of “left”, “right”, “center” (default:"center")

alpha

signed integer (default:127)

distance

signed integer (default:0)

distancefrom

one of “left”, “right”, “top”, “bottom” (default:"top")

edge

one of “left”, “right”, “top”, “bottom”, “none” (default:"bottom")

expand

boolean (default:true)

height

signed integer (default:26)

heighttype

one of “request”, “pixel” (default:"pixel")

iconspacing

signed integer (default:0)

margin

signed integer (default:0)

monitor

unsigned integer, meaning >=0, or value “primary” (singular enum) (default:0)

padding

signed integer (default:0)

tint

string (default:"0xFFFFFFFF")

transparent

boolean (default:false)

width

signed integer (default:100)

widthtype

one of “request”, “pixel”, “percent” (default:"percent")

Type:attribute set of (null or string or boolean or signed integer)

Default:{ }

Example:

{  edge = "top";  padding = 6;  SetDockType = true;  tint = "0x282c34";}

Declared by:

<home-manager/modules/services/trayer.nix>
services.trayscale.enable

Whether to enable An unofficial GUI wrapper around the Tailscale CLI client…

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/trayscale.nix>
services.trayscale.package

The trayscale package to use.

Type:package

Default:pkgs.trayscale

Declared by:

<home-manager/modules/services/trayscale.nix>
services.trayscale.hideWindow

Whether to hide the trayscale window on startup.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/trayscale.nix>
services.twmn.enable

Whether to enable twmn, a tiling window manager notification daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.duration

The time each notification remains visible, in milliseconds.

Type:unsigned integer, meaning >=0

Default:3000

Example:5000

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.extraConfig

Extra configuration options to add to the twmnd config file. Seehttps://github.com/sboli/twmn/blob/master/README.mdfor details.

Type:attribute set

Default:{ }

Example:{ main.activation_command = "${pkgs.hello}/bin/hello"; }

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.host

Host address to listen on for notifications.

Type:string

Default:"127.0.0.1"

Example:"laptop.lan"

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.icons.critical

Path to the critical notifications’ icon.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.icons.info

Path to the informative notifications’ icon.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.icons.warning

Path to the warning notifications’ icon.

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.port

UDP port to listen on for notifications.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Default:9797

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.screen

Screen number to display notifications on when using a multi-headdesktop.

Type:null or signed integer

Default:null

Example:0

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.soundCommand

Command to execute to play a notification’s sound.

Type:string

Default:""

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.color

Notification’s text color. RGB hex and keywords (e.g.lightgray)are supported.

Type:string

Default:"#999999"

Example:"lightgray"

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.font.package

The font package to use. Package providing the font to use for the notification text.This package is only used iffont.package is not null.

Type:null or package

Default:null

Example:pkgs.dejavu_fonts

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.font.family

Notification text’s font family.

Type:string

Default:"Sans"

Example:"Noto Sans"

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.font.size

Notification text’s font size.

Type:unsigned integer, meaning >=0

Default:13

Example:42

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.font.variant

Notification text’s font variant.

Type:one of “oblique”, “italic”, “ultra-light”, “light”, “medium”, “semi-bold”, “bold”, “ultra-bold”, “heavy”, “ultra-condensed”, “extra-condensed”, “condensed”, “semi-condensed”, “semi-expanded”, “expanded”, “extra-expanded”, “ultra-expanded”

Default:"medium"

Example:"heavy"

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.text.maxLength

Maximum length of the text before it is cut and suffixed with “…”.Never cuts ifnull.

Type:null or (unsigned integer, meaning >=0)

Default:null

Example:80

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.alwaysOnTop

Whether to enable forcing the notification window to always be on top.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.bounce.enable

Whether to enable notification bounce when displaying next notification directly.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.bounce.duration

The bounce animation duration in milliseconds.

Type:unsigned integer, meaning >=0

Default:500

Example:618

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeIn

Options for the notification appearance’s animation.

Type:submodule

Default:{ }

Example:

{  curve = 19;  duration = 618;}

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeIn.curve

The qt easing-curve animation to use for the animation. SeeQEasingCurve documentation.

Type:integer between 0 and 40 (both inclusive)

Default:38

Example:19

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeIn.duration

The animation duration in milliseconds.

Type:unsigned integer, meaning >=0

Default:1000

Example:618

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeOut

Options for the notification disappearance’s animation.

Type:submodule

Default:{ }

Example:

{  curve = 19;  duration = 618;}

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeOut.curve

The qt easing-curve animation to use for the animation. SeeQEasingCurve documentation.

Type:integer between 0 and 40 (both inclusive)

Default:38

Example:19

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.animation.easeOut.duration

The animation duration in milliseconds.

Type:unsigned integer, meaning >=0

Default:1000

Example:618

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.color

Notification’s background color. RGB hex and keywords (e.g.lightgray) are supported.

Type:string

Default:"#000000"

Example:"lightgray"

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.height

Height of the slide bar. Useful to match your tiling windowmanager’s bar.

Type:unsigned integer, meaning >=0

Default:18

Example:42

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.offset.x

Offset of the notification’s slide starting point in pixels on thehorizontal axis (positive is rightward).

Type:signed integer

Default:0

Example:50

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.offset.y

Offset of the notification’s slide starting point in pixels on thevertical axis (positive is upward).

Type:signed integer

Default:0

Example:-100

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.opacity

The notification window’s opacity.

Type:integer between 0 and 100 (both inclusive)

Default:100

Example:80

Declared by:

<home-manager/modules/services/twmn.nix>
services.twmn.window.position

Position of the notification slide. The notification will slidein vertically from the border if placed intop_center orbottom_center,horizontally otherwise.

Type:one of “tr”, “top_right”, “tl”, “top_left”, “br”, “bottom_right”, “bl”, “bottom_left”, “tc”, “top_center”, “bc”, “bottom_center”, “c”, “center”

Default:"top_right"

Example:"bottom_left"

Declared by:

<home-manager/modules/services/twmn.nix>
services.udiskie.enable

Whether to enable the udiskie mount daemon.

Note, if you use NixOS then you must addservices.udisks2.enable = trueto your system configuration. Otherwise mounting will fail becausethe Udisk2 DBus service is not found.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/udiskie.nix>
services.udiskie.package

The udiskie package to use.

Type:package

Default:pkgs.udiskie

Declared by:

<home-manager/modules/services/udiskie.nix>
services.udiskie.automount

Whether to automatically mount new devices.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/udiskie.nix>
services.udiskie.notify

Whether to show pop-up notifications.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/udiskie.nix>
services.udiskie.settings

Configuration written to$XDG_CONFIG_HOME/udiskie/config.yml.

Seehttps://github.com/coldfix/udiskie/blob/master/doc/udiskie.8.txt#configurationfor the full list of options.

Type:YAML 1.1 value

Default:{ }

Example:

{  program_options = {    udisks_version = 2;    tray = true;  };  icon_names.media = [ "media-optical" ];}

Declared by:

<home-manager/modules/services/udiskie.nix>
services.udiskie.tray

Whether to display tray icon.

The options are

always

Always show tray icon.

auto

Show tray icon only when there is a device available.

never

Never show tray icon.

Type:one of “always”, “auto”, “never”

Default:"auto"

Declared by:

<home-manager/modules/services/udiskie.nix>
services.unclutter.enable

Whether to enable unclutter.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/unclutter.nix>
services.unclutter.package

The unclutter-xfixes package to use.

Type:package

Default:pkgs.unclutter-xfixes

Declared by:

<home-manager/modules/services/unclutter.nix>
services.unclutter.extraOptions

More arguments to pass to the unclutter command.

Type:list of string

Default:[ ]

Example:

[  "exclude-root"  "ignore-scrolling"]

Declared by:

<home-manager/modules/services/unclutter.nix>
services.unclutter.threshold

Minimum number of pixels considered cursor movement.

Type:signed integer

Default:1

Declared by:

<home-manager/modules/services/unclutter.nix>
services.unclutter.timeout

Number of seconds before the cursor is marked inactive.

Type:signed integer

Default:1

Declared by:

<home-manager/modules/services/unclutter.nix>
services.unison.enable

Whether to enable Unison synchronisation.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/unison.nix>
services.unison.package

The unison package to use.

Type:package

Default:pkgs.unison

Example:pkgs.unison.override { enableX11 = false; }

Declared by:

<home-manager/modules/services/unison.nix>
services.unison.pairs

Unison root pairs to keep synchronised.

Type:attribute set of (submodule)

Default:{ }

Example:

{  "my-documents" = {    roots = [      "/home/user/documents"      "ssh://remote/documents"    ];  };}

Declared by:

<home-manager/modules/services/unison.nix>
services.unison.pairs.<name>.commandOptions

Additional command line options as a dictionary to pass to theunison program.

Use a list of strings to declare the same option multiple times.

Seeunison(1)for a list of available options.

Type:attribute set of (string or list of string)

Default:

{  repeat = "watch";  sshcmd = "${pkgs.openssh}/bin/ssh";  ui = "text";  auto = "true";  batch = "true";  log = "false"; # don't log to file, handled by systemd}

Declared by:

<home-manager/modules/services/unison.nix>
services.unison.pairs.<name>.roots

Pair of roots to synchronise.

Type:list of string of length 2

Example:

[  "/home/user/documents"  "ssh://remote/documents"]

Declared by:

<home-manager/modules/services/unison.nix>
services.unison.pairs.<name>.stateDirectory

Unison state directory to use.

Type:absolute path

Default:"$XDG_DATA_HOME/unison"

Declared by:

<home-manager/modules/services/unison.nix>
services.vdirsyncer.enable

Whether to enable vdirsyncer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/vdirsyncer.nix>
services.vdirsyncer.package

The vdirsyncer package to use.

Type:package

Default:pkgs.vdirsyncer

Declared by:

<home-manager/modules/services/vdirsyncer.nix>
services.vdirsyncer.configFile

Optional configuration file to link to use instead ofthe default file ($XDG_CONFIG_HOME/vdirsyncer/config).

Type:null or absolute path

Default:null

Declared by:

<home-manager/modules/services/vdirsyncer.nix>
services.vdirsyncer.frequency

How often to run vdirsyncer. This value is passed to the systemdtimer configuration as the onCalendar option. Seesystemd.time(7)for more information about the format.

Type:string

Default:"*:0/5"

Declared by:

<home-manager/modules/services/vdirsyncer.nix>
services.vdirsyncer.verbosity

Whether vdirsyncer should produce verbose output.

Type:null or one of “CRITICAL”, “ERROR”, “WARNING”, “INFO”, “DEBUG”

Default:null

Declared by:

<home-manager/modules/services/vdirsyncer.nix>
services.volnoti.enable

Whether to enable Volnoti volume HUD daemon.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/volnoti.nix>
services.volnoti.package

The volnoti package to use.

Type:package

Default:pkgs.volnoti

Declared by:

<home-manager/modules/services/volnoti.nix>
services.walker.enable

Whether to enable walker.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.package

The walker package to use.

Type:null or package

Default:pkgs.walker

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.settings

Configuration settings for walker. All the available options can be found here:https://github.com/abenz1267/walker/wiki/Basic-Configuration

Type:TOML value

Default:{ }

Example:

{  app_launch_prefix = "";  as_window = false;  close_when_open = false;  disable_click_to_close = false;  force_keyboard_focus = false;  hotreload_theme = false;  locale = "";  monitor = "";  terminal_title_flag = "";  theme = "default";  timeout = 0;}

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.systemd.enable

Whatever to enable Walker’s Systemd Unit.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.theme

The custom theme used by walker. Setting this option overridessettings.theme.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.theme.layout

The layout of the theme.

Seehttps://github.com/abenz1267/walker/wiki/Theming for the full list of options.

Type:TOML value

Default:{ }

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.theme.name

The theme name.

Type:string

Default:"nixos"

Declared by:

<home-manager/modules/services/walker.nix>
services.walker.theme.style

The styling of the theme, written in GTK CSS.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/walker.nix>
services.way-displays.enable

Whether to enable way-displays.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/way-displays.nix>
services.way-displays.package

The way-displays package to use.

Type:package

Default:pkgs.way-displays

Declared by:

<home-manager/modules/services/way-displays.nix>
services.way-displays.settings

The way-displays configuration written to$XDG_CONFIG_HOME/way-displays/cfg.yml. Seehttps://github.com/alex-courtis/way-displays/wiki/Configuration for adescription of available options.

Whennull a configuration file is not generated,which allows way-displays to write its own configuration.

Type:null or YAML 1.1 value

Default:{ }

Example:

{  ORDER = [    "DP-2"    "Monitor Maker ABC123"    "!^my_regex_here[0-9]+"    "'!.*$'"  ];  SCALING = false;  MODE = [    {      NAME_DESC = "HDMI-A-1";      WIDTH = 1920;      HEIGHT = 1080;      HZ = 60;    }  ];  TRANSFORM = [    {      NAME_DESC = "eDP-1"      TRANSFORM = "FLIPPED-90";    }  ];};

Declared by:

<home-manager/modules/services/way-displays.nix>
services.way-displays.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/services/way-displays.nix>
services.wayvnc.enable

Whether to enable wayvnc VNC server.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.package

The wayvnc package to use.

Type:package

Default:pkgs.wayvnc

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.autoStart

Whether to enable autostarting of wayvnc.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.settings

See CONFIGURATION section inwayvnc(1).

Type:open submodule of attribute set of (atom (null, bool, int, float or string))

Default:{ }

Example:

{  address = "0.0.0.0";  port = 5901;}

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.settings.address

The address to which the server shall bind, e.g. 0.0.0.0 orlocalhost.

Type:string

Example:"0.0.0.0"

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.settings.port

The port to which the server shall bind.

Type:16 bit unsigned integer; between 0 and 65535 (both inclusive)

Example:5901

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wayvnc.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/services/wayvnc.nix>
services.wl-clip-persist.enable

Whether to enable wl-clip-persist, a Wayland clipboard persistence tool.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wl-clip-persist.nix>
services.wl-clip-persist.package

The wl-clip-persist package to use.

Type:package

Default:pkgs.wl-clip-persist

Declared by:

<home-manager/modules/services/wl-clip-persist.nix>
services.wl-clip-persist.clipboardType

The clipboard type to persist.

  • regular: Persist the regular clipboard only (recommended).

  • primary: Persist the primary selection only.

  • both: Persist both regular and primary clipboards.

Note: Operating on the primary clipboard may have unintended side effectsfor some applications.

Type:one of “regular”, “primary”, “both”

Default:"regular"

Declared by:

<home-manager/modules/services/wl-clip-persist.nix>
services.wl-clip-persist.extraOptions

Extra command-line arguments to pass to wl-clip-persist.

Available options include:

  • --write-timeout <ms>: Timeout for writing clipboard data (default: 3000).

  • --ignore-event-on-error: Only handle events without errors.

  • --all-mime-type-regex <regex>: Filter events by MIME type regex.

  • --selection-size-limit <bytes>: Limit clipboard data size.

  • --reconnect-tries <n>: Number of reconnection attempts.

  • --reconnect-delay <ms>: Delay between reconnect attempts (default: 100).

  • --disable-timestamps: Disable log timestamps.

Type:list of string

Default:[ ]

Example:

[  "--write-timeout"  "1000"  "--ignore-event-on-error"  "--all-mime-type-regex"  "'(?i)^(?!image/).+'"  "--selection-size-limit"  "1048576"]

Declared by:

<home-manager/modules/services/wl-clip-persist.nix>
services.wl-clip-persist.systemdTargets

The systemd targets that will automatically start the wl-clip-persist service.

Type:(list of string) or string

Default:[ config.wayland.systemd.target ]

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/wl-clip-persist.nix>
services.wlsunset.enable

Whether to enable wlsunset.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.package

The wlsunset package to use.

Type:package

Default:pkgs.wlsunset

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.gamma

Gamma value to use.

Type:string or floating point number or signed integer

Default:1.0

Example:0.6

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.latitude

Your current latitude, between-90.0 and90.0.

Type:null or string or floating point number or signed integer

Default:null

Example:-74.3

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.longitude

Your current longitude, between-180.0 and180.0.

Type:null or string or floating point number or signed integer

Default:null

Example:12.5

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.output

Name of output to use, by default all outputs are used.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.sunrise

The time when the sun rises (in 24 hour format).

Type:null or string

Default:null

Example:"06:30"

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.sunset

The time when the sun sets (in 24 hour format).

Type:null or string

Default:null

Example:"18:00"

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.systemdTarget

Systemd target to bind to.

Type:string

Default:config.wayland.systemd.target

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.temperature.day

Colour temperature to use during the day, in Kelvin (K).This value must be greater thantemperature.night.

Type:signed integer

Default:6500

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wlsunset.temperature.night

Colour temperature to use during the night, in Kelvin (K).This value must be smaller thantemperature.day.

Type:signed integer

Default:4000

Declared by:

<home-manager/modules/services/wlsunset.nix>
services.wluma.enable

Whether to enable Enable wluma, a service for automatic brightness adjustment.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wluma.nix>
services.wluma.package

The wluma package to use.

Type:package

Default:pkgs.wluma

Declared by:

<home-manager/modules/services/wluma.nix>
services.wluma.settings

Configuration to use for wluma. Seehttps://github.com/maximbaz/wluma/blob/main/config.tomlfor available options.

Type:TOML value

Default:{ }

Example:

{  als = {    iio = {      path = "";      thresholds = {        "0" = "night";        "20" = "dark";        "250" = "normal";        "500" = "bright";        "80" = "dim";        "800" = "outdoors";      };    };  };}

Declared by:

<home-manager/modules/services/wluma.nix>
services.wluma.systemd.enable

Wluma systemd integration

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/wluma.nix>
services.wluma.systemd.target

The systemd target that will automatically start the Wluma service.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:null or string

Default:config.wayland.systemd.target

Example:"sway-session.target"

Declared by:

<home-manager/modules/services/wluma.nix>
services.wob.enable

Whether to enable wob.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wob.nix>
services.wob.package

The wob package to use.

Type:null or package

Default:pkgs.wob

Declared by:

<home-manager/modules/services/wob.nix>
services.wob.settings

Configuration written to$XDG_CONFIG_HOME/wob/wob.ini.Seewob.ini(5) for documentation.

Type:attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string))

Default:{ }

Example:

{  "" = {    border_size = 10;    height = 50;  };  "output.foo".name = "DP-1";  "style.muted".background_color = "032cfc";}

Declared by:

<home-manager/modules/services/wob.nix>
services.wob.systemd

Whether to enable systemd service and socket for wob.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/wob.nix>
services.wpaperd.enable

Whether to enable wpaperd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/wpaperd.nix>
services.wpaperd.package

The wpaperd package to use.

Type:null or package

Default:pkgs.wpaperd

Declared by:

<home-manager/modules/services/wpaperd.nix>
services.wpaperd.settings

Configuration written to$XDG_CONFIG_HOME/wpaperd/wallpaper.toml.Seehttps://github.com/danyspin97/wpaperd#wallpaper-configurationfor the full list of options.

Type:TOML value

Default:{ }

Example:

{  eDP-1 = {    path = "/home/foo/Pictures/Wallpaper";    apply-shadow = true;  };  DP-2 = {    path = "/home/foo/Pictures/Anime";    sorting = "descending";  };}

Declared by:

<home-manager/modules/services/wpaperd.nix>
services.xcape.enable

Whether to enable xcape.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xcape.nix>
services.xcape.package

The xcape package to use.

Type:package

Default:pkgs.xcape

Declared by:

<home-manager/modules/services/xcape.nix>
services.xcape.mapExpression

The value has the grammarKey[|OtherKey].

The list of key names is found in the header fileX11/keysymdef.h (remove theXK_ prefix). Note that due to limitationsof X11 shifted keys must be specified as a shift keyfollowed by the key to be pressed rather than the actualname of the character. For example to generate “{” theexpressionShift_L|bracketleft could beused (assuming that you have a key with “{” above “[”).

You can also specify keys in decimal (prefix #), octal (#0),or hexadecimal (#0x). They will be interpreted as keycodesunless no corresponding key name is found.

Type:attribute set of string

Default:{ }

Example:

{  Control_L = "Control_L|O";  Shift_L = "Escape";}

Declared by:

<home-manager/modules/services/xcape.nix>
services.xcape.timeout

If you hold a key longer than this timeout, xcape will notgenerate a key event. Default is 500 ms.

Type:null or signed integer

Default:null

Example:500

Declared by:

<home-manager/modules/services/xcape.nix>
services.xembed-sni-proxy.enable

Whether to enable XEmbed SNI Proxy.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xembed-sni-proxy.nix>
services.xembed-sni-proxy.package

The plasma-workspace package to use.

Type:package

Default:pkgs.kdePackages.plasma-workspace

Declared by:

<home-manager/modules/services/xembed-sni-proxy.nix>
services.xidlehook.enable

Whether to enable xidlehook systemd service.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.package

The xidlehook package to use.

Type:package

Default:pkgs.xidlehook

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.detect-sleep

Whether to enable detecting when the system wakes up from a suspended state and resetting the idle timer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.environment

Extra environment variables to be exported in the script.These options are passed unescaped asexport name=value.

Type:attribute set of string

Default:{ }

Example:

{  "primary-display" = "$(xrandr | awk '/ primary/{print $1}')";}

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.not-when-audio

Disable locking when audio is playing.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.not-when-fullscreen

Disable locking when a fullscreen application is in use.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.once

Whether to enable running the program once and exiting.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.timers

A set of commands to be executed after a specific idle timeout.The commands specified incommand andcancellerare passed escaped to the script.To use or re-use environment variables that are script-dependent, specify themin theenvironment section.

Type:list of (submodule)

Default:[ ]

Example:

[  {    delay = 60;    command = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness .1";    canceller = "xrandr --output \"$PRIMARY_DISPLAY\" --brightness 1";  }  {    delay = 120;    command = "${pkgs.writeShellScript "my-script" ''      # A complex script to run    ''}";  }]

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.timers.*.canceller

Command executed when the user becomes active again.This is only executed if the next timer has not been reached.Path to executables are accepted.The command is automatically escaped.

Type:string

Default:""

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Resuming activity"

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.timers.*.command

Command executed after the idle timeout is reached.Path to executables are accepted.The command is automatically escaped.

Type:null or string

Example:

${pkgs.libnotify}/bin/notify-send "Idle" "Sleeping in 1 minute"

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xidlehook.timers.*.delay

Time before executing the command.

Type:unsigned integer, meaning >=0

Example:60

Declared by:

<home-manager/modules/services/xidlehook.nix>
services.xscreensaver.enable

Whether to enable XScreenSaver.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xscreensaver.nix>
services.xscreensaver.package

The xscreensaver package to use.

Type:package

Default:pkgs.xscreensaver

Declared by:

<home-manager/modules/services/xscreensaver.nix>
services.xscreensaver.settings

The settings to use for XScreenSaver.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  fadeTicks = 20;  lock = false;  mode = "blank";}

Declared by:

<home-manager/modules/services/xscreensaver.nix>
services.xsettingsd.enable

Whether to enable xsettingsd.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xsettingsd.nix>
services.xsettingsd.package

The xsettingsd package to use.

Type:package

Default:pkgs.xsettingsd

Declared by:

<home-manager/modules/services/xsettingsd.nix>
services.xsettingsd.settings

Xsettingsd options for configuration file. Seehttps://github.com/derat/xsettingsd/wiki/Settingsfor documentation on these values.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  "Net/ThemeName" = "Numix";  "Xft/Antialias" = true;  "Xft/Hinting" = true;  "Xft/RGBA" = "rgb";}

Declared by:

<home-manager/modules/services/xsettingsd.nix>
services.xsuspender.enable

Whether to enable XSuspender.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.package

The xsuspender package to use.

Type:package

Default:pkgs.xsuspender

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.debug

Whether to enable debug output.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults

XSuspender defaults.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.autoSuspendOnBattery

Whether to auto-apply rules when switching to batterypower even if the window(s) didn’t just lose focus.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.downclockOnBattery

Limit CPU consumption for this factor when on battery power.Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.execResume

Before resuming, execute this shell script. Resume theprocess regardless script failure.

Type:null or string

Default:null

Example:"echo resuming ..."

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.execSuspend

Before suspending, execute this shell script. If it fails,abort suspension.

Type:null or string

Default:null

Example:"echo \"suspending window $XID of process $PID\""

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.matchWmClassContains

Match windows that wm class contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.matchWmClassGroupContains

Match windows where wm class group contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.matchWmNameContains

Match windows where wm name contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.onlyOnBattery

Whether to enable process suspend only on battery.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.resumeEvery

Resume interval in seconds.

Type:signed integer

Default:50

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.resumeFor

Resume duration in seconds.

Type:signed integer

Default:5

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.sendSignals

Whether to send SIGSTOP / SIGCONT signals or not.If false just the exec scripts are run.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.suspendDelay

Initial suspend delay in seconds.

Type:signed integer

Default:5

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.defaults.suspendSubtreePattern

Also suspend descendant processes that match this regex.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules

Attribute set of XSuspender rules.

Type:attribute set of (submodule)

Default:{ }

Example:

{  Chromium = {    matchWmClassContains = "chromium-browser";    suspendDelay = 10;    suspendSubtreePattern = "chromium";  };}

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.autoSuspendOnBattery

Whether to auto-apply rules when switching to batterypower even if the window(s) didn’t just lose focus.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.downclockOnBattery

Limit CPU consumption for this factor when on battery power.Value 1 means 50% decrease, 2 means 66%, 3 means 75% etc.

Type:signed integer

Default:0

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.execResume

Before resuming, execute this shell script. Resume theprocess regardless script failure.

Type:null or string

Default:null

Example:"echo resuming ..."

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.execSuspend

Before suspending, execute this shell script. If it fails,abort suspension.

Type:null or string

Default:null

Example:"echo \"suspending window $XID of process $PID\""

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.matchWmClassContains

Match windows that wm class contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.matchWmClassGroupContains

Match windows where wm class group contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.matchWmNameContains

Match windows where wm name contains string.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.onlyOnBattery

Whether to enable process suspend only on battery.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.resumeEvery

Resume interval in seconds.

Type:signed integer

Default:50

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.resumeFor

Resume duration in seconds.

Type:signed integer

Default:5

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.sendSignals

Whether to send SIGSTOP / SIGCONT signals or not.If false just the exec scripts are run.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.suspendDelay

Initial suspend delay in seconds.

Type:signed integer

Default:5

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.xsuspender.rules.<name>.suspendSubtreePattern

Also suspend descendant processes that match this regex.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/xsuspender.nix>
services.yubikey-agent.enable

Whether to enable Seamless ssh-agent for YubiKeys.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/yubikey-agent.nix>
services.yubikey-agent.package

The yubikey-agent package to use.

Type:package

Default:pkgs.yubikey-agent

Declared by:

<home-manager/modules/services/yubikey-agent.nix>
specialisation

A set of named specialized configurations. These can be used to extendyour base configuration with additional settings. For example, you canhave specialisations named “light” and “dark”that apply light and dark color theme configurations.

Note

This is an experimental option for now and you therefore have toactivate the specialisation by looking up and running the activationscript yourself. Running the activation script will create a newHome Manager generation.

For example, to activate the “dark” specialisation, you canfirst look up your current Home Manager generation by running

$ home-manager generations | head -12022-05-02 22:49 : id 1758 -> /nix/store/jy…ac-home-manager-generation

then run

$ /nix/store/jy…ac-home-manager-generation/specialisation/dark/activateStarting Home Manager activation…

Warning

Since this option is experimental, the activation process maychange in backwards incompatible ways.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/misc/specialisation.nix>
specialisation.<name>.configuration

Arbitrary Home Manager configuration settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/misc/specialisation.nix>
systemd.user.enable

Whether to enable the user systemd service manager.

Type:boolean

Default:pkgs.stdenv.isLinux

Example:true

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.automounts

Definition of systemd per-user automount units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.automount(5).

Type:attribute set of (open submodule of systemd automount unit configuration)

Default:{ }

Example:

{  automount-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Automount = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.automounts.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.automounts.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-automount.automount"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.mounts

Definition of systemd per-user mount units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.mount(5).

Type:attribute set of (open submodule of systemd mount unit configuration)

Default:{ }

Example:

{  mount-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Mount = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.mounts.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.mounts.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-mount.mount"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.paths

Definition of systemd per-user path units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.path(5).

Type:attribute set of (open submodule of systemd path unit configuration)

Default:{ }

Example:

{  path-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Path = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.paths.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.paths.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-path.path"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services

Definition of systemd per-user service units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.service(5).

Type:attribute set of (open submodule of systemd service unit configuration)

Default:{ }

Example:

{  service-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Service = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Service.Environment

Environment variables available to executed processes.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "VAR1=foo"  "VAR2=\"bar baz\""]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Service.ExecStart

Command that is executed when this service is started.

Type:package or string or list of (package or string)

Default:[ ]

Example:"/absolute/path/to/command arg1 arg2"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-service.service"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Unit.X-Reload-Triggers

List of free form strings that can be used to trigger a servicereload during Home Manager activation.

Type:list of (package or string)

Default:[ ]

Example:[ config.xdg.configFile."service.conf".source ]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Unit.X-Restart-Triggers

List of free form strings that can be used to trigger a servicerestart during Home Manager activation.

Type:list of (package or string)

Default:[ ]

Example:[ config.xdg.configFile."service.conf".source ]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.services.<name>.Unit.X-SwitchMethod

The preferred method to use when switching from an old to a newversion of this service.

Type:one of <null>, “reload”, “restart”, “stop-start”, “keep-old”

Default:null

Example:[ "${config.xdg.configFile."service.conf".source}" ]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.servicesStartTimeoutMs

How long to wait for started services to fail until their start isconsidered successful. The value 0 indicates no timeout.

Type:unsigned integer, meaning >=0

Default:0

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.sessionVariables

Environment variables that will be set for the user session.The variable values must be as described inenvironment.d(5).

Type:attribute set of (signed integer or string)

Default:{ }

Example:

{  EDITOR = "vim";}

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.settings

Extra config options for user session service manager. Seesystemd-user.conf(5) foravailable options.

Type:open submodule of attribute set of section of an INI file (attrs of INI atom (null, bool, int, float or string) or a list of them for duplicate keys)

Default:{ }

Example:

{  Manager.DefaultCPUAccounting = true;}

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.settings.Manager.DefaultEnvironment

Configures environment variables passed to all executed processes.

Type:attribute set of (null or string or absolute path or package)

Default:{ }

Example:

{  PATH = "%u/bin:%u/.cargo/bin";}

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.settings.Manager.ManagerEnvironment

Sets environment variables just for the manager process itself.

Type:attribute set of (null or string or absolute path or package)

Default:{ }

Example:

{  PATH = "%u/bin:%u/.cargo/bin";}

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.slices

Definition of systemd per-user slice units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.slice(5).

Type:attribute set of (open submodule of systemd slice unit configuration)

Default:{ }

Example:

{  slice-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Slice = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.slices.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.slices.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-slice.slice"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.sockets

Definition of systemd per-user socket units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.socket(5).

Type:attribute set of (open submodule of systemd socket unit configuration)

Default:{ }

Example:

{  socket-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Socket = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.sockets.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.sockets.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-socket.socket"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.startServices

Whether new or changed services that are wanted by active targetsshould be started. Additionally, stop obsolete services from theprevious generation.

The alternatives are

suggest (orfalse)

Use a very simple shell script to print suggestedsystemctl commands to run. You will have tomanually run those commands after the switch.

sd-switch (ortrue)

Use sd-switch, a tool that determines the necessary changes andautomatically apply them.

Type:boolean or one of “suggest”, “sd-switch”

Default:true

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.systemctlPath

Absolute path to thesystemctl tool. Thisoption may need to be set if running Home Manager on anon-NixOS distribution.

Type:string

Default:"${pkgs.systemd}/bin/systemctl"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.targets

Definition of systemd per-user target units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.target(5).

Type:attribute set of (open submodule of systemd target unit configuration)

Default:{ }

Example:

{  target-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Target = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.targets.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.targets.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-target.target"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.timers

Definition of systemd per-user timer units. Attributes aremerged recursively.

Note that the attributes follow the capitalization and naming usedby systemd. More details can be found insystemd.timer(5).

Type:attribute set of (open submodule of systemd timer unit configuration)

Default:{ }

Example:

{  timer-name = {    Unit = {      Description = "Example description";      Documentation = [ "man:example(1)" "man:example(5)" ];    };    Timer = {      …    };  };};

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.timers.<name>.Unit.Description

A short human-readable label of the unit.

Type:null or string

Default:null

Example:"My daily database backup"

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.timers.<name>.Unit.Documentation

List of URIs referencing documentation for the unit.

Type:(list of string) or string convertible to it

Default:[ ]

Example:

[  "my-timer.timer"]

Declared by:

<home-manager/modules/systemd.nix>
systemd.user.tmpfiles.rules

Rules for creating and cleaning up temporary filesautomatically. Seetmpfiles.d(5)for the exact format.

Type:list of string

Default:[ ]

Example:

[  "L /home/user/Documents - - - - /mnt/data/Documents"]

Declared by:

<home-manager/modules/misc/tmpfiles.nix>
targets.darwin.copyApps.enable

Whether to enable copying macOS applications to the user environment (works with Spotlight).

Type:boolean

Default:pkgs.stdenv.hostPlatform.isDarwin && (lib.versionAtLeast config.home.stateVersion "25.11")

Example:true

Declared by:

<home-manager/modules/targets/darwin/copyapps.nix>
targets.darwin.copyApps.enableChecks

Whether to enable enable App Management checks.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/targets/darwin/copyapps.nix>
targets.darwin.copyApps.directory

Path to link apps relative to the home directory.

Type:string

Default:"Applications/Home Manager Apps"

Declared by:

<home-manager/modules/targets/darwin/copyapps.nix>
targets.darwin.currentHostDefaults

Set macOS user defaults. Unliketargets.darwin.defaults,the preferences will only be applied to the currently logged-in host. Thisdistinction is important for networked accounts.

Values set tonull are ignored.

Warning

Some settings might require a re-login to take effect.

Type:open submodule of attribute set of attribute set of anything

Default:{ }

Example:

{  "com.apple.controlcenter" = {    BatteryShowPercentage = true;  };}

Declared by:

<home-manager/modules/targets/darwin/user-defaults>
targets.darwin.currentHostDefaults."com.apple.controlcenter".BatteryShowPercentage

Whether to show battery percentage in the menu bar.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-currenthost.nix>
targets.darwin.defaults

Set macOS user defaults. Values set tonull areignored.

Warning

Some settings might require a re-login to take effect.

Warning

Some settings are only read fromtargets.darwin.currentHostDefaults.

Type:open submodule of attribute set of attribute set of anything

Default:{ }

Example:

{  "com.apple.desktopservices" = {    DSDontWriteNetworkStores = true;    DSDontWriteUSBStores = true;  };}

Declared by:

<home-manager/modules/targets/darwin/user-defaults>
targets.darwin.defaults.NSGlobalDomain.AppleLanguages

Sets the language to use in the preferred order.

Type:null or (list of string)

Default:null

Example:

[  "en"]

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.AppleLocale

Configures the user locale.

Type:null or string

Default:null

Example:"en_US"

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.AppleMeasurementUnits

Sets the measurement unit.

Type:null or one of “Centimeters”, “Inches”

Default:null

Example:"Centimeters"

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.AppleMetricUnits

Whether to enable the metric system.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.ApplePressAndHoldEnabled

Repeat a key when it is held down (false) or display the accented character selector (true)

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.AppleShowAllExtensions

Always show file extensions in Finder

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.AppleTemperatureUnit

Sets the temperature unit.

Type:null or one of “Celsius”, “Fahrenheit”

Default:null

Example:"Celsius"

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.KeyRepeat

Interval between key repetitions when holding down a key. Lower isfaster. When setting through the control panel, 2 is the lowest value,and 120 the highest.

Type:null or signed integer

Default:null

Example:2

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.NSAutomaticCapitalizationEnabled

Whether to enable automatic capitalization.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.NSAutomaticDashSubstitutionEnabled

Whether to enable smart dashes.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.NSAutomaticPeriodSubstitutionEnabled

Whether to enable period with double space.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.NSAutomaticQuoteSubstitutionEnabled

Whether to enable smart quotes.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults.NSGlobalDomain.NSAutomaticSpellingCorrectionEnabled

Whether to enable spelling correction.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".AutoFillCreditCardData

Whether to enable autofill of credit card numbers.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".AutoFillPasswords

Whether to enable autofill of usernames and passwords.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".AutoOpenSafeDownloads

Whether to enable opening of downloaded files.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".IncludeDevelopMenu

Whether to enable “Develop” menu in the menu bar.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".ShowOverlayStatusBar

Whether to enable status bar.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari".WebKitDeveloperExtrasEnabledPreferenceKey

Configures the web inspector.

Warning

Instead of setting this option directly, setIncludeDevelopMenu instead.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari"."WebKitPreferences.developerExtrasEnabled"

Configures the web inspector.

Warning

Instead of setting this option directly, setIncludeDevelopMenu instead.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.Safari.SandboxBroker".ShowDevelopMenu

Show the “Develop” menu in Safari’s menubar.

Warning

Instead of setting this option directly, set"com.apple.Safari".IncludeDevelopMenu instead.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.desktopservices".DSDontWriteNetworkStores

Disable use of.DS_Store files on network shares.Seetheofficial article for more info.

Type:null or boolean

Default:null

Example:false

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.desktopservices".DSDontWriteUSBStores

Disable use of.DS_Store files on thumb drives.

Type:null or boolean

Default:null

Example:false

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.dock".autohide

Hide the Dock automatically

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.dock".expose-group-apps

Whether to enable grouping of windows by application in Mission Control.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.dock".orientation

Position of the Dock on the screen

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

Default:null

Example:"left"

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.dock".size-immutable

Whether to enable locking of the dock size.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.dock".tilesize

Sets the size of the dock.

Type:null or signed integer

Default:null

Example:64

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.finder".AppleShowAllFiles

Show hidden files in Finder

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.finder".FXRemoveOldTrashItems

Automatically delete items from trash after 30 days

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.finder".ShowPathBar

Show the path bar at the bottom of a Finder window

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.finder".ShowStatusBar

Show the status bar at the bottom of a Finder window

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.battery".ShowPercent

This option no longer works on macOS 11 and later. Instead, usetargets.darwin.currentHostDefaults.\"com.apple.controlcenter\".BatteryShowPercentage.

Whether to show battery percentage in the menu bar.

Type:null or one of “YES”, “NO”

Default:null

Example:"NO"

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".IsAnalog

Whether to enable showing an analog clock instead of a digital one.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".Show24Hour

Whether to enable showing a 24-hour clock, instead of a 12-hour clock.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".ShowAMPM

Show the AM/PM label. Useful if Show24Hour is false. Default is null.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".ShowDate

Show the full date. Default is null.

0 = When Space Allows1 = Always2 = Never

Type:null or one of 0, 1, 2

Default:null

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".ShowDayOfMonth

Whether to enable showing the day of the month.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".ShowDayOfWeek

Whether to enable showing the day of the week.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.apple.menuextra.clock".ShowSeconds

Whether to enable showing the clock with second precision, instead of minutes.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.googlecode.iterm2".AddNewTabAtEndOfTabs

Whether to enable placement of new tabs at the end of the tab bar.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.googlecode.iterm2".AlternateMouseScroll

Whether to enable arrow keys when scrolling in alternate screen mode.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.googlecode.iterm2".CopySelection

Whether to enable copy to clipboard upon selecting text.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.googlecode.iterm2".ExperimentalKeyHandling

Whether to enable experimental key handling for AquaSKK compatibility.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.defaults."com.googlecode.iterm2".OpenTmuxWindowsIn

Configures how to restore tmux windows when attaching to a session.

Possible Values

0

Native windows

1

Native tabs in a new window

2

Tabs in the attaching window

Type:null or signed integer

Default:null

Example:2

Declared by:

<home-manager/modules/targets/darwin/user-defaults/opts-allhosts.nix>
targets.darwin.keybindings

This will configure the default keybindings for text fields in macOSapplications. SeeApple’s documentationfor more details.

Warning

Existing keybinding configuration will be wiped when using thisoption.

Type:attribute set of anything

Default:{ }

Example:

{  "^u" = "deleteToBeginningOfLine:";  "^w" = "deleteWordBackward:";}

Declared by:

<home-manager/modules/targets/darwin/keybindings.nix>
targets.darwin.linkApps.enable

Whether to enable linking macOS applications to the user environment.

Type:boolean

Default:pkgs.stdenv.hostPlatform.isDarwin && (lib.versionOlder config.home.stateVersion "25.11")

Example:true

Declared by:

<home-manager/modules/targets/darwin/linkapps.nix>
targets.darwin.linkApps.directory

Path to link apps relative to the home directory.

Type:string

Default:"Applications/Home Manager Apps"

Declared by:

<home-manager/modules/targets/darwin/linkapps.nix>
targets.darwin.search

Default search engine.

Type:null or one of “Bing”, “DuckDuckGo”, “Ecosia”, “Google”, “Yahoo”

Default:null

Declared by:

<home-manager/modules/targets/darwin/search.nix>
targets.genericLinux.enable

Whether to enable settings that make Home Manager work better onGNU/Linux distributions other than NixOS.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/targets/generic-linux.nix>
uninstall

Whether to set up a minimal configuration that will remove all managedfiles and packages.

Use this with extreme care since running the generated activation scriptwill remove all Home Manager state from your user environment. Thisincludes removing all your historic Home Manager generations.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/uninstall.nix>
vdirsyncer.enable

Whether to enable synchronization using vdirsyncer.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.auth

Authentication settings. The default isbasic.

Type:null or one of “basic”, “digest”, “guess”

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.authCert

Either a path to a certificate with a client certificate andthe 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/programs/vdirsyncer/accounts.nix>
vdirsyncer.clientIdCommand

A command that prints the OAuth credentials to standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor more information.

Type:null or (list of string)

Default:null

Example:

[  "pass"  "client_id"]

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.clientSecretCommand

A command that prints the OAuth credentials to standardoutput.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#googlefor more information.

Type:null or (list of string)

Default:null

Example:

[  "pass"  "client_secret"]

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
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/programs/vdirsyncer/accounts.nix>
vdirsyncer.conflictResolution

What to do in case of a conflict between the storages. Eitherremote wins orlocal wins ora list that contains a command to run. By default, an errormessage is printed.

Type:null or one of “remote wins”, “local wins” or list of string

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.itemTypes

Kinds of items to show. The default is to show everything.This depends on particular features of the server, the resultsare not validated.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.metadata

Metadata keys that should be synchronized when vdirsyncermetasync is executed.

Type:list of string

Default:[ ]

Example:

[  "color"  "displayname"]

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.partialSync

What should happen if synchronization in one directionis impossible due to one storage being read-only.Defaults torevert.

Seehttps://vdirsyncer.pimutils.org/en/stable/config.html#pair-sectionfor more information.

Type:null or one of “revert”, “error”, “ignore”

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.postHook

Command to call for each item creation and modification.The command will be called with the path of the new/updatedfile.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.timeRange

A time range to synchronize. start and end can be any Pythonexpression that returns adatetime.datetimeobject.

Type:null or (submodule)

Default:null

Example:

{  end = "datetime.now() + timedelta(days=365)";  start = "datetime.now() - timedelta(days=365)";}

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.timeRange.end

End of time range to show.

Type:string

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.timeRange.start

Start of time range to show.

Type:string

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.tokenFile

A file path where access tokens are stored.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
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/programs/vdirsyncer/accounts.nix>
vdirsyncer.userAgent

The user agent to report to the server. Defaults tovdirsyncer.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
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/programs/vdirsyncer/accounts.nix>
vdirsyncer.verify

Null or path to certificate to verify SSL against

Type:null or absolute path

Default:null

Example:"/path/to/cert.pem"

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
vdirsyncer.verifyFingerprint

Optional. SHA1 or MD5 fingerprint of the expected server certificate.

Seehttps://vdirsyncer.pimutils.org/en/stable/ssl-tutorial.html#ssl-tutorialfor more information.

Type:null or string

Default:null

Declared by:

<home-manager/modules/programs/vdirsyncer/accounts.nix>
wayland.systemd.target

The systemd target that will automatically start the graphical Wayland services.This option is a generalization of individualsystemd.target orsystemdTarget,and affect all Wayland services by default.

When setting this value to"sway-session.target",make sure to also enablewayland.windowManager.sway.systemd.enable,otherwise the service may never be started.

Type:string

Default:"graphical-session.target"

Example:"sway-session.target"

Declared by:

<home-manager/modules/wayland.nix>
wayland.windowManager.hyprland.enable

Whether to enable configuration for Hyprland, a tiling Waylandcompositor that doesn’t sacrifice on its looks.

Note

This module configures Hyprland and adds it to your user’sPATH,but does not make certain system-level changes. NixOS users shouldenable the NixOS module withprograms.hyprland.enable, whichmakes system-level changes such as adding a desktop session entry.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.package

The hyprland package to use. Set this to null if you use the NixOS module to install Hyprland.

Type:null or package

Default:pkgs.hyprland

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.extraConfig

Extra configuration lines to add to~/.config/hypr/hyprland.conf.

Type:strings concatenated with “\n”

Default:""

Example:

''  # window resize  bind = $mod, S, submap, resize    submap = resize  binde = , right, resizeactive, 10 0  binde = , left, resizeactive, -10 0  binde = , up, resizeactive, 0 -10  binde = , down, resizeactive, 0 10  bind = , escape, submap, reset  submap = reset''

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.finalPackage

The Hyprland package after applying configuration.

Type:null or package(read only)

Default:wayland.windowManager.hyprland.package with applied configuration

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.finalPortalPackage

The xdg-desktop-portal-hyprland package after overriding its hyprland input.

Type:null or package(read only)

Default:wayland.windowManager.hyprland.portalPackage withwayland.windowManager.hyprland.finalPackage override

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.importantPrefixes

List of prefix of attributes to source at the top of the config.

Type:list of string

Default:

[  "$"  "bezier"  "name"  "output"]

Example:

[  "$"  "bezier"]

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.plugins

List of Hyprland plugins to use. Can either be packages orabsolute plugin paths.

Type:list of (package or absolute path)

Default:[ ]

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.portalPackage

The xdg-desktop-portal-hyprland package to use.

Type:null or package

Default:pkgs.xdg-desktop-portal-hyprland

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.settings

Hyprland configuration written in Nix. Entries with the same keyshould be written as lists. Variables’ and colors’ names should bequoted. Seehttps://wiki.hypr.land for more examples.

Note

Use thewayland.windowManager.hyprland.plugins option todeclare plugins.

Type:Hyprland configuration value

Default:{ }

Example:

{  decoration = {    shadow_offset = "0 5";    "col.shadow" = "rgba(00000099)";  };  "$mod" = "SUPER";  bindm = [    # mouse movements    "$mod, mouse:272, movewindow"    "$mod, mouse:273, resizewindow"    "$mod ALT, mouse:272, resizewindow"  ];}

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.sourceFirst

Whether to enable putting source entries at the top of the configuration.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.submaps

Attribute set of Hyprland submaps.

Seehttps://wiki.hypr.land/Configuring/Binds#submaps to learn about submaps

Type:attribute set of (submodule)

Default:{ }

Example:

{  # submap to change window focus with vim keys  move_focus = {    settings = {      bind = [        ", h, movefocus, l"        ", j, movefocus, d"        ", k, movefocus, u"        ", l, movefocus, r"        ", escape, submap, reset"      ];    };  };  other_submap = {    settings = {      # ...    };  };}

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.submaps.<name>.settings

Hyprland binds to be put in the submap

Type:Hyprland binds

Default:{ }

Example:

{  binde = [   ", right, resizeactive, 10 0"   ", left, resizeactive, -10 0"   ", up, resizeactive, 0 -10"   ", down, resizeactive, 0 10"  ];  bind = [    ", escape, submap, reset"  ];}

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.systemd.enable

Whether to enablehyprland-session.target onhyprland startup. This links tographical-session.target.Some important environment variables will be imported to systemdand D-Bus user environment before reaching the target, including

  • DISPLAY

  • HYPRLAND_INSTANCE_SIGNATURE

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.systemd.enableXdgAutostart

Whether to enable autostart of applications usingsystemd-xdg-autostart-generator(8).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.systemd.extraCommands

Extra commands to be run after D-Bus activation.

Type:list of string

Default:

[  "systemctl --user stop hyprland-session.target"  "systemctl --user start hyprland-session.target"]

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.systemd.variables

Environment variables to be imported in the systemd & D-Bus userenvironment.

Type:list of string

Default:

[  "DISPLAY"  "HYPRLAND_INSTANCE_SIGNATURE"  "WAYLAND_DISPLAY"  "XDG_CURRENT_DESKTOP"]

Example:

[  "--all"]

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.hyprland.xwayland.enable

Whether to enable XWayland.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/hyprland.nix>
wayland.windowManager.labwc.enable

Whether to enable Labwc, a wayland window-stacking compositor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.package

The labwc package to use. Set tonull to use Nixos labwc package.

Type:null or package

Default:pkgs.labwc

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.autostart

Command to autostart when labwc start.

Type:list of string

Default:[ ]

Example:

[  "wayvnc &"  "waybar &"  "swaybg -c '#113344' >/dev/null 2>&1 &"]

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.environment

Environment variable to add when labwc start.

Type:list of string

Default:[ ]

Example:

[  "XDG_CURRENT_DESKTOP=labwc:wlroots"  "XKB_DEFAULT_LAYOUT=us"]

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.extraConfig

Extra lines appended to$XDG_CONFIG_HOME/labwc/rc.xml.

Type:strings concatenated with “\n”

Default:""

Example:

''  <tablet mapToOutput="" rotate="0" mouseEmulation="no">    <!-- Active area dimensions are in mm -->    <area top="0.0" left="0.0" width="0.0" height="0.0" />    <map button="Tip" to="Left" />    <map button="Stylus" to="Right" />    <map button="Stylus2" to="Middle" />  </tablet>''

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.menu

Config to configure labwc menu

Type:list of (XML value)

Default:[ ]

Example:

[  {    label = "pipemenu";    menuId = "menu";    execute = "/home/user/nix/scripts/pipe.sh";  }  {    menuId = "client-menu";    label = "Client Menu";    icon = "";    items = [      {        label = "Maximize";        icon = "";        action = {          name = "ToggleMaximize";        };      }      {        label = "Fullscreen";        action = {          name = "ToggleFullscreen";        };      }      {        label = "Alacritty";        action = {          name = "Execute";          command = "alacritty";        };      }      {        label = "Move Left";        action = {          name = "SendToDesktop";          to = "left";        };      }      {        separator = { };      }      {        label = "Workspace";        menuId = "workspace";        icon = "";        items = [          {            label = "Move Left";            action = {              name = "SendToDesktop";              to = "left";            };          }        ];      }      {        separator = true;      }    ];  }];

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.rc

Config to configure labwc options.Use “@attributes” for attributes.Seehttps://labwc.github.io/labwc-config.5.html for configuration.

Type:open submodule of (XML value)

Default:{ }

Example:

{  theme = {    name = "nord";    cornerRadius = 8;    font = {      "@name" = "FiraCode";      "@size" = "11";    };  };  keyboard = {    default = true;    keybind = [      # <keybind key="W-Return"><action name="Execute" command="foot"/></keybind>      {        "@key" = "W-Return";        action = {          "@name" = "Execute";          "@command" = "foot";        };      }      # <keybind key="W-Esc"><action name="Execute" command="loot"/></keybind>      {        "@key" = "W-Esc";        action = {          "@name" = "Execute";          "@command" = "loot";        };      }    ];  };}

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.systemd.enable

Whether to enablelabwc-session.target onlabwc startup. This links tographical-session.target.Some important environment variables will be imported to systemdand D-Bus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.systemd.extraCommands

Extra commands to be run after D-Bus activation.

Type:list of string

Default:

[  "systemctl --user stop labwc-session.target"  "systemctl --user start labwc-session.target"]

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.systemd.variables

Environment variables to be imported in the systemd & D-Bus userenvironment.

Type:list of string

Default:

[  "DISPLAY"  "WAYLAND_DISPLAY"  "XDG_CURRENT_DESKTOP"]

Example:

[  "-all"]

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.labwc.xwayland.enable

Whether to enable XWayland.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/labwc>
wayland.windowManager.river.enable

Whether to enable the river window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.package

The river-classic package to use. Set tonull to not add any river package to your path.This should be done if you want to use the NixOS river module to install river.

Type:null or package

Default:pkgs.river-classic

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.extraConfig

Extra lines appended to$XDG_CONFIG_HOME/river/init.

Type:strings concatenated with “\n”

Default:""

Example:

''  rivertile -view-padding 6 -outer-padding 6 &''

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.extraSessionVariables

Extra session variables set when running the compositor.

Type:attribute set

Default:{ }

Example:

{  MOZ_ENABLE_WAYLAND = "1";}

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.settings

General settings given toriverctl.

Type:River configuration value

Default:{ }

Example:

{  border-width = 2;  declare-mode = [    "locked"    "normal"    "passthrough"  ];  input = {    pointer-foo-bar = {      accel-profile = "flat";      events = true;      pointer-accel = -0.3;      tap = false;    };  };  map = {    normal = {      "Alt Q" = "close";    };  };  rule-add = {    "-app-id" = {      "'bar'" = "csd";      "'float*'" = {        "-title" = {          "'foo'" = "float";        };      };    };  };  set-cursor-warp = "on-output-change";  set-repeat = "50 300";  spawn = [    "firefox"    "'foot -a terminal'"  ];  xcursor-theme = "someGreatTheme 12";}

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.systemd.enable

Whether to enableriver-session.target onriver startup. This links tographical-session.target}.Some important environment variables will be imported to systemdand D-Bus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

  • NIXOS_OZONE_WL

  • XCURSOR_THEME

  • XCURSOR_SIZE

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.systemd.extraCommands

Extra commands to be run after D-Bus activation.

Type:list of string

Default:

[  "systemctl --user stop river-session.target"  "systemctl --user start river-session.target"]

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.systemd.variables

Environment variables to be imported in the systemd & D-Bus userenvironment.

Type:list of string

Default:

[  "DISPLAY"  "WAYLAND_DISPLAY"  "XDG_CURRENT_DESKTOP"  "NIXOS_OZONE_WL"  "XCURSOR_THEME"  "XCURSOR_SIZE"]

Example:

[  "-all"]

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.river.xwayland.enable

Whether to enable XWayland.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/river.nix>
wayland.windowManager.sway.enable

Whether to enable sway wayland compositor.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.package

Sway package to use. Will override the options‘wrapperFeatures’, ‘extraSessionCommands’, and ‘extraOptions’.Set tonull to not add any Sway package to yourpath. This should be done if you want to use the NixOS Swaymodule to install Sway. Beware setting tonull will also disablereloading Sway when new config is activated.

Type:null or package

Default:${pkgs.sway}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.checkConfig

If enabled, validates the generated config file.

Type:boolean

Default:wayland.windowManager.sway.package != null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config

Sway configuration options.

Type:null or (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.assigns

An attribute set that assigns applications to workspaces basedon criteria.

Type:attribute set of list of attribute set of (string or boolean)

Default:{ }

Example:

{"1: web" = [{ class = "^Firefox$"; }];"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars

Sway bars settings blocks. Set to empty list to remove bars completely.

Type:list of (submodule)

Default:see code

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors

Bar color settings. All color classes can be specified using submoduleswith ‘border’, ‘background’, ‘text’, fields and RGB color hex-codes as values.See default values for the reference.Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

Seehttps://i3wm.org/docs/userguide.html#_colors.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.activeWorkspace

Border, background and text color for a workspace button when the workspace is active.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.background

Background color of the bar.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.bindingMode

Border, background and text color for the binding mode indicator

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.focusedBackground

Background color of the bar on the currently focused monitor output.

Type:null or string

Default:null

Example:"#000000"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.focusedSeparator

Text color to be used for the separator on the currently focused monitor output.

Type:null or string

Default:null

Example:"#666666"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.focusedStatusline

Text color to be used for the statusline on the currently focused monitor output.

Type:null or string

Default:null

Example:"#ffffff"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.focusedWorkspace

Border, background and text color for a workspace button when the workspace has focus.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.inactiveWorkspace

Border, background and text color for a workspace button when the workspace does nothave focus and is not active.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.separator

Text color to be used for the separator.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.statusline

Text color to be used for the statusline.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.colors.urgentWorkspace

Border, background and text color for a workspace button when the workspace containsa window with the urgency hint set.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.command

Command that will be used to start a bar.

Type:string

Default:i3bar

Example:"\${pkgs.waybar}/bin/waybar"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.extraConfig

Extra configuration lines for this bar.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.fonts

Font configuration for this bar.

Type:(list of string) or (submodule)

Default:{ }

Example:

{  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];  style = "Bold Semi-Condensed";  size = 11.0;}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.hiddenState

The default bar mode when ‘bar.mode’ == ‘hide’.

Type:null or one of “hide”, “show”

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.id

Specifies the bar ID for the configured bar instance.If this option is missing, the ID is set to bar-x, where x correspondsto the position of the embedding bar block in the config file.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.mode

Bar visibility mode.

Type:null or one of “dock”, “hide”, “invisible”

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.position

The edge of the screen swaybar should show up.

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

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.statusCommand

Command that will be used to get status lines.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.trayOutput

Where to output tray.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.trayPadding

Sets the pixel padding of the system tray.This padding will surround the tray on all sides and between each item.

Type:null or signed integer

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.workspaceButtons

Whether workspace buttons should be shown or not.

Type:null or boolean

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bars.*.workspaceNumbers

Whether workspace numbers should be displayed within the workspace buttons.

Type:null or boolean

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bindkeysToCode

Whether to make use of--to-code in keybindings.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bindswitches

Binds <switch> to execute the sway command command on state changes. Supported switches are lid (laptoplid) and tablet (tablet mode) switches. Valid values for state are on, off and toggle. These switches areon when the device lid is shut and when tablet mode is active respectively. toggle is also supported to runa command both when the switch is toggled on or off.See sway(5).

Type:attribute set of (submodule)

Default:"No bindswitches by default"

Example:

let  laptop = "eDP-1";in{  "lid:on" = {    reload = true;    locked = true;    action = "output ${laptop} disable";  };  "lid:off" = {    reload = true;    locked = true;    action = "output ${laptop} enable";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bindswitches.<name>.action

The sway command to execute on state changes

Type:string

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bindswitches.<name>.locked

Unless the flag --locked is set, the commandwill not be run when a screen locking programis active. If there is a matching binding withand without --locked, the one with will be preferredwhen locked and the one without will bepreferred when unlocked.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.bindswitches.<name>.reload

If the --reload flag is given, the binding willalso be executed when the config is reloaded.toggle bindings will not be executed on reload.The --locked flag will operate as normal so ifthe config is reloaded while locked and–locked is not given, the binding will not beexecuted.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors

Color settings. All color classes can be specified using submoduleswith ‘border’, ‘background’, ‘text’, ‘indicator’ and ‘childBorder’ fieldsand RGB color hex-codes as values. See default values for the reference.Note that ‘sway.config.colors.background’ parameter takes a single RGB value.

Seehttps://i3wm.org/docs/userguide.html#_changing_colors.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.background

Background color of the window. Only applications which do not coverthe whole area expose the color.

Type:string

Default:"#ffffff"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.focused

A window which currently has the focus.

Type:submodule

Default:

{  background = "#285577";  border = "#4c7899";  childBorder = "#285577";  indicator = "#2e9ef4";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.focusedInactive

A window which is the focused one of its container,but it does not have the focus at the moment.

Type:submodule

Default:

{  background = "#5f676a";  border = "#333333";  childBorder = "#5f676a";  indicator = "#484e50";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.placeholder

Background and text color are used to draw placeholder windowcontents (when restoring layouts). Border and indicator are ignored.

Type:submodule

Default:

{  background = "#0c0c0c";  border = "#000000";  childBorder = "#0c0c0c";  indicator = "#000000";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.unfocused

A window which is not focused.

Type:submodule

Default:

{  background = "#222222";  border = "#333333";  childBorder = "#222222";  indicator = "#292d2e";  text = "#888888";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.colors.urgent

A window which has its urgency hint activated.

Type:submodule

Default:

{  background = "#900000";  border = "#2f343a";  childBorder = "#900000";  indicator = "#900000";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.defaultWorkspace

The default workspace to show when sway is launched.This must to correspond to the value of the keybinding of the default workspace.

Type:null or string

Default:null

Example:"workspace number 9"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.down

Home row direction key for moving down.

Type:string

Default:"j"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.floating

Floating window settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.floating.border

Floating windows border width.

Type:signed integer

Default:2

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.floating.criteria

List of criteria for windows that should be opened in a floating mode.

Type:list of attribute set of (string or boolean)

Default:[ ]

Example:

[  {    title = "Steam - Update News";  }  {    class = "Pavucontrol";  }]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.floating.modifier

Modifier key or keys that can be used to drag floating windows.

Type:string

Default:"sway.config.modifier"

Example:"Mod4"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.floating.titlebar

Whether to show floating window titlebars.

Type:boolean

Default:

''  true for state version ≥ 23.05  false for state version < 23.05''

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus

Focus related settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus.followMouse

Whether focus should follow the mouse.

Type:one of “yes”, “no”, “always” or boolean

Default:"yes"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus.forceWrapping

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, usefocus.wrapping instead.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus.mouseWarping

Whether mouse cursor should be warped to the center of the window when switching focusto a window on a different output.

Type:boolean or one of “container”, “output”

Default:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus.newWindow

This option modifies focus behavior on new window activation.

Seehttps://i3wm.org/docs/userguide.html#focus_on_window_activation

Type:one of “smart”, “urgent”, “focus”, “none”

Default:"smart"

Example:"none"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.focus.wrapping

Whether the window focus commands automatically wrap around the edge of containers.

Seehttps://i3wm.org/docs/userguide.html#_focus_wrapping

Type:one of “yes”, “no”, “force”, “workspace”

Default:if focus.forceWrapping then "yes" else "no"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.fonts

Font configuration for window titles, nagbar…

Type:(list of string) or (submodule)

Default:{ }

Example:

{  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];  style = "Bold Semi-Condensed";  size = 11.0;}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps

Gaps related settings.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.bottom

Bottom gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.horizontal

Horizontal gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.inner

Inner gaps value.

Type:null or signed integer

Default:null

Example:12

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.left

Left gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.outer

Outer gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.right

Right gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.smartBorders

This option controls whether to disable container borders onworkspace with a single container.

Type:one of “on”, “off”, “no_gaps”

Default:"off"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.smartGaps

This option controls whether to disable all gaps (outer and inner)on workspace with a single container.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.top

Top gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.gaps.vertical

Vertical gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.input

An attribute set that defines input modules. Seesway-input(5)for options.

Type:attribute set of attribute set of string

Default:{ }

Example:

{  "*" = {    xkb_variant = "dvorak";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.keybindings

An attribute set that assigns a key press to an action using a key symbol.Seehttps://i3wm.org/docs/userguide.html#keybindings.

Consider to uselib.mkOptionDefault function to extend or overridedefault keybindings instead of specifying all of them from scratch.

Type:attribute set of (null or string)

Default:"Default sway keybindings."

Example:

let  modifier = config.wayland.windowManager.sway.config.modifier;in lib.mkOptionDefault {  "${modifier}+Return" = "exec ${cfg.config.terminal}";  "${modifier}+Shift+q" = "kill";  "${modifier}+d" = "exec ${cfg.config.menu}";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.keycodebindings

An attribute set that assigns keypress to an action using key code.Seehttps://i3wm.org/docs/userguide.html#keybindings.

Type:attribute set of (null or string)

Default:{ }

Example:

{  "214" = "exec /bin/script.sh";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.left

Home row direction key for moving left.

Type:string

Default:"h"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.menu

Default launcher to use.

Type:string

Default:${pkgs.dmenu}/bin/dmenu_path | ${pkgs.dmenu}/bin/dmenu | ${pkgs.findutils}/bin/xargs swaymsg exec --

Example:"bemenu-run"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.modes

An attribute set that defines binding modes and keybindingsinside them

Only basic keybinding is supported (bindsym keycomb action),for more advanced setup use ‘sway.extraConfig’.

Type:attribute set of attribute set of string

Default:

{  resize = {    # Binds arrow keys to resizing commands    ${cfg.config.left}" = "resize shrink width 10 px";    ${cfg.config.down}" = "resize grow height 10 px";    ${cfg.config.up}" = "resize shrink height 10 px";    ${cfg.config.right}" = "resize grow width 10 px";    "Left" = "resize shrink width 10 px";    "Down" = "resize grow height 10 px";    "Up" = "resize shrink height 10 px";    "Right" = "resize grow width 10 px";    # Exit resize mode    "Escape" = "mode default";    "Return" = "mode default";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.modifier

Modifier key that is used for all default keybindings.

Type:one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5” or string

Default:"Mod1"

Example:"Mod4"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.output

An attribute set that defines output modules. Seesway-output(5)for options.

Type:attribute set of attribute set of string

Default:{ }

Example:

{  HDMI-A-2 = {    bg = "~/path/to/background.png fill";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.right

Home row direction key for moving right.

Type:string

Default:"l"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.seat

An attribute set that defines seat modules. Seesway-input(5)for options.

Type:attribute set of attribute set of string

Default:{ }

Example:

{  "*" = {    hide_cursor = "when-typing enable";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.startup

Commands that should be executed at startup.

Seehttps://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

Type:list of (submodule)

Default:[ ]

Example:

[{ command = "systemctl --user restart waybar"; always = true; }{ command = "dropbox start"; }{ command = "firefox"; }]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.startup.*.always

Whether to run command on each sway restart.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.startup.*.command

Command that will be executed on startup.

Type:string

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.terminal

Default terminal to run.

Type:string

Default:${pkgs.foot}/bin/foot

Example:"alacritty"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.up

Home row direction key for moving up.

Type:string

Default:"k"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window

Window titlebar and border settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.border

Window border width.

Type:signed integer

Default:2

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.commands

List of commands that should be executed on specific windows.Seefor_window swaywm option documentation.

Type:list of (submodule)

Default:[ ]

Example:

[  {    command = "border pixel 1";    criteria = {      class = "XTerm";    };  }]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.commands.*.command

Swaywm command to execute.

Type:string

Example:"border pixel 1"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.commands.*.criteria

Criteria of the windows on which command should be executed.

A value oftrue is equivalent to using an emptycriteria (which is different from an empty string criteria).

Type:attribute set of (string or boolean)

Example:

{  title = "x200: ~/work";  floating = true;};

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.hideEdgeBorders

Hide window borders adjacent to the screen edges.

Type:one of “none”, “vertical”, “horizontal”, “both”, “smart”, “smart_no_gaps”, “–i3 none”, “–i3 vertical”, “–i3 horizontal”, “–i3 both”, “–i3 smart”, “–i3 smart_no_gaps”

Default:"none"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.window.titlebar

Whether to show window titlebars.

Type:boolean

Default:

''  true for state version ≥ 23.05  false for state version < 23.05''

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.workspaceAutoBackAndForth

Assume you are on workspace “1: www” and switch to “2: IM” usingmod+2 because somebody sent you a message. You don’t need to rememberwhere you came from now, you can just press $mod+2 again to switchback to “1: www”.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.workspaceLayout

The mode in which new containers on workspace level willstart.

Type:one of “default”, “stacking”, “tabbed”

Default:"default"

Example:"tabbed"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.workspaceOutputAssign

Assign workspaces to outputs.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.workspaceOutputAssign.*.output

Name(s) of the output(s) from swaymsg -t get_outputs.

Type:string or list of string

Default:""

Example:"eDP"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.config.workspaceOutputAssign.*.workspace

Name of the workspace to assign.

Type:string

Default:""

Example:"Web"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.extraConfig

Extra configuration lines to add to ~/.config/sway/config.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.extraConfigEarly

Like extraConfig, except lines are added to ~/.config/sway/config before all other configuration.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.extraOptions

Command line arguments passed to launch Sway. Please DO NOT reportissues if you use an unsupported GPU (proprietary drivers).

Type:list of string

Default:[ ]

Example:

[  "--verbose"  "--debug"  "--unsupported-gpu"  "--my-next-gpu-wont-be-nvidia"]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.extraSessionCommands

Shell commands executed just before Sway is started.

Type:strings concatenated with “\n”

Default:""

Example:

''  export SDL_VIDEODRIVER=wayland  # needs qt5.qtwayland in systemPackages  export QT_QPA_PLATFORM=wayland  export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"  # Fix for some Java AWT applications (e.g. Android Studio),  # use this if they aren't displayed properly:  export _JAVA_AWT_WM_NONREPARENTING=1''

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.swaynag.enable

Whether to enable configuration of swaynag, a lightweight error bar for sway.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/swaynag.nix>
wayland.windowManager.sway.swaynag.settings

Configuration written to$XDG_CONFIG_HOME/swaynag/config.

Seeswaynag(5)for a list of available options and an example configuration.Note, configurations declared under<config>will override the default type values of swaynag.

Type:attribute set of attribute set of (Swaynag config atom (null, bool, int, float, str))

Default:{ }

Example:

{  "<config>" = {    edge = "bottom";    font = "Dina 12";  };  green = {    edge = "top";    background = "00AA00";    text = "FFFFFF";    button-background = "00CC00";    message-padding = 10;  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/swaynag.nix>
wayland.windowManager.sway.systemd.enable

Whether to enablesway-session.target onsway startup. This links tographical-session.target.Some important environment variables will be imported to systemdand dbus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • SWAYSOCK

  • XDG_CURRENT_DESKTOP

  • XDG_SESSION_TYPE

  • NIXOS_OZONE_WL

  • XCURSOR_THEME

  • XCURSOR_SIZEYou can extend this list using thesystemd.variables option.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.systemd.dbusImplementation

The D-Bus implementation used on the system.This affects which tool is used to import environment variables when starting the Sway session.On NixOS, this should match the value of the optionservices.dbus.implementation (NixOS).When set todbus,dbus-update-activation-environment --systemd <variables> is run.Otherwise, when set tobroker,systemctl --user import-environment <variables> is run.Seehttps://github.com/swaywm/sway/wiki#systemd-and-dbus-activation-environments for more documentation.

Type:one of “dbus”, “broker”

Default:"dbus"

Example:"broker"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.systemd.extraCommands

Extra commands to run after D-Bus activation.

Type:list of string

Default:

[  "systemctl --user reset-failed"  "systemctl --user start sway-session.target"  "swaymsg -mt subscribe '[]' || true"  "systemctl --user stop sway-session.target"]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.systemd.variables

Environment variables imported into the systemd and D-Bus user environment.

Type:list of string

Default:

[  "DISPLAY"  "WAYLAND_DISPLAY"  "SWAYSOCK"  "XDG_CURRENT_DESKTOP"  "XDG_SESSION_TYPE"  "NIXOS_OZONE_WL"  "XCURSOR_THEME"  "XCURSOR_SIZE"]

Example:

[  "--all"]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.systemd.xdgAutostart

Whether to enable autostart of applications usingsystemd-xdg-autostart-generator(8).

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.wrapperFeatures

Attribute set of features to enable in the wrapper.

Type:submodule

Default:{ }

Example:

{  gtk = true;}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.wrapperFeatures.base

Whether to make use of the base wrapper to execute extra session commands and prepend adbus-run-session to the sway command.

Type:boolean

Default:true

Example:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.wrapperFeatures.gtk

Whether to make use of the wrapGAppsHook wrapper to execute sway with required environmentvariables for GTK applications.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.sway.xwayland

Enable xwayland, which is needed for the default configuration of sway.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/sway.nix>
wayland.windowManager.wayfire.enable

Whether to enable Wayfire, a wayland compositor based on wlroots.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.package

The wayfire package to use. Set tonull to not add any wayfire package to your path.This should be done if you want to use the NixOS wayfire module to install wayfire.

Type:null or package

Default:pkgs.wayfire

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.plugins

Additional plugins to use with wayfire

Type:list of package

Default:with pkgs.wayfirePlugins; [ wf-shell ]

Example:

with pkgs.wayfirePlugins; [  wcm  wf-shell  wayfire-plugins-extra];

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.settings

Wayfire configuration written in Nix.

Seehttps://github.com/WayfireWM/wayfire/wiki/Configuration

Type:open submodule of attribute set of attribute set of (string or absolute path or boolean or signed integer or floating point number)

Default:{ }

Example:

{  core.plugins = "command expo cube";  command = {    binding_terminal = "alacritty";    command_terminal = "alacritty";  };}

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.settings.core.plugins

Load the specified plugins

Type:strings concatenated with " "

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.systemd.enable

Whether to enablewayfire-session.target onwayfire startup. This links tographical-session.target}.Some important environment variables will be imported to systemdand D-Bus user environment before reaching the target, including

  • DISPLAY

  • WAYLAND_DISPLAY

  • XDG_CURRENT_DESKTOP

  • NIXOS_OZONE_WL

  • XCURSOR_THEME

  • XCURSOR_SIZE

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.systemd.extraCommands

Extra commands to be run after D-Bus activation.

Type:list of string

Default:

[  "systemctl --user stop wayfire-session.target"  "systemctl --user start wayfire-session.target"]

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.systemd.variables

Environment variables to be imported in the systemd & D-Bus userenvironment.

Type:list of string

Default:

[  "DISPLAY"  "WAYLAND_DISPLAY"  "XDG_CURRENT_DESKTOP"  "NIXOS_OZONE_WL"  "XCURSOR_THEME"  "XCURSOR_SIZE"]

Example:

[  "-all"]

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.wf-shell.enable

Whether to enable Manage wf-shell Configuration.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.wf-shell.package

The wf-shell package to use.

Type:package

Default:pkgs.wayfirePlugins.wf-shell

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.wf-shell.settings

Wf-shell configuration written in Nix.

Seehttps://github.com/WayfireWM/wf-shell/blob/master/wf-shell.ini.example

Type:attribute set of attribute set of (string or absolute path or boolean or signed integer or floating point number)

Default:{ }

Example:

{  panel = {    widgets_left = "menu spacing4 launchers window-list";    autohide = true;  };}

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
wayland.windowManager.wayfire.xwayland.enable

Whether to enable XWayland.

Type:boolean

Default:true

Example:true

Declared by:

<home-manager/modules/services/window-managers/wayfire.nix>
xdg.enable

Whether to enable management of XDG base directories.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.autostart.enable

Whether to enable creation of XDG autostart entries.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg-autostart.nix>
xdg.autostart.entries

Paths to desktop files that should be linked toXDG_CONFIG_HOME/autostart

Type:list of absolute path

Default:[ ]

Example:

[  "${pkgs.evolution}/share/applications/org.gnome.Evolution.desktop"]

Declared by:

<home-manager/modules/misc/xdg-autostart.nix>
xdg.autostart.readOnly

MakeXDG_CONFIG_HOME/autostart a symlink to a readonly directory so thatprograms cannot install arbitrary autostart services.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg-autostart.nix>
xdg.cacheFile

Attribute set of files to link into the user’s XDGcache home.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.enable

Whether this file should be generated. This option allows specificfiles to be disabled.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.executable

Set the execute bit. Ifnull, defaults to the modeof thesource file or tofalsefor files created through thetext option.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.force

Whether the target path should be unconditionally replacedby the managed file source. Warning, this will silentlydelete the target regardless of whether it is a file orlink.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.ignorelinks

Whenrecursive is enabled, adds-ignorelinks flag to lndir

It causes lndir to not treat symbolic links in the source directory specially.The link created in the target directory will point back to the corresponding(symbolic link) file in the source directory. If the link is to a directory

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.onChange

Shell commands to run when file has changed betweengenerations. The script will be runafter the new files have been linkedinto place.

Note, this code is always run whenrecursive isenabled.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.recursive

If the file source is a directory, then this optiondetermines whether the directory should be recursivelylinked to the target location. This option has no effectif the source is a file.

Iffalse (the default) then the targetwill be a symbolic link to the source directory. Iftrue then the target will be adirectory structure matching the source’s but whose leafsare symbolic links to the files of the source directory.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.source

Path of the source file or directory. Ifxdg.cacheFile.<name>.textis non-null then this option will automatically point to a filecontaining that text.

Type:absolute path

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.target

Path to target file relative toxdg.cacheHome.

Type:string

Default:name

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheFile.<name>.text

Text of the file. If this option is null thenxdg.cacheFile.<name>.sourcemust be set.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.cacheHome

Absolute path to directory holding application caches.

SetsXDG_CACHE_HOME for the user ifxdg.enable is settrue.

Type:absolute path

Default:"~/.cache"

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile

Attribute set of files to link into the user’s XDGconfiguration home.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.enable

Whether this file should be generated. This option allows specificfiles to be disabled.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.executable

Set the execute bit. Ifnull, defaults to the modeof thesource file or tofalsefor files created through thetext option.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.force

Whether the target path should be unconditionally replacedby the managed file source. Warning, this will silentlydelete the target regardless of whether it is a file orlink.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.ignorelinks

Whenrecursive is enabled, adds-ignorelinks flag to lndir

It causes lndir to not treat symbolic links in the source directory specially.The link created in the target directory will point back to the corresponding(symbolic link) file in the source directory. If the link is to a directory

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.onChange

Shell commands to run when file has changed betweengenerations. The script will be runafter the new files have been linkedinto place.

Note, this code is always run whenrecursive isenabled.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.recursive

If the file source is a directory, then this optiondetermines whether the directory should be recursivelylinked to the target location. This option has no effectif the source is a file.

Iffalse (the default) then the targetwill be a symbolic link to the source directory. Iftrue then the target will be adirectory structure matching the source’s but whose leafsare symbolic links to the files of the source directory.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.source

Path of the source file or directory. Ifxdg.configFile.<name>.textis non-null then this option will automatically point to a filecontaining that text.

Type:absolute path

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.target

Path to target file relative toxdg.configHome.

Type:string

Default:name

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configFile.<name>.text

Text of the file. If this option is null thenxdg.configFile.<name>.sourcemust be set.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.configHome

Absolute path to directory holding application configurations.

SetsXDG_CONFIG_HOME for the user ifxdg.enable is settrue.

Type:absolute path

Default:"~/.config"

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile

Attribute set of files to link into the user’s XDGdata home.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.enable

Whether this file should be generated. This option allows specificfiles to be disabled.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.executable

Set the execute bit. Ifnull, defaults to the modeof thesource file or tofalsefor files created through thetext option.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.force

Whether the target path should be unconditionally replacedby the managed file source. Warning, this will silentlydelete the target regardless of whether it is a file orlink.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.ignorelinks

Whenrecursive is enabled, adds-ignorelinks flag to lndir

It causes lndir to not treat symbolic links in the source directory specially.The link created in the target directory will point back to the corresponding(symbolic link) file in the source directory. If the link is to a directory

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.onChange

Shell commands to run when file has changed betweengenerations. The script will be runafter the new files have been linkedinto place.

Note, this code is always run whenrecursive isenabled.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.recursive

If the file source is a directory, then this optiondetermines whether the directory should be recursivelylinked to the target location. This option has no effectif the source is a file.

Iffalse (the default) then the targetwill be a symbolic link to the source directory. Iftrue then the target will be adirectory structure matching the source’s but whose leafsare symbolic links to the files of the source directory.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.source

Path of the source file or directory. Ifxdg.dataFile.<name>.textis non-null then this option will automatically point to a filecontaining that text.

Type:absolute path

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.target

Path to target file relative to <varname>xdg.dataHome</varname>.

Type:string

Default:name

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataFile.<name>.text

Text of the file. If this option is null thenxdg.dataFile.<name>.sourcemust be set.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.dataHome

Absolute path to directory holding application data.

SetsXDG_DATA_HOME for the user ifxdg.enable is settrue.

Type:absolute path

Default:"~/.local/share"

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.desktopEntries

Desktop Entries allow applications to be shown in your desktop environment’s app launcher.

You can define entries for programs without entries or override existing entries.

Seehttps://specifications.freedesktop.org/desktop-entry-spec/latest/recognized-keys.html for more information on options.

Type:attribute set of (submodule)

Default:{ }

Example:

{  firefox = {    name = "Firefox";    genericName = "Web Browser";    exec = "firefox %U";    terminal = false;    categories = [ "Network" "WebBrowser" ];    mimeType = [ "text/html" "text/xml" ];  };}

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.actions

The set of actions made available to application launchers.

Type:attribute set of (submodule)

Default:{ }

Example:

{  "New Window" = {    exec = "${pkgs.firefox}/bin/firefox --new-window %u";  };}

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.actions.<name>.exec

Program to execute, possibly with arguments.

Type:null or string

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.actions.<name>.icon

Icon to display in file manager, menus, etc.

Type:null or string or absolute path

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.actions.<name>.name

Name of the action.

Type:string

Default:<name>

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.categories

Categories in which the entry should be shown in a menu.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.comment

Tooltip for the entry.

Type:null or string

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.exec

Program to execute, possibly with arguments.

Type:null or string

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.genericName

Generic name of the application.

Type:null or string

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.icon

Icon to display in file manager, menus, etc.

Type:null or string or absolute path

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.mimeType

The MIME type(s) supported by this application.

Type:null or (list of string)

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.name

Specific name of the application.

Type:string

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.noDisplay

Means “this application exists, but don’t display it in the menus”.This can be useful to e.g. associate this application with MIME types.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.prefersNonDefaultGPU

If true, the application prefers to be run on a more powerful discrete GPU if available.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.settings

Extra key-value pairs to add to the[Desktop Entry] section.This may override other values.

Type:attribute set of string

Default:{ }

Example:

{  Keywords = "calc;math";  DBusActivatable = "false";}

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.startupNotify

If true, it is KNOWN that the application will send a “remove”message when started with theDESKTOP_STARTUP_IDenvironment variable set. If false, it is KNOWN that the applicationdoes not work with startup notification at all.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.terminal

Whether the program runs in a terminal window.

Type:null or boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.desktopEntries.<name>.type

The type of the desktop entry.

Type:one of “Application”, “Link”, “Directory”

Default:"Application"

Declared by:

<home-manager/modules/misc/xdg-desktop-entries.nix>
xdg.mime.enable

Whether to install programs and files to support theXDG Shared MIME-info specification and XDG MIME Applicationsspecification athttps://specifications.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.htmlandhttps://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-latest.html,respectively.

Type:boolean

Default:true if host platform is Linux, false otherwise

Declared by:

<home-manager/modules/misc/xdg-mime.nix>
xdg.mime.desktopFileUtilsPackage

The desktop-file-utils package to use. Used when running update-desktop-database.

Type:package

Default:pkgs.desktop-file-utils

Declared by:

<home-manager/modules/misc/xdg-mime.nix>
xdg.mime.sharedMimeInfoPackage

The shared-mime-info package to use. Used when running update-mime-database.

Type:package

Default:pkgs.shared-mime-info

Declared by:

<home-manager/modules/misc/xdg-mime.nix>
xdg.mimeApps.enable

Whether to manage$XDG_CONFIG_HOME/mimeapps.list.

The generated file is read-only.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg-mime-apps.nix>
xdg.mimeApps.associations.added

Defines additional associations of applications withmimetypes, as if the .desktop file was listing this mimetypein the first place.

Type:attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default:{ }

Example:

{  "mimetype1" = [ "foo1.desktop" "foo2.desktop" "foo3.desktop" ];  "mimetype2" = "foo4.desktop";}

Declared by:

<home-manager/modules/misc/xdg-mime-apps.nix>
xdg.mimeApps.associations.removed

Removes associations of applications with mimetypes, as if the.desktop file wasnot listing thismimetype in the first place.

Type:attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default:{ }

Example:

{  mimetype1 = "foo5.desktop";}

Declared by:

<home-manager/modules/misc/xdg-mime-apps.nix>
xdg.mimeApps.defaultApplicationPackages

Packages whose.desktop files will be used to establish defaultmimetype associations.

These associations are appended to the associations inxdg.mimeApps.defaultApplications. If multiple packagesassociate with the same mime type, then the priority among them isdetermined by their order in the list.

Type:list of package

Default:[ ]

Example:

[  <derivation eog-47.0>  <derivation evince-48.1>]

Declared by:

<home-manager/modules/misc/xdg-mime-apps.nix>
xdg.mimeApps.defaultApplications

The default application to be used for a given mimetype. Thisis, for instance, the one that will be started whendouble-clicking on a file in a file manager. If theapplication is no longer installed, the next application inthe list is attempted, and so on.

Type:attribute set of ((list of string) or ((list of string) or string) convertible to it)

Default:{ }

Example:

{  "mimetype1" = [ "default1.desktop" "default2.desktop" ];}

Declared by:

<home-manager/modules/misc/xdg-mime-apps.nix>
xdg.portal.enable

Whether to enableXDG desktop integration.

Note, if you use the NixOS module and haveuseUserPackages = true,make sure to add

environment.pathsToLink = [ "/share/xdg-desktop-portal" "/share/applications" ];

to your system configuration so that the portal definitions and DEprovided configurations get linked.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg-portal.nix>
xdg.portal.config

Sets which portal backend should be used to provide the implementationfor the requested interface. For details checkportals.conf(5).

These will be written with the name$desktop-portals.conf forxdg.portal.config.$desktop andportals.conf forxdg.portal.config.common as an exception.

These, together withxdg.portal.configPackages, will be joined into adirectory and passed toxdg-desktop-portal.service through aNIXOS_XDG_DESKTOP_PORTAL_CONFIG_DIR variable.

Type:attribute set of attribute set of (string or ((list of string) or string) convertible to it)

Default:{ }

Example:

{  common = {    default = [      "gtk"    ];  };  pantheon = {    default = [      "pantheon"      "gtk"    ];    "org.freedesktop.impl.portal.Secret" = [      "gnome-keyring"    ];  };  x-cinnamon = {    default = [      "xapp"      "gtk"    ];  };}

Declared by:

<home-manager/modules/misc/xdg-portal.nix>
xdg.portal.configPackages

List of packages that provide XDG desktop portal configuration, usually inthe form ofshare/xdg-desktop-portal/$desktop-portals.conf.

Note that configs inxdg.portal.config will be preferred if set.

Type:list of package

Default:[ ]

Example:[ pkgs.gnome.gnome-session ]

Declared by:

<home-manager/modules/misc/xdg-portal.nix>
xdg.portal.extraPortals

List of additional portals that should be added to the environment.

The directory where the portal definitions have been merged together(likely~/.nix-profile/share/xdg-desktop-portal/portals) will getpassed toxdg-desktop-portal.service via theNIX_XDG_DESKTOP_PORTAL_DIR environment variable.

Portals allow interaction with system, like choosing files or takingscreenshots. At minimum, a desktop portal implementation should belisted.

Type:list of package

Default:[ ]

Declared by:

<home-manager/modules/misc/xdg-portal.nix>
xdg.portal.xdgOpenUsePortal

Sets environment variableNIXOS_XDG_OPEN_USE_PORTAL to1This will makexdg-open use the portal to open programs, which resolves bugs involvingprograms opening inside FHS envs or with unexpected env vars set from wrappers.See#160923 for more info.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg-portal.nix>
xdg.stateFile

Attribute set of files to link into the user’s XDGstate home.

Type:attribute set of (submodule)

Default:{ }

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.enable

Whether this file should be generated. This option allows specificfiles to be disabled.

Type:boolean

Default:true

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.executable

Set the execute bit. Ifnull, defaults to the modeof thesource file or tofalsefor files created through thetext option.

Type:null or boolean

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.force

Whether the target path should be unconditionally replacedby the managed file source. Warning, this will silentlydelete the target regardless of whether it is a file orlink.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.ignorelinks

Whenrecursive is enabled, adds-ignorelinks flag to lndir

It causes lndir to not treat symbolic links in the source directory specially.The link created in the target directory will point back to the corresponding(symbolic link) file in the source directory. If the link is to a directory

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.onChange

Shell commands to run when file has changed betweengenerations. The script will be runafter the new files have been linkedinto place.

Note, this code is always run whenrecursive isenabled.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.recursive

If the file source is a directory, then this optiondetermines whether the directory should be recursivelylinked to the target location. This option has no effectif the source is a file.

Iffalse (the default) then the targetwill be a symbolic link to the source directory. Iftrue then the target will be adirectory structure matching the source’s but whose leafsare symbolic links to the files of the source directory.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.source

Path of the source file or directory. Ifxdg.stateFile.<name>.textis non-null then this option will automatically point to a filecontaining that text.

Type:absolute path

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.target

Path to target file relative to <varname>xdg.stateHome</varname>.

Type:string

Default:name

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateFile.<name>.text

Text of the file. If this option is null thenxdg.stateFile.<name>.sourcemust be set.

Type:null or strings concatenated with “\n”

Default:null

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.stateHome

Absolute path to directory holding application states.

SetsXDG_STATE_HOME for the user ifxdg.enable is settrue.

Type:absolute path

Default:"~/.local/state"

Declared by:

<home-manager/modules/misc/xdg.nix>
xdg.systemDirs.config

Directory names to add toXDG_CONFIG_DIRSin the user session.

Type:list of string

Default:[ ]

Example:[ "/etc/xdg" ]

Declared by:

<home-manager/modules/misc/xdg-system-dirs.nix>
xdg.systemDirs.data

Directory names to add toXDG_DATA_DIRSin the user session.

Type:list of string

Default:[ ]

Example:[ "/usr/share" "/usr/local/share" ]

Declared by:

<home-manager/modules/misc/xdg-system-dirs.nix>
xdg.terminal-exec.enable

Whether to enable xdg-terminal-exec, theproposedDefault Terminal Execution Specification.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg-terminal-exec.nix>
xdg.terminal-exec.package

The xdg-terminal-exec package to use.

Type:null or package

Default:pkgs.xdg-terminal-exec

Declared by:

<home-manager/modules/misc/xdg-terminal-exec.nix>
xdg.terminal-exec.settings

Configuration options for the Default Terminal Execution Specification.

The keys are the desktop environments that are matched (case-insensitively) againstXDG_CURRENT_DESKTOP,ordefault which is used when the current desktop environment is not found in the configuration.The values are a list of terminals’desktop file IDs to try in order of decreasing priority.

Type:attribute set of list of string

Default:{ }

Example:

{  GNOME = [    "com.raggesilver.BlackBox.desktop"    "org.gnome.Terminal.desktop"  ];  default = [    "kitty.desktop"  ];}

Declared by:

<home-manager/modules/misc/xdg-terminal-exec.nix>
xdg.userDirs.enable

Whether to manage$XDG_CONFIG_HOME/user-dirs.dirs.

The generated file is read-only.

Type:boolean

Default:false

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.createDirectories

Whether to enable automatic creation of the XDG user directories.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.desktop

The Desktop directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Desktop"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.documents

The Documents directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Documents"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.download

The Downloads directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Downloads"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.extraConfig

Other user directories.

Type:attribute set of (string or absolute path convertible to it)

Default:{ }

Example:

{  XDG_MISC_DIR = "${config.home.homeDirectory}/Misc";}

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.music

The Music directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Music"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.pictures

The Pictures directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Pictures"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.publicShare

The Public share directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Public"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.templates

The Templates directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Templates"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xdg.userDirs.videos

The Videos directory.

Type:null or (string or absolute path convertible to it)

Default:"${config.home.homeDirectory}/Videos"

Declared by:

<home-manager/modules/misc/xdg-user-dirs.nix>
xfconf.settings

Settings to write to the Xfconf configuration system.

Type:xfconf settings

Default:{ }

Example:

{  xfce4-session = {    "startup/ssh-agent/enabled" = false;    "general/LockCommand" = "${pkgs.lightdm}/bin/dm-tool lock";  };  xfce4-desktop = {    "backdrop/screen0/monitorLVDS-1/workspace0/last-image" =      "${pkgs.nixos-artwork.wallpapers.stripes-logo.gnomeFilePath}";  };}

Declared by:

<home-manager/modules/misc/xfconf.nix>
xresources.extraConfig

Additional X server resources contents.If this and all other xresources options arenull, then this feature is disabled and no~/.Xresources link is produced.

Type:strings concatenated with “\n”

Default:""

Example:

builtins.readFile (    pkgs.fetchFromGitHub {        owner = "solarized";        repo = "xresources";        rev = "025ceddbddf55f2eb4ab40b05889148aab9699fc";        sha256 = "0lxv37gmh38y9d3l8nbnsm1mskcv10g3i83j0kac0a2qmypv1k9f";    } + "/Xresources.dark")

Declared by:

<home-manager/modules/xresources.nix>
xresources.path

Path where Home Manager should link the.Xresources file.

Type:string

Default:"$HOME/.Xresources"

Declared by:

<home-manager/modules/xresources.nix>
xresources.properties

X server resources that should be set.Booleans are formatted as “true” or “false” respectively.List elements are recursively formatted as a string and joined by commas.All other values are directly formatted using builtins.toString.Note, that 2-dimensional lists are not supported and specifying one will throw an exception.If this and all other xresources options arenull, then this feature is disabled and no~/.Xresources link is produced.

Type:null or (attribute set of (boolean or signed integer or floating point number or string or list of (boolean or signed integer or floating point number or string)))

Default:null

Example:

{  "Emacs*toolBar" = 0;  "XTerm*faceName" = "dejavu sans mono";  "XTerm*charClass" = [ "37:48" "45-47:48" "58:48" "64:48" "126:48" ];}

Declared by:

<home-manager/modules/xresources.nix>
xsession.enable

Whether to enable X Session.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/xsession.nix>
xsession.initExtra

Extra shell commands to run during initialization.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/xsession.nix>
xsession.numlock.enable

Whether to enable Num Lock.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/misc/numlock.nix>
xsession.pointerCursor.package

Alias ofhome.pointerCursor.package.

Type:submodule

Declared by:

<home-manager/modules/config/home-cursor.nix>
xsession.pointerCursor.defaultCursor

Alias ofhome.pointerCursor.x11.defaultCursor.

Type:submodule

Declared by:

<home-manager/modules/config/home-cursor.nix>
xsession.pointerCursor.name

Alias ofhome.pointerCursor.name.

Type:submodule

Declared by:

<home-manager/modules/config/home-cursor.nix>
xsession.pointerCursor.size

Alias ofhome.pointerCursor.size.

Type:submodule

Declared by:

<home-manager/modules/config/home-cursor.nix>
xsession.preferStatusNotifierItems

Whether tray applets should prefer using the Status NotifierItems (SNI) protocol, commonly called App Indicators. Note,not all tray applets or status bars support SNI.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/xsession.nix>
xsession.profileExtra

Extra shell commands to run before session start.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/xsession.nix>
xsession.profilePath

Path, relative toHOME, where Home Managershould write the X profile script.

Type:string

Default:".xprofile"

Example:".xprofile-hm"

Declared by:

<home-manager/modules/xsession.nix>
xsession.scriptPath

Path, relative toHOME, where Home Managershould write the X session script.

Type:string

Default:".xsession"

Example:".xsession-hm"

Declared by:

<home-manager/modules/xsession.nix>
xsession.windowManager.awesome.enable

Whether to enable Awesome window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/awesome.nix>
xsession.windowManager.awesome.package

The awesome package to use. to use for running the Awesome WM

Type:package

Default:pkgs.awesome

Declared by:

<home-manager/modules/services/window-managers/awesome.nix>
xsession.windowManager.awesome.luaModules

List of lua packages available for beingused in the Awesome configuration.

Type:list of package

Default:[ ]

Example:[ pkgs.luaPackages.vicious ]

Declared by:

<home-manager/modules/services/window-managers/awesome.nix>
xsession.windowManager.awesome.noArgb

Disable client transparency support, which can be greatlydetrimental to performance in some setups

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/awesome.nix>
xsession.windowManager.bspwm.enable

Whether to enable bspwm window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.package

The bspwm package to use.

Type:package

Default:pkgs.bspwm

Example:pkgs.bspwm-unstable

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.alwaysResetDesktops

If set totrue, desktops configured inmonitors will be resetevery time the config is run.

If set tofalse, desktops will only be configured the first time the config is run.This is useful if you want to dynamically add desktops and you don’t want them to be destroyed if youre-runbspwmrc.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.extraConfig

Additional shell commands to be run at the end of the config file.

Type:strings concatenated with “\n”

Default:""

Example:

''  bspc subscribe all > ~/bspc-report.log &''

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.extraConfigEarly

Like extraConfig, except commands are run at the start of the config file.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.monitors

Specifies the names of desktops to create on each monitor.

Type:attribute set of list of string

Default:{ }

Example:

{  HDMI-0 = [    "web"    "terminal"    "III"    "IV"  ];}

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules

Rule configuration. The keys of the attribute set are the targets of the rules.

Type:attribute set of (open submodule of attribute set of (boolean or signed integer or floating point number or string))

Default:{ }

Example:

{  "Gimp" = {    desktop = "^8";    state = "floating";    follow = true;  };  "Kupfer.py" = {    focus = true;  };  "Screenkey" = {    manage = false;  };}

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.border

Whether the node should have border.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.center

Whether the node will be put in the center, in floating mode.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.desktop

The desktop where the rule should be applied.

Type:null or string

Default:null

Example:"^8"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.focus

Whether the node should gain focus on creation.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.follow

Whether focus should follow the node when it is moved.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.hidden

Whether the node should occupy any space.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.layer

The layer where a new window should spawn.

Type:null or one of “below”, “normal”, “above”

Default:null

Example:"above"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.locked

Whether the node should ignorenode --closemessages.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.manage

Whether the window should be managed by bspwm. If false, the windowwill be ignored by bspwm entirely. This is useful for overlay apps,e.g. screenshot tools.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.marked

Whether the node will be marked for deferred actions.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.monitor

The monitor where the rule should be applied.

Type:null or string

Default:null

Example:"HDMI-0"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.node

The node where the rule should be applied.

Type:null or string

Default:null

Example:"1"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.private

Whether the node should stay in the same tiling position and size.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.rectangle

The node’s geometry, in the formatWxH+X+Y.

Type:null or string

Default:null

Example:"800x600+32+32"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.splitDir

The direction where the container is going to be split.

Type:null or one of “north”, “west”, “south”, “east”

Default:null

Example:"south"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.splitRatio

The ratio between the new window and the previous existing window inthe desktop.

Type:null or floating point number

Default:null

Example:0.65

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.state

The state in which a new window should spawn.

Type:null or one of “tiled”, “pseudo_tiled”, “floating”, “fullscreen”

Default:null

Example:"floating"

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.rules.<name>.sticky

Whether the node should stay on the focused desktop.

Type:null or boolean

Default:null

Example:true

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.settings

General settings given tobspc config.

Type:attribute set of (boolean or signed integer or floating point number or string or list of (boolean or signed integer or floating point number or string))

Default:{ }

Example:

{  border_width = 2;  gapless_monocle = true;  split_ratio = 0.52;}

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.bspwm.startupPrograms

Programs to be executed during startup.

Type:list of string

Default:[ ]

Example:

[  "numlockx on"  "tilda"]

Declared by:

<home-manager/modules/services/window-managers/bspwm>
xsession.windowManager.command

Command to use to start the window manager.

The default value allows integration with NixOS’ generated xserver configuration.

Extra actions and commands can be specified inxsession.initExtra.

Type:string

Default:"test -n \"$1\" && eval \"$@\""

Example:

let  xmonad = pkgs.xmonad-with-packages.override {    packages = self: [ self.xmonad-contrib self.taffybar ];  };in  "${xmonad}/bin/xmonad";

Declared by:

<home-manager/modules/xsession.nix>
xsession.windowManager.fluxbox.enable

Whether to enable Fluxbox window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.package

The fluxbox package to use.

Type:null or package

Default:pkgs.fluxbox

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.apps

Apps configuration for Fluxbox, written to~/.fluxbox/apps. Look at thefluxbox(1) manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.extraCommandLineArgs

Extra command line arguments to pass tofluxbox.Look at thefluxbox(1) manpage for details.

Type:list of string

Default:[ ]

Example:

[  "-log"  "/tmp/fluxbox.log"]

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.init

Init configuration for Fluxbox, written to~/.fluxbox/init. Look at thefluxbox(1) manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.keys

Keyboard shortcuts configuration for Fluxbox, written to~/.fluxbox/keys. Look at thefluxbox-keys(1) manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.menu

Menu configuration for Fluxbox, written to~/.fluxbox/menu. Look at thefluxbox-menu(1) manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.slitlist

Slitlist configuration for Fluxbox, written to~/.fluxbox/slitlist. Look at thefluxbox(1) manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.fluxbox.windowmenu

Window menu configuration for Fluxbox, written to~/.fluxbox/windowmenu. Look at thefluxbox-menu(1)manpage for details.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/fluxbox.nix>
xsession.windowManager.herbstluftwm.enable

Whether to enable herbstluftwm window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.package

The herbstluftwm package to use.

Type:package

Default:pkgs.herbstluftwm

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.extraConfig

Extra configuration lines to add verbatim to$XDG_CONFIG_HOME/herbstluftwm/autostart.

Type:strings concatenated with “\n”

Default:""

Example:

''  herbstclient set_layout max  herbstclient detect_monitors''

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.keybinds

Herbstluftwm keybinds.

Type:attribute set of string

Default:{ }

Example:

{  Mod4-o = "split right";  Mod4-u = "split bottom";}

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.mousebinds

Herbstluftwm mousebinds.

Type:attribute set of string

Default:{ }

Example:

{  Mod4-B1 = "move";  Mod4-B3 = "resize";}

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.rules

Herbstluftwm rules.

Type:list of string

Default:[ ]

Example:

[  "windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' focus=on pseudotile=on"  "windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off"]

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.settings

Herbstluftwm settings.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  gapless_grid = false;  window_border_width = 1;  window_border_active_color = "#FF0000";}

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.herbstluftwm.tags

Tags to create on startup.

Type:list of string

Default:[ ]

Example:

[ "work" "browser" "music" "gaming" ]

Declared by:

<home-manager/modules/services/window-managers/herbstluftwm.nix>
xsession.windowManager.i3.enable

Whether to enable i3 window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.package

The i3 package to use.

Type:null or package

Default:pkgs.i3

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config

i3 configuration options.

Type:null or (submodule)

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.assigns

An attribute set that assigns applications to workspaces basedon criteria.

Type:attribute set of list of attribute set of (string or boolean)

Default:{ }

Example:

{"1: web" = [{ class = "^Firefox$"; }];"0: extra" = [{ class = "^Firefox$"; window_role = "About"; }];}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars

i3 bars settings blocks. Set to empty list to remove bars completely.

Type:list of (submodule)

Default:see code

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors

Bar color settings. All color classes can be specified using submoduleswith ‘border’, ‘background’, ‘text’, fields and RGB color hex-codes as values.See default values for the reference.Note that ‘background’, ‘status’, and ‘separator’ parameters take a single RGB value.

Seehttps://i3wm.org/docs/userguide.html#_colors.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.activeWorkspace

Border, background and text color for a workspace button when the workspace is active.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.background

Background color of the bar.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.bindingMode

Border, background and text color for the binding mode indicator

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.focusedBackground

Background color of the bar on the currently focused monitor output.

Type:null or string

Default:null

Example:"#000000"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.focusedSeparator

Text color to be used for the separator on the currently focused monitor output.

Type:null or string

Default:null

Example:"#666666"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.focusedStatusline

Text color to be used for the statusline on the currently focused monitor output.

Type:null or string

Default:null

Example:"#ffffff"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.focusedWorkspace

Border, background and text color for a workspace button when the workspace has focus.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.inactiveWorkspace

Border, background and text color for a workspace button when the workspace does nothave focus and is not active.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.separator

Text color to be used for the separator.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.statusline

Text color to be used for the statusline.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.colors.urgentWorkspace

Border, background and text color for a workspace button when the workspace containsa window with the urgency hint set.

Type:null or (submodule)

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.command

Command that will be used to start a bar.

Type:string

Default:i3bar

Example:"\${pkgs.i3}/bin/i3bar -t"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.extraConfig

Extra configuration lines for this bar.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.fonts

Font configuration for this bar.

Type:(list of string) or (submodule)

Default:{ }

Example:

{  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];  style = "Bold Semi-Condensed";  size = 11.0;}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.hiddenState

The default bar mode when ‘bar.mode’ == ‘hide’.

Type:null or one of “hide”, “show”

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.id

Specifies the bar ID for the configured bar instance.If this option is missing, the ID is set to bar-x, where x correspondsto the position of the embedding bar block in the config file.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.mode

Bar visibility mode.

Type:null or one of “dock”, “hide”, “invisible”

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.position

The edge of the screen i3bar should show up.

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

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.statusCommand

Command that will be used to get status lines.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.trayOutput

Where to output tray.

Type:null or string

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.trayPadding

Sets the pixel padding of the system tray.This padding will surround the tray on all sides and between each item.

Type:null or signed integer

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.workspaceButtons

Whether workspace buttons should be shown or not.

Type:null or boolean

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.bars.*.workspaceNumbers

Whether workspace numbers should be displayed within the workspace buttons.

Type:null or boolean

Default:

null for state version ≥ 20.09, as example otherwise

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors

Color settings. All color classes can be specified using submoduleswith ‘border’, ‘background’, ‘text’, ‘indicator’ and ‘childBorder’ fieldsand RGB color hex-codes as values. See default values for the reference.Note that ‘i3.config.colors.background’ parameter takes a single RGB value.

Seehttps://i3wm.org/docs/userguide.html#_changing_colors.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.background

Background color of the window. Only applications which do not coverthe whole area expose the color.

Type:string

Default:"#ffffff"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.focused

A window which currently has the focus.

Type:submodule

Default:

{  background = "#285577";  border = "#4c7899";  childBorder = "#285577";  indicator = "#2e9ef4";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.focusedInactive

A window which is the focused one of its container,but it does not have the focus at the moment.

Type:submodule

Default:

{  background = "#5f676a";  border = "#333333";  childBorder = "#5f676a";  indicator = "#484e50";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.placeholder

Background and text color are used to draw placeholder windowcontents (when restoring layouts). Border and indicator are ignored.

Type:submodule

Default:

{  background = "#0c0c0c";  border = "#000000";  childBorder = "#0c0c0c";  indicator = "#000000";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.unfocused

A window which is not focused.

Type:submodule

Default:

{  background = "#222222";  border = "#333333";  childBorder = "#222222";  indicator = "#292d2e";  text = "#888888";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.colors.urgent

A window which has its urgency hint activated.

Type:submodule

Default:

{  background = "#900000";  border = "#2f343a";  childBorder = "#900000";  indicator = "#900000";  text = "#ffffff";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.defaultWorkspace

The default workspace to show when i3 is launched.This must to correspond to the value of the keybinding of the default workspace.

Type:null or string

Default:null

Example:"workspace number 9"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.floating

Floating window settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.floating.border

Floating windows border width.

Type:signed integer

Default:2

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.floating.criteria

List of criteria for windows that should be opened in a floating mode.

Type:list of attribute set of (string or boolean)

Default:[ ]

Example:

[  {    title = "Steam - Update News";  }  {    class = "Pavucontrol";  }]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.floating.modifier

Modifier key or keys that can be used to drag floating windows.

Type:string

Default:"i3.config.modifier"

Example:"Mod4"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.floating.titlebar

Whether to show floating window titlebars.

Type:boolean

Default:

''  true for state version ≥ 23.05  config.gaps == null for state version < 23.05''

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus

Focus related settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus.followMouse

Whether focus should follow the mouse.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus.forceWrapping

Whether to force focus wrapping in tabbed or stacked containers.

This option is deprecated, usefocus.wrapping instead.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus.mouseWarping

Whether mouse cursor should be warped to the center of the window when switching focusto a window on a different output.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus.newWindow

This option modifies focus behavior on new window activation.

Seehttps://i3wm.org/docs/userguide.html#focus_on_window_activation

Type:one of “smart”, “urgent”, “focus”, “none”

Default:"smart"

Example:"none"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.focus.wrapping

Whether the window focus commands automatically wrap around the edge of containers.

Seehttps://i3wm.org/docs/userguide.html#_focus_wrapping

Type:one of “yes”, “no”, “force”, “workspace”

Default:if focus.forceWrapping then "force" else "yes"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.fonts

Font configuration for window titles, nagbar…

Type:(list of string) or (submodule)

Default:{ }

Example:

{  names = [ "DejaVu Sans Mono" "FontAwesome5Free" ];  style = "Bold Semi-Condensed";  size = 11.0;}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps

Gaps related settings.

Type:null or (submodule)

Default:null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.bottom

Bottom gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.horizontal

Horizontal gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.inner

Inner gaps value.

Type:null or signed integer

Default:null

Example:12

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.left

Left gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.outer

Outer gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.right

Right gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.smartBorders

This option controls whether to disable container borders onworkspace with a single container.

Type:one of “on”, “off”, “no_gaps”

Default:"off"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.smartGaps

This option controls whether to disable all gaps (outer and inner)on workspace with a single container.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.top

Top gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.gaps.vertical

Vertical gaps value.

Type:null or signed integer

Default:null

Example:5

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.keybindings

An attribute set that assigns a key press to an action using a key symbol.Seehttps://i3wm.org/docs/userguide.html#keybindings.

Consider to uselib.mkOptionDefault function to extend or overridedefault keybindings instead of specifying all of them from scratch.

Type:attribute set of (null or string)

Default:"Default i3 keybindings."

Example:

let  modifier = config.xsession.windowManager.i3.config.modifier;in lib.mkOptionDefault {  "${modifier}+Return" = "exec i3-sensible-terminal";  "${modifier}+Shift+q" = "kill";  "${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_run";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.keycodebindings

An attribute set that assigns keypress to an action using key code.Seehttps://i3wm.org/docs/userguide.html#keybindings.

Type:attribute set of (null or string)

Default:{ }

Example:

{  "214" = "exec /bin/script.sh";}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.menu

Default launcher to use.

Type:string

Default:${pkgs.dmenu}/bin/dmenu_run

Example:"bemenu-run"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.modes

An attribute set that defines binding modes and keybindingsinside them

Only basic keybinding is supported (bindsym keycomb action),for more advanced setup use ‘i3.extraConfig’.

Type:attribute set of attribute set of string

Default:

{  resize = {    Down = "resize grow height 10 px or 10 ppt";    Escape = "mode default";    Left = "resize shrink width 10 px or 10 ppt";    Return = "mode default";    Right = "resize grow width 10 px or 10 ppt";    Up = "resize shrink height 10 px or 10 ppt";  };}

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.modifier

Modifier key that is used for all default keybindings.

Type:one of “Shift”, “Control”, “Mod1”, “Mod2”, “Mod3”, “Mod4”, “Mod5” or string

Default:"Mod1"

Example:"Mod4"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.startup

Commands that should be executed at startup.

Seehttps://i3wm.org/docs/userguide.html#_automatically_starting_applications_on_i3_startup.

Type:list of (submodule)

Default:[ ]

Example:

[{ command = "systemctl --user restart polybar"; always = true; notification = false; }{ command = "dropbox start"; notification = false; }{ command = "firefox"; }];

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.startup.*.always

Whether to run command on each i3 restart.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.startup.*.command

Command that will be executed on startup.

Type:string

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.startup.*.notification

Whether to enable startup-notification support for the command.See--no-startup-id option description in the i3 user guide.

Type:boolean

Default:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.startup.*.workspace

Launch application on a particular workspace. DEPRECATED:Usexsession.windowManager.i3.config.assignsinstead. Seehttps://github.com/nix-community/home-manager/issues/265.

Type:null or string

Default:null

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.terminal

Default terminal to run.

Type:string

Default:"i3-sensible-terminal"

Example:"alacritty"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window

Window titlebar and border settings.

Type:submodule

Default:{ }

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.border

Window border width.

Type:signed integer

Default:2

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.commands

List of commands that should be executed on specific windows.Seefor_window i3wm option documentation.

Type:list of (submodule)

Default:[ ]

Example:

[  {    command = "border pixel 1";    criteria = {      class = "XTerm";    };  }]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.commands.*.command

i3wm command to execute.

Type:string

Example:"border pixel 1"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.commands.*.criteria

Criteria of the windows on which command should be executed.

A value oftrue is equivalent to using an emptycriteria (which is different from an empty string criteria).

Type:attribute set of (string or boolean)

Example:

{  title = "x200: ~/work";  floating = true;};

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.hideEdgeBorders

Hide window borders adjacent to the screen edges.

Type:one of “none”, “vertical”, “horizontal”, “both”, “smart”

Default:"none"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.window.titlebar

Whether to show window titlebars.

Type:boolean

Default:

''  true for state version ≥ 23.05  config.gaps == null for state version < 23.05''

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.workspaceAutoBackAndForth

Assume you are on workspace “1: www” and switch to “2: IM” usingmod+2 because somebody sent you a message. You don’t need to rememberwhere you came from now, you can just press $mod+2 again to switchback to “1: www”.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.workspaceLayout

The mode in which new containers on workspace level willstart.

Type:one of “default”, “stacking”, “tabbed”

Default:"default"

Example:"tabbed"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.workspaceOutputAssign

Assign workspaces to outputs.

Type:list of (submodule)

Default:[ ]

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.workspaceOutputAssign.*.output

Name(s) of the output(s) from i3-msg -t get_outputs.

Type:string or list of string

Default:""

Example:"eDP"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.config.workspaceOutputAssign.*.workspace

Name of the workspace to assign.

Type:string

Default:""

Example:"Web"

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.i3.extraConfig

Extra configuration lines to add to ~/.config/i3/config.

Type:strings concatenated with “\n”

Default:""

Declared by:

<home-manager/modules/services/window-managers/i3-sway/i3.nix>
xsession.windowManager.spectrwm.enable

Whether to enable Spectrwm window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.package

The spectrwm package to use. providing the spectrwm command

Type:package

Default:pkgs.spectrwm

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.bindings

Spectrwm keybindings.

Type:attribute set of string

Default:{ }

Example:

{  term = "Mod+Return";  restart = "Mod+Shift+r";  quit = "Mod+Shift+q";}

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.programs

Spectrwm programs variables.

Type:attribute set of string

Default:{ }

Example:

{  term = "alacritty";  search = "dmenu -ip -p 'Window name/id:';}

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.quirks

Spectrwm quicks (custom window rules).

Type:attribute set of string

Default:{ }

Example:

{  Matplotlib = "FLOAT";  Pavucontrol = "FLOAT";}

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.settings

Spectrwm settings.

Type:attribute set of (boolean or signed integer or string)

Default:{ }

Example:

{  modkey = "Mod4";  workspace_limit = 5;  focus_mode = "manual";  focus_close = "next";}

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.spectrwm.unbindings

List of keybindings to disable from default Spectrwm configuration.

Type:list of string

Default:[ ]

Example:

[  "MOD+e"  "MOD+f"  "MOD+m"  "MOD+s"  "MOD+u"  "MOD+t"]

Declared by:

<home-manager/modules/services/window-managers/spectrwm.nix>
xsession.windowManager.xmonad.enable

Whether to enable xmonad window manager.

Type:boolean

Default:false

Example:true

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>
xsession.windowManager.xmonad.enableContribAndExtras

Enable xmonad-{contrib,extras} in xmonad.

Type:boolean

Default:false

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>
xsession.windowManager.xmonad.config

The configuration file to be used for xmonad. This must bean absolute path ornull in which case~/.xmonad/xmonad.hs will not be managedby Home Manager.

If this option is set to a non-null value,recompilation of xmonad outside of Home Manager (e.g. viaxmonad --recompile) will fail.

Type:null or absolute path

Default:null

Example:

pkgs.writeText "xmonad.hs" ''  import XMonad  main = xmonad defaultConfig      { terminal    = "urxvt"      , modMask     = mod4Mask      , borderWidth = 3      }''

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>
xsession.windowManager.xmonad.extraPackages

Extra packages available to GHC when rebuilding xmonad. Thevalue must be a function which receives the attribute setdefined inhaskellPackages as the soleargument.

Type:unspecified value

Default:"self: []"

Example:

haskellPackages: [  haskellPackages.xmonad-contrib  haskellPackages.monad-logger]

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>
xsession.windowManager.xmonad.haskellPackages

ThehaskellPackages used to build xmonadand other packages. This can be used to change the GHCversion used to build xmonad and the packages listed inextraPackages.

Type:unspecified value

Default:pkgs.haskellPackages

Example:pkgs.haskell.packages.ghc784

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>
xsession.windowManager.xmonad.libFiles

Additional files that will be saved in~/.xmonad/lib/ and included in the configurationbuild. The keys are the file names while the values are paths to thecontents of the files.

Type:attribute set of absolute path

Default:{ }

Example:

{  "Tools.hs" = pkgs.writeText "Tools.hs" ''     module Tools where     screenshot = "scrot"   '';}

Declared by:

<home-manager/modules/services/window-managers/xmonad.nix>

Prev   Next
Home Manager Manual Home Appendix B. NixOS Configuration Options

[8]ページ先頭

©2009-2025 Movatter.jp