about summary refs log tree commit homepage
path: root/Documentation/public-inbox-edit.pod
blob: c64b4da84c131042a7c1295f1dbc31e23530d0cd (plain)
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
=head1 NAME

public-inbox-edit - edit messages in a public inbox

=head1 SYNOPSIS

	public-inbox-edit -m MESSAGE-ID --all|INBOX_DIR

	public-inbox-edit -F RAW_FILE --all|INBOX_DIR [.. INBOX_DIR]

=head1 DESCRIPTION

public-inbox-edit allows editing messages in a given inbox
to remove sensitive information.  It is only intended as a
last resort, as it will cause discontiguous git history and
draw more attention to the sensitive data in mirrors.

=head1 OPTIONS

=over

=item --all

Edit the message in all inboxes configured in ~/.public-inbox/config.
This is an alternative to specifying individual inboxes directories
on the command-line.

=item -m MESSAGE-ID

Edits the message corresponding to the given C<MESSAGE-ID>.
If the C<MESSAGE-ID> is ambiguous, C<--force> or using the
C<--file> of the original will be required.

=item -F FILE

Edits the message corresponding to the Message-ID: header
and content given in C<FILE>.  This requires the unmodified
raw message, and the contents of C<FILE> will not itself
be modified.  This is useful if a Message-ID is ambiguous
due to filtering/munging rules or other edits.

=item --force

Forcibly perform the edit even if Message-ID is ambiguous.

=item --raw

Do not perform "From " line escaping.  By default, this
generates a mboxrd variant file to detect unpurged messages
in the new mbox.  This makes sense if your configured
C<publicinbox.mailEditor> is a regular editor and not
something like C<mutt -f>

=back

=head1 CONFIGURATION

=over 8

=item publicinbox.mailEditor

The command to perform the edit with.  An example of this would be
C<mutt -f>, and the user would then use the facilities in L<mutt(1)>
to edit the mail.  This is useful for editing attachments or
Base64-encoded emails which are more difficult to edit with a
normal editor (configured via C<GIT_EDITOR>, C<VISUAL> or C<EDITOR>).

Default: none

=back

=head1 ENVIRONMENT

=over 8

=item GIT_EDITOR / VISUAL / EDITOR

=for comment MAIL_EDITOR is undocumented (unstable, don't want naming conflicts)

public-inbox-edit will fall back to using one of these variables
(in that order) if C<publicinbox.mailEditor> is unset.

=item PI_CONFIG

The default config file, normally "~/.public-inbox/config".
See L<public-inbox-config(5)>

=back

=head1 LIMITATIONS

Only L<v2|public-inbox-v2-format(5)> repositories are supported.

=head1 CONTACT

Feedback welcome via plain-text mail to L<mailto:meta@public-inbox.org>

The mail archives are hosted at L<https://public-inbox.org/meta/>
and L<http://hjrcffqmbrq6wope.onion/meta/>

=head1 COPYRIGHT

Copyright 2019-2020 all contributors L<mailto:meta@public-inbox.org>

License: AGPL-3.0+ L<https://www.gnu.org/licenses/agpl-3.0.txt>

=head1 SEE ALSO

L<public-inbox-purge(1)>