Provided by: notmuch_0.37-1ubuntu2_amd64 bug

NAME

       notmuch-config - access notmuch configuration file

SYNOPSIS

       notmuch config get <section>.<item>

       notmuch config set [--database] <section>.<item> [value ...]

       notmuch config list

DESCRIPTION

       The  config  command  can be used to get or set settings in the notmuch configuration file
       and corresponding database.

       get    The value of the specified configuration item is printed to stdout. If the item has
              multiple values (it is a list), each value is separated by a newline character.

       set    The  specified  configuration  item  is  set  to  the  given  value.  To  specify a
              multiple-value item (a  list),  provide  each  value  as  a  separate  command-line
              argument.

              If  no  values  are provided, the specified configuration item will be removed from
              the configuration file.

              With the --database option, updates configuration metadata stored in the  database,
              rather than the default (text) configuration file.

       list   Every configuration item is printed to stdout, each on a separate line of the form:

                 section.item=value

              No  additional  whitespace  surrounds  the  dot  or  equals  sign  characters. In a
              multiple-value item (a list), the values are separated by semicolon characters.

       The available configuration items are described below.  Non-absolute  paths  are  presumed
       relative to $HOME for items in section database.

       built_with.<name>
              Compile  time feature <name>. Current possibilities include "retry_lock" (configure
              option, included by default).  (since notmuch 0.30, "compact" and "field_processor"
              are always included.)

       database.autocommit
              How  often  to  commit  transactions to disk. 0 means wait until command completes,
              otherwise an integer n  specifies  to  commit  to  disk  after  every  n  completed
              transactions.

              History: this configuration value was introduced in notmuch 0.33.

       database.backup_dir
              Directory to store tag dumps when upgrading database.

              History: this configuration value was introduced in notmuch 0.32.

              Default: A sibling directory of the Xapian database called backups.

       database.hook_dir
              Directory containing hooks run by notmuch commands. See notmuch-hooks.

              History: this configuration value was introduced in notmuch 0.32.

              Default: See HOOKS, below.

       database.mail_root
              The  top-level directory where your mail currently exists and to where mail will be
              delivered in the future. Files should be individual email messages.

              History: this configuration value was introduced in notmuch 0.32.

              Default: For compatibility with older configurations, the value of database.path is
              used if database.mail_root is unset.

       database.path
              Notmuch  will  store  its  database  here,  (in  sub-directory  named  .notmuch  if
              database.mail_root is unset).

              Default: see DATABASE LOCATION

       git.path
              Default location for git repository for notmuch-git.

       git.safe_fraction
              Some notmuch-git operations check that the fraction of  messages  changed  (in  the
              database  or  in  git,  as  appropriate)  is not too large. This item controls what
              fraction of total messages is considered "not too large".

       git.tag_prefix
              Default tag prefix (filter) for notmuch-git.

       index.decrypt
              Policy for decrypting encrypted messages during indexing.  Must be one  of:  false,
              auto, nostash, or true.

              When indexing an encrypted e-mail message, if this variable is set to true, notmuch
              will try to decrypt the message and index the cleartext, stashing  a  copy  of  any
              discovered  session  keys  for  the  message.   If  auto,  it will try to index the
              cleartext if a stashed session key is already known for the message  (e.g.  from  a
              previous  copy),  but  will not try to access your secret keys.  Use false to avoid
              decrypting even when a stashed session key is already present.

              nostash is the same as true except that it will not stash newly-discovered  session
              keys in the database.

              From    the   command   line   (i.e.   during   notmuch-new,   notmuch-insert,   or
              notmuch-reindex), the user can override the  database's  stored  decryption  policy
              with the --decrypt= option.

              Here is a table that summarizes the functionality of each of these policies:

                              ┌─────────────────┬───────┬──────┬─────────┬──────┐
                              │                 │ false │ auto │ nostash │ true │
                              ├─────────────────┼───────┼──────┼─────────┼──────┤
                              │Index  cleartext │       │ X    │ X       │ X    │
                              │using    stashed │       │      │         │      │
                              │session keys     │       │      │         │      │
                              ├─────────────────┼───────┼──────┼─────────┼──────┤
                              │Index  cleartext │       │      │ X       │ X    │
                              │using     secret │       │      │         │      │
                              │keys             │       │      │         │      │
                              ├─────────────────┼───────┼──────┼─────────┼──────┤
                              │Stash    session │       │      │         │ X    │
                              │keys             │       │      │         │      │
                              ├─────────────────┼───────┼──────┼─────────┼──────┤
                              │Delete   stashed │ X     │      │         │      │
                              │session  keys on │       │      │         │      │
                              │reindex          │       │      │         │      │
                              └─────────────────┴───────┴──────┴─────────┴──────┘

              Stashed session keys are kept in the database as  properties  associated  with  the
              message.  See session-key in notmuch-properties for more details about how they can
              be useful.

              Be aware that the notmuch index is likely sufficient (and a stashed session key  is
              certainly sufficient) to reconstruct the cleartext of the message itself, so please
              ensure that the  notmuch  message  index  is  adequately  protected.   DO  NOT  USE
              index.decrypt=true  or  index.decrypt=nostash  without  considering the security of
              your index.

              Default: auto.

       index.header.<prefix>
              Define  the  query  prefix  <prefix>,  based  on  a  mail   header.   For   example
              index.header.List=List-Id  will  add a probabilistic prefix List: that searches the
              List-Id field.  User defined prefixes must not start with 'a'...'z'; in  particular
              adding  a  prefix  with  same  name  as  a  predefined prefix is not supported. See
              notmuch-search-terms for a  list  of  existing  prefixes,  and  an  explanation  of
              probabilistic prefixes.

       maildir.synchronize_flags
              If  true,  then  the  following  maildir  flags  (in  message  filenames)  will  be
              synchronized with the corresponding notmuch tags:

                                   ┌─────┬──────────────────────────────────┐
                                   │Flag │ Tag                              │
                                   ├─────┼──────────────────────────────────┤
                                   │D    │ draft                            │
                                   ├─────┼──────────────────────────────────┤
                                   │F    │ flagged                          │
                                   ├─────┼──────────────────────────────────┤
                                   │P    │ passed                           │
                                   ├─────┼──────────────────────────────────┤
                                   │R    │ replied                          │
                                   ├─────┼──────────────────────────────────┤
                                   │S    │ unread (added when 'S'  flag  is │
                                   │     │ not present)                     │
                                   └─────┴──────────────────────────────────┘

              The  notmuch-new  command  will  notice  flag changes in filenames and update tags,
              while the notmuch-tag and notmuch-restore commands  will  notice  tag  changes  and
              update flags in filenames.

              If there have been any changes in the maildir (new messages added, old ones removed
              or renamed, maildir flags changed, etc.), it is advisable to run notmuch-new before
              notmuch-tag  or  notmuch-restore  commands  to  ensure the tag changes are properly
              synchronized to the maildir flags, as the commands expect the database and  maildir
              to be in sync.

              Default: true.

       new.ignore
              A  list  to specify files and directories that will not be searched for messages by
              notmuch-new. Each entry in the list is either:

              A file or a directory name, without path, that will be ignored, regardless  of  the
              location in the mail store directory hierarchy.

              Or:

              A regular expression delimited with // that will be matched against the path of the
              file or directory relative to the database path.  Matching  files  and  directories
              will  be  ignored. The beginning and end of string must be explicitly anchored. For
              example, /.*/foo$/ would match  "bar/foo"  and  "bar/baz/foo",  but  not  "foo"  or
              "bar/foobar".

              Default: empty list.

       new.tags
              A list of tags that will be added to all messages incorporated by notmuch new.

              Default: unread;inbox.

       query.<name>
              Expansion  for  named  query  called  <name>.  See  notmuch-search-terms  for  more
              information about named queries.

       search.exclude_tags
              A list of tags that will be excluded from  search  results  by  default.  Using  an
              excluded tag in a query will override that exclusion.

              Default:  empty  list.  Note  that notmuch puts deleted;spam here when creating new
              configuration file.

       show.extra_headers
              By default notmuch-show includes the following headers in structured output if they
              are present in the message: Subject, From, To, Cc, Bcc, Reply-To, Date. This option
              allows the specification of a list of further headers to output.

              History: This configuration value was introduced in notmuch 0.35.

              Default: empty list.

       squery.<name>
              Expansion  for  named  query  called  <name>,  using   s-expression   syntax.   See
              notmuch-sexp-queries for more information about s-expression queries.

       user.name
              Your full name.

              Default: $NAME variable if set, otherwise read from /etc/passwd.

       user.other_email
              A   list   of  other  email  addresses  at  which  you  receive  email  (see  also,
              user.primary_email)

              Default: not set.

       user.primary_email
              Your primary email address.

              Default: $EMAIL variable if  set,  otherwise  constructed  from  the  username  and
              hostname of the current machine.

