diff options
| author | Alexander Kassouni <alex@kassouni.net> | 2026-11-12 00:48:40 -0800 |
|---|---|---|
| committer | Alexander Kassouni <alex@kassouni.net> | 2026-11-12 00:48:40 -0800 |
| commit | 2286ab880c94e17a29ad99561f87b2e357d4a780 (patch) | |
| tree | d6d7a3c67bce7ac45315841381be9485da27ec18 | |
| parent | 3571e62d04e92542bdcaac83d340eebee14ea902 (diff) | |
add pgp keys, wkd
| -rw-r--r-- | configuration.nix | 1 | ||||
| -rw-r--r-- | pgp/default.nix | 24 | ||||
| -rw-r--r-- | pgp/pubkey.asc | 23 |
3 files changed, 48 insertions, 0 deletions
diff --git a/configuration.nix b/configuration.nix index ae1ae4b..d65d732 100644 --- a/configuration.nix +++ b/configuration.nix @@ -6,6 +6,7 @@ ./nix/options.nix ./nix/ssh.nix ./nix/web.nix + ./pgp ]; boot.loader = { diff --git a/pgp/default.nix b/pgp/default.nix new file mode 100644 index 0000000..3fd5961 --- /dev/null +++ b/pgp/default.nix @@ -0,0 +1,24 @@ +{ pkgs, ... }: +let + domain = "kassouni.net"; + # gpg --with-wkd-hash -k alex@kassouni.net + hash = "cddpr77ezsy7h967hgjydxhhmnt76n8w"; + pubkey = pkgs.runCommandLocal "wkd-key-${domain}" { nativeBuildInputs = [ pkgs.gnupg ]; } '' + gpg --dearmor < ${./pubkey.asc} > $out + ''; +in +{ + services.nginx.virtualHosts.${domain}.locations = { + "= /.well-known/openpgpkey/hu/${hash}" = { + alias = "${pubkey}"; + extraConfig = '' + default_type application/octet-stream; + add_header Access-Control-Allow-Origin "*" always; + ''; + }; + + "= /.well-known/openpgpkey/policy".alias = "${pkgs.emptyFile}"; + + "= /pubkey.asc".alias = "${./pubkey.asc}"; + }; +} diff --git a/pgp/pubkey.asc b/pgp/pubkey.asc new file mode 100644 index 0000000..4622486 --- /dev/null +++ b/pgp/pubkey.asc @@ -0,0 +1,23 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEatQbFBYJKwYBBAHaRw8BAQdA58Na5eIar4SI0ZbIvvedFsjxvskvccGRUWIO +Y3gF9Xm0JkFsZXhhbmRlciBLYXNzb3VuaSA8YWxleEBrYXNzb3VuaS5uZXQ+iJYE +ExYKAD4CGwEFCwkIBwMFFQoJCAsFFgMCAQACHgECF4AWIQSggeRQrn22PCjLMaQj +YI4YLON2kwUCatQfdQUJAeE34QAKCRAjYI4YLON2kwgMAP9TNhap0uHCMsgafGfe +F2W0CJJHEJUePNL87sV0lnv2yAEAvDLN5wqhTrlpN1ELmEpQ98sEFKKM5Fy/yuNZ +48Hz6QW4MwRq1B0/FgkrBgEEAdpHDwEBB0CYAHbikulMWQertNxydWV3Nz+OO4oq +OsSWFogXSqNemYj1BBgWCgAmFiEEoIHkUK59tjwoyzGkI2COGCzjdpMFAmrUHT8C +GwIFCQHhM4AAgQkQI2COGCzjdpN2IAQZFgoAHRYhBD4IlYTy6emOKlUoz6Yy4HnD +QqtUBQJq1B0/AAoJEKYy4HnDQqtUYPkBAISAHnvvP+Cz8dIrltESRQ/6WXibctHS +oE9LAJUE8frPAP0b8UNu44doi+0PlS6A9+4RZUDsmpGQl+lNoGO3KslYDL+IAQDj +02pCp2VvN12InNiJdD9MOdVhvfpNYsYYOQwt2mCq1wD+LvtIc+C3Srw0Lr/SiWq3 +l2O+gg5xnegRiXyTX0gd5wa4OARq1B1qEgorBgEEAZdVAQUBAQdAkHD9xK8V9FBC +H6TgxLHgetoMCIEyYoJWGdqWA2Nkrk8DAQgHiH4EGBYKACYWIQSggeRQrn22PCjL +MaQjYI4YLON2kwUCatQdagIbDAUJAeEzgAAKCRAjYI4YLON2kyZsAQC1a1WZoFa/ +WCiszfXn0fXib7YYPu2RyLjC4zrGVz2v2gEAwrA42/R8aUpitpE+lwbmXuitZEph +bhDZ74fI2AAI8Qi4MwRq1B1/FgkrBgEEAdpHDwEBB0A+vvDpqmicsr5FYthXLITB +CJity9K0+4zxCnjQAcjOAYh+BBgWCgAmFiEEoIHkUK59tjwoyzGkI2COGCzjdpMF +AmrUHX8CGyAFCQHhM4AACgkQI2COGCzjdpOCAwEAuFTkXmyezbC74j1lN5RGauic +3msSOc8MqBXVUOGRlWAA/3cYdK+UZOxdUl52W7duPJ27BjlvgW8pXgGrwoxDH04D +=ai2u +-----END PGP PUBLIC KEY BLOCK----- |