Today I realized that my GPG key (which I don't really use for anything except signing git commits) was out of date. These are the steps I took to update the expiration date: # Update the actual key In a terminal, run `gpg --list-secret-keys` to get the short-form ID of the key and verify that it is indeed out of date. The run gpg --edit-key 56584D0971AFE45FCC296BD74CE62A90EFC0B9B2 to enter an interactive gpg environment that lets you update the expiration. Use the `expire` command to set the new expiration (I chose to extend it for one year). GPG may warn you that: gpg: WARNING: Your encryption subkey expires soon. gpg: You may want to change its expiration date too. In that case, use `key 1` to choose the subkey and `expire` to update it. Finally, type `save` to save the updated key and exit. Now, to get the new PGP public key block, use gpg --armor --export 56584D0971AFE45FCC296BD74CE62A90EFC0B9B2 # Update the key on Github This is where I use my key the most. To update it, go to: https://github.com/settings/keys Here, delete the old key (don't worry, your old commits wont be invalid) and upload your new key. # Update the key on sourcehut: Update it here: https://meta.sr.ht/keys # Update the key on munksgaard.me Update the file here: https://github.com/Munksgaard/munksgaard.me/blob/master/publickey.txt And publish the website again using `C-c C-e P p`. # Update the key on gopher Update the file here https://git.sr.ht/~munksgaard/munksgaard.me-gopher/tree/master/item/src/pubkey.asc And publish the update using philnix. # Importing Github keys Oh, and because verifying signed commits on GitHub and other places is pretty much the only thing I'm using GPG for (I'd love to receive an encrypted e-mail some day!), here's how to import another users GPG-key from GitHub: curl https://github.com/USERNAME.gpg | gpg --import