MyNixOS website logo

Native settings written to the notmuch configuration file. Lists are serialized as semicolon-separated values, including empty lists. Null settings and empty sections are omitted. Unset keys use notmuch's own defaults. database.path defaults to accounts.email.maildirBasePath when an email account is enabled, and notmuch-enabled email accounts supply user values; any definition of the same key replaces these. For home.stateVersion below 26.11, database.path has this default even without email accounts, and search.exclude_tags defaults to deleted;spam. new.ignore, new.tags, maildir.synchronizeFlags, search.excludeTags, and extraConfig under programs.notmuch are deprecated aliases into settings. Alias definitions retain their priorities and list ordering. Definitions of the same list setting concatenate unless a stronger priority replaces them. Unlike the old final extraConfig overlay, conflicting ordinary scalar definitions must be resolved in settings. Apply lib.mkDefault to individual settings, not to a whole section or the whole attribute set; section-level priorities lose to definitions Home Manager or the mbsync, lieer, and mujmap modules supply in database, new, search, and user.

See https://notmuchmail.org/manpages/notmuch-config-1/ for available settings.

Declarations
Type
attribute set of attribute set of (INI atom (null, bool, int, float or string) or list of (INI atom (null, bool, int, float or string)))
Default
{ }
Example
{
  new = {
    tags = [
      "inbox"
    ];
  };
  show = {
    extra_headers = [
      "List-Id"
      "Mailing-List"
    ];
  };
}