Runs periodically and publishes your ATproto repo to GitHub Pages.
- Fork this repo
- Clone your fork to a local machine (for one-time setup)
- Copy
.env.exampleto.envand update the content with your info.TOKENwill be filled in later if needed. - Run
maketo generate a new rotation key. - Add
PRIVATE_KEYunder Settings -> Secrets and variables -> Actions in the Secrets tab. - Add
PUBLIC_KEYandDID(with your DID as a value) in the Variables tab. - Run
make add-keyto add your newly generated key to the list of rotation keys in PLC.- It may tell you to check your email. If it does - copy the token from the email from your PDS into
TOKENvariable in.envand re-run the command.
- It may tell you to check your email. If it does - copy the token from the email from your PDS into
To err on the side of caution, you can now delete key.priv file.
You can trigger the workflow manually too, from the Actions tab. Your repo will be published as ${REPO_PAGES_URL}/xrpc/com.atproto.sync.getRepo, mimicking XRPC method.
TODO:
- Verifying repo signature with the public key from DID document
- Fetching blobs: might easily overrun Pages size limits, so probably worth to store them elsewhere
- Re-adding
PUBLIC_KEYto PLC if it gets removed for whatever reason or bumped from the top of the list - Reverting PLC operations when
PUBLIC_KEYgets removed and your current PDS refuses to cooperate - A script for migrating your account to a new PDS from the last backup