PUBLIC-INBOX-EDIT(1)

NAME
public-inbox-edit - destructively edit messages in a public inbox

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

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

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.

OPTIONS

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

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

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

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

--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 "publicinbox.mailEditor" is a regular editor and not something like "mutt -f"

CONFIGURATION

publicinbox.mailEditor
    The command to perform the edit with. An example of this would be "mutt -f", and the user would then use the facilities in 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 "GIT_EDITOR", "VISUAL" or "EDITOR").

    Default: none

ENVIRONMENT

GIT_EDITOR / VISUAL / EDITOR
    public-inbox-edit will fall back to using one of these variables (in that order) if "publicinbox.mailEditor" is unset.

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

LIMITATIONS
Only v2 repositories are supported.

This is safe to run while normal inbox writing tools (public-inbox-mda(1), public-inbox-watch(1), public-inbox-learn(1)) are active.

Running this in parallel with public-inbox-xcpdb(1) or "public-inbox-index --reindex" can lead to errors or edited data remaining indexed.

Incremental public-inbox-index(1) (without "--reindex") is fine.

Keep in mind this is a last resort, as it will be disruptive to anyone using git(1) to mirror the inbox being edited.

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

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

COPYRIGHT
Copyright 2019-2021 all contributors <mailto:meta@public-inbox.org>

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

SEE ALSO
public-inbox-purge(1)