Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gpg-rs/gpgme

GPGme bindings for Rust
https://github.com/gpg-rs/gpgme

ffi gnupg gpgme rust wrapper

Last synced: 2 months ago
JSON representation

GPGme bindings for Rust

Awesome Lists containing this project

README

        

# gpgme-rs

[![Build Status][build]][ci]
[![crates.io version][version]][crate]
[![LGPL-2.1 licensed][license]](./COPYING)
[![downloads][downloads]][crate]

[GPGME][upstream] bindings for Rust.

[Documentation][docs]

## Using

To use the crate, add it to your dependencies:
```sh
$ 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:
```sh
$ sudo apt-get install libgpgme-dev
```

On Fedora/RHEL based systems:
```sh
$ sudo dnf install gpgme-devel
```

On MacOS systems:
```sh
$ brew install gnupg
```

On Windows 10 (1709 or later) systems:
```pwsh
$ 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](https://github.com/gpg-rs/libgpg-error).

## Examples
Some simple example programs based on those in the GPGME sources can be found
in [examples](./examples).

They can be run with cargo:
```shell
$ cargo run --example keylist --
keyid : 89ABCDEF01234567
fpr : 0123456789ABCDEF0123456789ABCDEF01234567
caps : esc
flags :
userid 0: Example
valid 0: Unknown
```
## License
These crates are licensed under the [LGPL-2.1 license](./COPYING).

[crate]: https://crates.io/crates/gpgme
[ci]: https://github.com/gpg-rs/gpgme/actions/workflows/ci.yml
[build]: https://img.shields.io/github/actions/workflow/status/gpg-rs/gpgme/ci.yml?style=flat-square
[version]: https://img.shields.io/crates/v/gpgme?style=flat-square
[license]: https://img.shields.io/crates/l/gpgme?style=flat-square
[downloads]: https://img.shields.io/crates/d/gpgme?style=flat-square

[upstream]: https://www.gnupg.org/\(it\)/related_software/gpgme/index.html
[docs]: https://docs.rs/gpgme
[system-deps]: https://crates.io/crates/system-deps
[Gpg4win]: https://www.gpg4win.org/