unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
blob 99030a4172f93404cdbe7d54011acc1ebbf6f347 9551 bytes (raw)
name: doc/man1/notmuch-config.rst 	 # note: path name is non-authoritative(*)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
 
==============
notmuch-config
==============

SYNOPSIS
========

**notmuch** **config** **get** <*section*>.<*item*>

**notmuch** **config** **set** <*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.

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

**database.path**
    Notmuch will store its database within a
    sub-directory of the path configured here named ``.notmuch``.

    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
    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.hook_dir**

    Directory containing hooks run by notmuch commands. See
    **notmuch-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 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.

**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-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**
    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``.

**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-insert(1)**, or **notmuch-reindex(1)**), 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 using  |       |  X   |    X    |  X   |
    | stashed session keys   |       |      |         |      |
    +------------------------+-------+------+---------+------+
    | Index cleartext        |       |      |    X    |  X   |
    | using secret keys      |       |      |         |      |
    +------------------------+-------+------+---------+------+
    | Stash session keys     |       |      |         |  X   |
    +------------------------+-------+------+---------+------+
    | Delete stashed session |   X   |      |         |      |
    | keys on reindex        |       |      |         |      |
    +------------------------+-------+------+---------+------+

    Stashed session keys are kept in the database as properties
    associated with the message.  See ``session-key`` in
    **notmuch-properties(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 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(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 included.)

**query.<name>**
    Expansion for named query called <name>. See
    **notmuch-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)**,
**notmuch-insert(1)**,
**notmuch-new(1)**,
**notmuch-reply(1)**,
**notmuch-restore(1)**,
**notmuch-search(1)**,
**notmuch-search-terms(7)**,
**notmuch-properties(7)**,
**notmuch-show(1)**,
**notmuch-tag(1)**

debug log:

solving 99030a41 ...
found 99030a41 in https://yhetil.org/notmuch.git/

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).