Commands-based PGP configuration

Note: Himalaya needs to be compiled with the cargo feature pgp-commands to activate this backend.

pgp.backend = "gpg"

Enables the PGP backend based on the shell commands.

pgp.encrypt-cmd

Represents the shell command used to encrypt email parts.

Defaults to gpg --encrypt --quiet --armor <recipients>, where <recipients> is the placeholder for recipients’ email. See also pgp.encrypt-recipient-fmt and pgp.encrypt-recipients-sep.

pgp.encrypt-recipient-fmt

Represents the template string used to format <recipients> from pgp.encrypt-cmd. [string]

Defaults to --recipient <recipient>, where <recipient> is the placeholder for a recipient’s email.

pgp.encrypt-recipients-sep

Represents the separator used to concatenate all pgp.encrypt-recipient-fmt. [string]

Defaults to (space).

pgp.decrypt-cmd

Represents the shell command used to decrypt email parts. [string]

The encrypted email part is send using stdin. Defaults to gpg --decrypt --quiet.

pgp.sign-cmd

Represents the shell command used to sign email parts. [string]

The email part to sign is send using stdin. Defaults to gpg --sign --quiet --armor.

pgp.verify-cmd

Represents the shell command used to verify email parts. [string]

The signed part is send using stdin. Defaults to gpg --verify --quiet.

Examples

[my-account]
pgp.backend = "cmds"
pgp.encrypt-cmd = "gpg --encrypt --quiet --armor <recipients>"
pgp.decrypt-cmd = "gpg --decrypt --quiet"
pgp.sign-cmd = "gpg --sign --quiet --armor"
pgp.verify-cmd = "gpg --verify --quiet"
[my-account.pgp]
backend = "commands" # alias for cmds
encrypt-cmd = "gpg --encrypt --quiet --armor <recipients>"
decrypt-cmd = "gpg --decrypt --quiet"
sign-cmd = "gpg --sign --quiet --armor"
verify-cmd = "gpg --verify --quiet"