-
-
Notifications
You must be signed in to change notification settings - Fork 31
Open
Description
Problem
Currently our in-app updates need to be able to access one of four websites:
- repo.buskill.in
- repo.michaelaltfield.net
- github.com
- gitlab.com
buskill-app/src/packages/buskill/__init__.py
Lines 57 to 62 in 53f631d
UPGRADE_MIRRORS = [ 'https://raw.githubusercontent.com/BusKill/buskill-app/master/updates/v1/meta.json', 'https://gitlab.com/buskill/buskill-app/-/raw/master/updates/v1/meta.json', 'https://repo.buskill.in/buskill-app/v1/meta.json', 'https://repo.michaelaltfield.net/buskill-app/v1/meta.json', ]
If all 4 of those sites went down, BusKill wouldn't be able to update itself.
Note that the software verifies signatures, randomizes the domains in the mirror list, and automatically tries all the mirrors if it fails. So we don't actually have to trust the publishing infrastructure, and only one mirror needs to be reachable.
Solution
We can further make this more resilient by adding a new contender to the forge space: Codeberg
How?
It's pretty simple to implement:
- Copy the contents of gitlab to codeberg https://gitlab.com/buskill/buskill-app/
- Update this repo's
src/packages/buskill/__init__.pyfile to include the repo's raw download URL for theupdates/v1/meta.jsonfile - Update our documentation's
Update updates repo metadatsection to include updating this file on the codeberg repo https://docs.buskill.in/buskill-app/en/stable/software_dev/release.html#update-updates-repo-metadata
Metadata
Metadata
Assignees
Labels
No labels