# Copy to /etc/graft/config.yaml and adjust. # This file itself holds no secrets: tokens live in separate files # (token_file), owned by the sync user, mode 600. sync_interval: 5m state_db: /var/lib/graft/state.db # Shown in the status dashboard's footer. Optional. source_url: https://git.example.org/alice/graft # Hostname graft is publicly reachable at. Setting this enables ActivityPub: # every series becomes a followable actor (e.g. testrepo@graft.example.org) # whose outbox mirrors its activity log, with a status page at /social. # Optional — leave unset to keep graft ActivityPub-free. public_host: graft.example.org repos: - name: testrepo # Groups this pair with others that mirror the same underlying repo # (one pair per forge/Radicle side) under one row in the status # dashboard's heatmap. Defaults to `name` — its own row — if unset. series: testrepo forgejo: base_url: https://f1.cyberwild.org owner: forgeadmin repo: testrepo token_file: /etc/graft/f1-testrepo.token radicle: rid: rad:z2YWuPL53okTkr5mgb7WCKsfxG7h8 http_base_url: https://r1.cyberwild.org rad_home: /home/sync/.radicle # A Radicle Explorer deployment, for "view this on Radicle" links in # the status dashboard. Optional: links are omitted if unset. explorer_url: https://app.radicle.xyz sync: git: true issues: true patches: true # Posts a short note to this Bluesky account whenever this pair mirrors # a new commit or opens a patch/PR. Optional — omit to never post. bluesky: handle: testrepo.bsky.social app_password_file: /etc/graft/testrepo-bluesky.app-password # PDS endpoint. Optional: defaults to https://bsky.social, correct # for any account hosted there (the common case). pds_host: https://bsky.social