NOTMUCH-CONFIG(1)

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 std‐
              out.  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)  configu‐
              ration file.

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

                 section.item=value

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

       The available configuration items are described below.

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

              Default: $MAILDIR variable if set, otherwise $HOME/mail.

       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  in‐
              dividual 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.hook_dir
          Directory  containing  hooks  run  by  notmuch  commands.  See  not‐
          much-hooks(5).

       user.name
              Your full name.

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

       user.primary_email
              Your primary email address.

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

       user.other_email
              A list of other email addresses at which you receive email.

              Default: not set.

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

              Default: unread;inbox.

       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 hierar‐
              chy.

              Or:

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

              Default: empty list.

       search.exclude_tags
              A  list of tags that will be excluded from search results by de‐
              fault. Using an excluded tag in a query will override  that  ex‐
              clusion.

              Default:   empty   list.   Note   that   notmuch-setup(1)   puts
              deleted;spam here when creating new configuration file.

       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 com‐
              mands 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.

       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(1),  notmuch-in‐
              sert(1), or notmuch-reindex(1)), the user can override the data‐
              base'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 cleart‐ │       │ X    │ X       │ X    │
                      │ext     using │       │      │         │      │
                      │stashed  ses‐ │       │      │         │      │
                      │sion keys     │       │      │         │      │
                      ├──────────────┼───────┼──────┼─────────┼──────┤
                      │Index cleart‐ │       │      │ X       │ X    │
                      │ext using se‐ │       │      │         │      │
                      │cret keys     │       │      │         │      │
                      ├──────────────┼───────┼──────┼─────────┼──────┤
                      │Stash session │       │      │         │ X    │
                      │keys
                      ├──────────────┼───────┼──────┼─────────┼──────┤
                      │Delete
                      │stashed  ses‐ │       │      │         │      │
                      │sion  keys on │       │      │         │      │
                      │reindex       │       │      │         │      │
                      └──────────────┴───────┴──────┴─────────┴──────┘

              Stashed session keys are kept in the database as properties  as‐
              sociated  with  the message.  See session-key in notmuch-proper‐
              ties(7) 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  not‐
              much  message  index  is  adequately  protected.  DO NOT USE in-
              dex.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  pre‐
              fix  List:  that  searches the List-Id field.  User defined pre‐
              fixes must not start with 'a'...'z'; in particular adding a pre‐
              fix  with same name as a predefined prefix is not supported. See
              notmuch-search-terms(7) for a list of existing prefixes, and  an
              explanation of probabilistic prefixes.

       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 in‐
              cluded.)

       query.<name>
              Expansion   for   named   query   called   <name>.   See    not‐
              much-search-terms(7) for more information about named queries.

ENVIRONMENT

       The following environment variables can be used to control the behavior
       of notmuch.

       NOTMUCH_CONFIG
              Specifies the location of the notmuch configuration file.

       NOTMUCH_PROFILE
              Selects among notmuch configurations.

FILES

  CONFIGURATION

       If NOTMUCH_CONFIG is unset, notmuch tries (in order)

       • $XDG_CONFIG_HOME/notmuch/<profile>/config where <profile> is  defined
         by $NOTMUCH_PROFILE or "default"

       • ${HOME}/.notmuch-config<profile> where <profile> is .$NOTMUCH_PROFILE
         or ""

  Hooks

       If database.hook_dir is unset, notmuch tries (in order)

       • $XDG_CONFIG_HOME/notmuch/<profile>/hooks where <profile>  is  defined
         by $NOTMUCH_PROFILE or "default"

       • <database.path>/.notmuch/hooks

SEE ALSO

       notmuch(1),  notmuch-count(1),  notmuch-dump(1), notmuch-hooks(5), not‐
       much-insert(1), notmuch-new(1),  notmuch-reply(1),  notmuch-restore(1),
       notmuch-search(1), notmuch-search-terms(7), notmuch-properties(7), not‐
       much-show(1), notmuch-tag(1)

AUTHOR

       Carl Worth and many others

COPYRIGHT

       2009-2021, Carl Worth and many others

0.32