FILES

   CONFIGURATION
       Notmuch configuration file search order:

       1. File specified by notmuch --config global option; see notmuch.

       2. File specified by NOTMUCH_CONFIG environment variable.

       3. $XDG_CONFIG_HOME/notmuch/<profile>/config where <profile> is defined by NOTMUCH_PROFILE
          environment variable if set, $XDG_CONFIG_HOME/notmuch/default/config otherwise.

       4. $HOME/.notmuch-config.<profile>  where  <profile>   is   defined   by   NOTMUCH_PROFILE
          environment variable if set, $HOME/.notmuch-config otherwise.

   DATABASE LOCATION
       Notmuch database search order:

       1. Directory specified by NOTMUCH_DATABASE environment variable.

       2. Directory specified by config key database.path.

       3. $XDG_DATA_HOME/notmuch/<profile>   where   <profile>   is  defined  by  NOTMUCH_PROFILE
          environment variable if set, $XDG_DATA_HOME/notmuch/default otherwise.

       4. Directory specified by MAILDIR environment variable.

       5. $HOME/mail

   HOOKS
       Notmuch hook directory search order:

       1. Directory specified by database.hook_dir configuration option.

       2. $XDG_CONFIG_HOME/notmuch/<profile>/hooks where <profile> is defined by  NOTMUCH_PROFILE
          environment variable if set, $XDG_CONFIG_HOME/notmuch/default/hooks otherwise.

       3. <database.path>/.notmuch/hooks

SEE ALSO

       notmuch,   notmuch-count,   notmuch-dump,   notmuch-hooks,   notmuch-insert,  notmuch-new,
       notmuch-properties, notmuch-reply, notmuch-restore, notmuch-search,  notmuch-search-terms,
       notmuch-show, notmuch-tag

AUTHOR

       Carl Worth and many others

COPYRIGHT

       2009-2022, Carl Worth and many others