Skip to content

Commit 768aed6

Browse files
committed
docs: update readme
1 parent 716071a commit 768aed6

1 file changed

Lines changed: 27 additions & 27 deletions

File tree

README.md

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,23 @@ It’s designed to be a practical alternative to “traditional” PDF signing w
1010

1111
The signed output stays minimal: the original PDF content is preserved and the signature is appended, keeping the file compliant so it still opens normally in standard PDF viewers.
1212

13-
## Features
14-
15-
* **Simple CLI**: `sign` and `verify` commands that compose well in pipelines.
16-
* **Works with your existing GPG setup**: Uses `gpg-agent` (smartcards/YubiKey supported) and reads your local keybox (`pubring.kbx`) for public key lookups.
17-
* **Hardware-friendly**: Private keys can stay on a smartcard/YubiKey.
18-
* **Lightweight distribution**: Standard Cargo binary (`cargo install …`) with no `gpg` subprocesses.
19-
20-
## Security model
21-
22-
* **No private keys in the tool**: All signing operations are performed by `gpg-agent`.
23-
* **Reduced key exposure**: Private keys never need to be loaded into this process.
24-
* **Explicit verification**: Verifies using your local keybox by default (no `gpg` subprocess), or a provided certificate via `--cert`.
25-
* **Privacy by default**: Signer UIDs (name/email) are not embedded in the signature unless enabled.
26-
2713
## Quickstart
2814

29-
### Install
15+
### Install with Cargo
3016

3117
```bash
3218
cargo install --git https://github.com/0x77dev/pdf-sign --locked
3319
pdf-sign sign document.pdf --key 0xDEADBEEF
3420
```
3521

36-
### Local build/run
22+
### Install with Nix Profile
23+
24+
```bash
25+
nix profile install github:0x77dev/pdf-sign#pdf-sign
26+
pdf-sign sign document.pdf --key 0xDEADBEEF
27+
```
28+
29+
### Build from Source
3730

3831
If you cloned the repo:
3932

@@ -42,11 +35,16 @@ cargo build --release
4235
./target/release/pdf-sign sign input.pdf --key 0xDEADBEEF
4336
```
4437

45-
### Nix (flake)
38+
With Nix (flake):
4639

4740
```bash
41+
# Development shell
4842
nix develop
4943
cargo build
44+
45+
# Or build the package directly
46+
nix build
47+
./result/bin/pdf-sign sign input.pdf --key 0xDEADBEEF
5048
```
5149

5250
Remote (no clone):
@@ -55,21 +53,23 @@ Remote (no clone):
5553
# Run directly from GitHub
5654
nix run github:0x77dev/pdf-sign -- --help
5755

58-
# Dev shell from GitHub
59-
nix develop github:0x77dev/pdf-sign -c cargo build
56+
# Build package from GitHub
57+
nix build github:0x77dev/pdf-sign#pdf-sign
6058
```
6159

62-
Build a package:
60+
## Features
6361

64-
```bash
65-
nix build
66-
```
62+
* **Simple CLI**: `sign` and `verify` commands that compose well in pipelines.
63+
* **Works with your existing GPG setup**: Uses `gpg-agent` (smartcards/YubiKey supported) and reads your local keybox (`pubring.kbx`) for public key lookups.
64+
* **Hardware-friendly**: Private keys can stay on a smartcard/YubiKey.
65+
* **Lightweight distribution**: Standard Cargo binary (`cargo install …`) with no `gpg` subprocesses.
6766

68-
Remote build:
67+
## Security model
6968

70-
```bash
71-
nix build github:0x77dev/pdf-sign#pdf-sign
72-
```
69+
* **No private keys in the tool**: All signing operations are performed by `gpg-agent`.
70+
* **Reduced key exposure**: Private keys never need to be loaded into this process.
71+
* **Explicit verification**: Verifies using your local keybox by default (no `gpg` subprocess), or a provided certificate via `--cert`.
72+
* **Privacy by default**: Signer UIDs (name/email) are not embedded in the signature unless enabled.
7373

7474
## Methodology
7575

0 commit comments

Comments
 (0)