wkd-exporter(1)

πŸ“¦ version 0.3.3, in arch rolling

πŸ’… NAME πŸ’…

okay bestie, welcome to wkd-exporter(1) from the General Commands Manual β€” it’s the WKD exporter, and it’s here to make your OpenPGP keys Web Key Directory–ready ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

wkd-exporter [--domain] [--append] [--direct] [-h|--help] <WELL_KNOWN>

🌸 DESCRIPTION 🌸

WKD exporter. Literally that’s the whole bit πŸ’…

It exports a given OpenPGP keyring into the directory structure required by the Web Key Directory specification β€” so your keys end up where the WKD spec expects them, no cap 🫢


✨ OPTIONS ✨

  • --domain <DOMAIN> β€” Only export the following domain, and yes it may be given multiple times. By default all domains are exported, but if this option is given, only the selected ones get exported πŸ‘‘
  • --append β€” Append incoming certificates to the ones already existing in .well-known. Turn this on if you have multiple certificates containing the same local-part and you want them all to be part of the WKD export. Warning tho: running the same process twice with --append and the same .well-known will duplicate the certificates there πŸ’€
  • --direct <DIRECT> β€” Select the direct WKD variant with a filter for this single domain.
  • -h, --help β€” Print help (see a summary with -h).
  • <WELL_KNOWN> β€” Well known directory that will be the output of the exporting process.

πŸŽ€ EXIT STATUS πŸŽ€

On success the application returns 0. Slay.

On failure the following exit codes are used:

  • 2 β€” Processing OpenPGP data failed 😭
  • 3 β€” Reading or writing files failed πŸ™ˆ

πŸ”₯ EXAMPLES πŸ”₯

For bigger deployments, using the advanced variant with a domain filter is recommended:

$ DIR=$(mktemp -d)
$ gpg --export | wkd-exporter --append --domain archlinux.org $DIR
$ tree $DIR | head
/tmp/tmp.ZaHdlAQGRw
└── openpgpkey
    └── archlinux.org
        β”œβ”€β”€ hu
        β”‚   β”œβ”€β”€ 46yqwra65to1p94e9ebafpucymkwsi7f
        β”‚   β”œβ”€β”€ 9drt4xorn699rkbj5xyq7ykoc1z5nnof
        β”‚   β”œβ”€β”€ 9hy3wi4ewwiicomnjmhewifn6d1gi87i
        β”‚   β”œβ”€β”€ 9sh859e31bn46hmfxyftn3ymop5ewdkz
        β”‚   β”œβ”€β”€ b9qi357oeysqibkxmmh3hanrppd6nj9p
        β”‚   β”œβ”€β”€ btfkn1ht1kzda3e9495fe4sjznkygui4

For smaller deployments, the direct variant may be more appropriate:

$ DIR=$(mktemp -d)
$ gpg --export | wkd-exporter --append --direct metacode.biz $DIR
$ tree $DIR | head
/tmp/tmp.cxEBeXnwdv
└── openpgpkey
    β”œβ”€β”€ hu
    β”‚   └── gebusffkx9g581i6ch4t3ewgwd6dctmp
    └── policy

Logging can be enabled using the RUST_LOG environment variable β€” e.g. RUST_LOG=wkd_exporter=debug enables debug-level logging. Errors are always logged, regardless of the log level, and the exit status indicates the type of the error πŸ’œ


🧚 BUGS 🧚

Please report all bugs to https://gitlab.archlinux.org/archlinux/wkd-exporter β€” the maintainers want the tea, fr fr πŸ“


πŸ‘‘ AUTHORS πŸ‘‘

Wiktor Kwapisiewicz <wiktor@metacode.biz> 🫢


MIT OR Apache-2.0


Cute sign-off: this is the wkd-exporter(1) page from the General Commands Manual, with footer vibes wkd-exporter / wkd-exporter(1) β€” and there’s no date printed in this copy, so no invented date drama, periodt πŸ’–

πŸ“¦ where this page comes from