rnp icon indicating copy to clipboard operation
rnp copied to clipboard

RNP: high performance C++ OpenPGP library used by Mozilla Thunderbird

= RNP

image:https://github.com/rnpgp/rnp/workflows/macos/badge.svg["macOS Build Status", link="https://github.com/rnpgp/rnp/actions?workflow=macos"] image:https://github.com/rnpgp/rnp/workflows/ubuntu/badge.svg["Ubuntu Build Status", link="https://github.com/rnpgp/rnp/actions?workflow=ubuntu"] image:https://github.com/rnpgp/rnp/workflows/centos7/badge.svg["CentOS 7 Build Status", link="https://github.com/rnpgp/rnp/actions?workflow=centos7"] image:https://github.com/rnpgp/rnp/workflows/windows/badge.svg["Windows Build Status", link="https://github.com/rnpgp/rnp/actions?workflow=windows"] image:https://github.com/rnpgp/rnp/workflows/nix/badge.svg["Nix Build Status", link="https://github.com/rnpgp/rnp/actions?workflow=nix"] image:https://img.shields.io/cirrus/github/rnpgp/rnp?label=freebsd&logo=cirrus%20ci["FreeBSD Build Status", link="https://cirrus-ci.com/github/rnpgp/rnp"]

image:https://img.shields.io/coverity/scan/12616.svg["Coverity Scan Build Status", link="https://scan.coverity.com/projects/rnpgp-rnp"] image:https://codecov.io/gh/rnpgp/rnp/branch/master/graph/badge.svg["Code coverage", link="https://codecov.io/gh/rnpgp/rnp"]

== Introduction

RNP is a set of OpenPGP (RFC4880) tools that works on Linux, macOS, Windows and *BSD built with C++.

librnp is the library used by RNP for all OpenPGP functions, useful for developers to build against, different from GPGME.

== Supported Platforms

Currently supported platforms:

  • Fedora 25
  • RHEL/CentOS 7
  • Ubuntu 14.04 LTS, 16.04 LTS, 18.04
  • NixOS / Nix

Upcoming supported platforms:

  • Debian 8, 9
  • OpenSUSE Leap 42.2, 42.3
  • SLES 12

== link:docs/installation.adoc[Installation]

== link:docs/cli-usage.adoc[Using CLI tool]

== link:docs/c-usage.adoc[Using the RNP C API in your projects]

== link:docs/signing-keys.adoc[PGP keys used for signing source code]

== Versioning

RNP follows the http://semver.org/[semantic versioning] syntax.

=== Checking versions

The output of rnp --version contains the git hash of the version the binary was built from, which value is generated when cmake runs. Consequently, a release tarball generated with make dist will contain this hash version.

=== Historic information

The first version of rnp started at 0.8.0 to indicate its development completeness (or lack thereof).

RNP originated as an attempt to modernize the NetPGP codebase originally created by Alistair Crooks of NetBSD in 2016. RNP has been heavily rewritten, and carries minimal if any code from the original codebase.

== link:docs/code-of-conduct.adoc[Code of Conduct]