]> git.cworth.org Git - notmuch-wiki/blob - manpages/notmuch-properties-7.mdwn
News for release 0.38.3
[notmuch-wiki] / manpages / notmuch-properties-7.mdwn
1 <h1>NOTMUCH-PROPERTIES(7)</h1>
2
3 <h2>NAME</h2>
4 <pre>
5        notmuch-properties  - notmuch message property conventions and documen‐
6        tation
7 </pre>
8
9 <h2>SYNOPSIS</h2>
10 <pre>
11        <b>notmuch</b> <b>count</b> <b>property:</b>&lt;<u>key</u>&gt;=&lt;<u>value</u>&gt;
12
13        <b>notmuch</b> <b>search</b> <b>property:</b>&lt;<u>key</u>&gt;=&lt;<u>value</u>&gt;
14
15        <b>notmuch</b> <b>show</b> <b>property:</b>&lt;<u>key</u>&gt;=&lt;<u>value</u>&gt;
16
17        <b>notmuch</b> <b>reindex</b> <b>property:</b>&lt;<u>key</u>&gt;=&lt;<u>value</u>&gt;
18
19        <b>notmuch</b> <b>tag</b> +&lt;<u>tag</u>&gt; <b>property:</b>&lt;<u>key</u>&gt;=&lt;<u>value</u>&gt;
20
21        <b>notmuch</b> <b>dump</b> <b>--include=properties</b>
22
23        <b>notmuch</b> <b>restore</b> <b>--include=properties</b>
24 </pre>
25
26 <h2>DESCRIPTION</h2>
27 <pre>
28        Several notmuch commands can search for, modify, add or remove  proper‐
29        ties  associated  with  specific  messages.   Properties  are key/value
30        pairs, and a message can have more than one key/value pair for the same
31        key.
32
33        While  users  can  select  based on a specific property in their search
34        terms with the prefix <b>property:</b>,  the  notmuch  command-line  interface
35        does  not  provide  mechanisms for modifying properties directly to the
36        user.
37
38        Instead, message properties are expected to be set and used programmat‐
39        ically, according to logic in notmuch itself, or in extensions to it.
40
41        Extensions  to  notmuch  which make use of properties are encouraged to
42        report the specific properties used to the upstream notmuch project, as
43        a way of avoiding collisions in the property namespace.
44 </pre>
45
46 <h2>CONVENTIONS</h2>
47 <pre>
48        Any  property with a key that starts with &quot;index.&quot; will be removed (and
49        possibly re-set) upon reindexing (see <a href='../notmuch-reindex-1/'>notmuch-reindex</a>(1)).
50 </pre>
51
52 <h2>MESSAGE PROPERTIES</h2>
53 <pre>
54        The following properties are set by notmuch internally in the course of
55        its normal activity.
56
57        <b>index.decryption</b>
58               If  a  message  contains encrypted content, and notmuch tries to
59               decrypt that content during indexing, it will add  the  property
60               <b>index.decryption=success</b> when the cleartext was successfully in‐
61               dexed.  If notmuch attempts to decrypt any  part  of  a  message
62               during  indexing  and that decryption attempt fails, it will add
63               the property <b>index.decryption=failure</b> to the message.
64
65               Note that it&apos;s possible for a single message to  have  both  <b>in-</b>
66               <b>dex.decryption=success</b>  and  <b>index.decryption=failure</b>.  Consider
67               an encrypted e-mail  message  that  contains  another  encrypted
68               e-mail  message  as an attachment -- if the outer message can be
69               decrypted, but the attached part cannot,  then  both  properties
70               will be set on the message as a whole.
71
72               If  notmuch  never  tried to decrypt an encrypted message during
73               indexing (which  is  the  default,  see  <b>index.decrypt</b>  in  <a href='../notmuch-config-1/'>not‐</a>
74               <a href='../notmuch-config-1/'>much-config</a>(1)), then this property will not be set on that mes‐
75               sage.
76
77        <b>session-key</b>
78               When <a href='../notmuch-show-1/'>notmuch-show</a>(1) or <a href='../notmuch-reply-1/'>notmuch-reply</a>(1)  encounters  a  message
79               with  an encrypted part, if notmuch finds a <b>session-key</b> property
80               associated with the message, it will try  that  stashed  session
81               key for decryption.
82
83               If you do not want to use any stashed session keys that might be
84               present, you should pass those programs <b>--decrypt=false</b>.
85
86               Using a stashed session key with &quot;notmuch show&quot;  will  speed  up
87               rendering of long encrypted threads.  It also allows the user to
88               destroy the secret part of any expired encryption-capable subkey
89               while  still  being able to read any retained messages for which
90               they have stashed the session key.  This enables truly deletable
91               e-mail,  since  (once  the session key and asymmetric subkey are
92               both destroyed) there are no keys left that can be used  to  de‐
93               crypt  any  copy of the original message previously stored by an
94               adversary.
95
96               However, access to the stashed session key for an encrypted mes‐
97               sage  permits full byte-for-byte reconstruction of the cleartext
98               message.  This includes attachments,  cryptographic  signatures,
99               and  other  material that cannot be reconstructed from the index
100               alone.
101
102               See <b>index.decrypt</b> in <a href='../notmuch-config-1/'>notmuch-config</a>(1) for  more  details  about
103               how to set notmuch&apos;s policy on when to store session keys.
104
105               The  session  key  should  be in the ASCII text form produced by
106               GnuPG.  For OpenPGP, that consists of a  decimal  representation
107               of  the hash algorithm used (identified by number from RFC 4880,
108               e.g. 9 means AES-256) followed by a colon, followed by  a  hexa‐
109               decimal representation of the algorithm-specific key.  For exam‐
110               ple, an AES-128 key might be stashed in a notmuch  property  as:
111               <b>session-key=7:14B16AF65536C28AF209828DFE34C9E0</b>.
112
113        <b>index.repaired</b>
114               Some  messages  arrive in forms that are confusing to view; they
115               can be mangled by mail transport agents,  or  the  sending  mail
116               user  agent  may  structure them in a way that is confusing.  If
117               notmuch knows how to both detect and repair such  a  problematic
118               message, it will do so during indexing.
119
120               If  it applies a message repair during indexing, it will use the
121               <b>index.repaired</b> property to note the type of  repair(s)  it  per‐
122               formed.
123
124               <b>index.repaired=skip-protected-headers-legacy-display</b>   indicates
125               that when indexing the cleartext of an encrypted  message,  not‐
126               much  skipped  over  a &quot;legacy-display&quot; text/rfc822-headers part
127               that it found in that message, since it was able  to  index  the
128               built-in protected headers directly.
129
130               <b>index.repaired=mixedup</b>  indicates the repair of a &quot;Mixed Up&quot; en‐
131               crypted PGP/MIME message, a mangling typically produced  by  Mi‐
132               crosoft&apos;s
133               <u>https://tools.ietf.org/html/draft-dkg-openpgp-pgpmime-message-mangling</u>
134               for more information.
135 </pre>
136
137 <h2>SEE ALSO</h2>
138 <pre>
139        <a href='../notmuch-1/'>notmuch</a>(1), <a href='../notmuch-config-1/'>notmuch-config</a>(1), <a href='../notmuch-dump-1/'>notmuch-dump</a>(1), <a href='../notmuch-insert-1/'>notmuch-insert</a>(1), <a href='../notmuch-new-1/'>not‐</a>
140        <a href='../notmuch-new-1/'>much-new</a>(1), <a href='../notmuch-reindex-1/'>notmuch-reindex</a>(1), <a href='../notmuch-reply-1/'>notmuch-reply</a>(1),  <a href='../notmuch-restore-1/'>notmuch-restore</a>(1),
141        <a href='../notmuch-search-terms-7/'>notmuch-search-terms</a>(7), <a href='../notmuch-show-1/'>notmuch-show</a>(1)
142 </pre>
143
144 <h2>AUTHOR</h2>
145 <pre>
146        Carl Worth and many others
147 </pre>
148
149 <h2>COPYRIGHT</h2>
150 <pre>
151        2009-2022, Carl Worth and many others
152 </pre>
153
154 <h2>0.35</h2>