gpg-rs / gpgme

GPGme bindings for Rust
GNU Lesser General Public License v2.1
83 stars 13 forks source link
ffi gnupg gpgme rust wrapper

gpgme-rs

Build Status crates.io version LGPL-2.1 licensed downloads

GPGME bindings for Rust.

Documentation

Using

To use the crate, add it to your dependencies:

$ cargo add gpgme

Requirements

These crates require the gpgme library (version 1.13 or later) and its development files to be installed. The build script uses the system-deps crate to attempt to locate them (or the registry on Windows).

On Debian/Ubuntu based systems:

$ sudo apt-get install libgpgme-dev

On Fedora/RHEL based systems:

$ sudo dnf install gpgme-devel

On MacOS systems:

$ brew install gnupg

On Windows 10 (1709 or later) systems:

$ winget install --id GnuPG.Gpg4win

On Windows systems, download and install the official Gpg4win installer. Only the i686-pc-windows-gnu target is supported.

NOTE: These crates also depend on the gpg-error crate which has its own requirements.

Examples

Some simple example programs based on those in the GPGME sources can be found in examples.

They can be run with cargo:

$ cargo run --example keylist --
keyid   : 89ABCDEF01234567
fpr     : 0123456789ABCDEF0123456789ABCDEF01234567
caps    : esc
flags   :
userid 0: Example <example@example.org>
valid  0: Unknown

License

These crates are licensed under the LGPL-2.1 license.