2023-02-21 14:43:43 +03:00
# sq, the Sequoia-PGP command line tool
[Sequoia-PGP][] is an implementation of OpenPGP in Rust. It includes a
suite of library crates, which are meant to be used from applications.
This crate provides the `sq` command line application. `sq` is aimed
at command line users as a way to use OpenPGP conveniently from the
command line.
See the [sq user guide][] for instructions. The program also has built-in
help, using the `--help` option and `help` subcommand:
~~~sh
$ sq help
...
~~~
2024-01-10 19:44:16 +03:00
You can also browse the [manual pages][], look at our [acceptance
criteria][], and browse the [rustdoc output][] if you want to learn about
the implementation.
2023-02-21 14:43:43 +03:00
[Sequoia-PGP]: https://sequoia-pgp.org/
[sq user guide]: https://sequoia-pgp.gitlab.io/sq-user-guide/
2024-01-10 19:44:16 +03:00
[manual pages]: https://sequoia-pgp.gitlab.io/sequoia-sq/man/
[acceptance criteria]: https://sequoia-pgp.gitlab.io/sequoia-sq/subplot/
[rustdoc output]: https://sequoia-pgp.gitlab.io/sequoia-sq/impl/
2023-06-06 16:44:32 +03:00
2024-01-19 16:13:14 +03:00
## Installing
2023-06-06 16:44:32 +03:00
2024-01-19 16:13:14 +03:00
The `sq` tool can be installed using cargo:
```sh
cargo install sequoia-sq
```
Please see [sequoia-openpgp's README] for how to install build
dependencies on your system.
[sequoia-openpgp's README]: https://gitlab.com/sequoia-pgp/sequoia#requirements-and-msrv
## Building from source
This crate can be built from a source checkout using the standard
`cargo` toolchain:
2023-06-06 16:44:32 +03:00
```sh
cargo build
```
2024-01-05 15:37:36 +03:00
The above creates the `sq` executable, the manual pages, and its shell
2024-01-05 17:57:05 +03:00
completions. By default, the manual pages and shell completions are
put into the `cargo` target directory, but the exact location is
unpredictable. To write the assets to a predictable location, set the
environment variable `ASSET_OUT_DIR` to a suitable location.