Samuel
@samuel.fm
been thinking about this. I think the best form factor for a PDS is bsky.social + a phone app that holds your PLC keys and also performs automatically repo backups. so you can just adversarially migrate with one button press while still using a big hosting provider for uptime, for free
5 9 72I made a PoC for the key holding part: github.com/mozzius/deme... and @retr0.id is working on adversarial migration tooling for goat. it’s all coming together!
GitHub - mozzius/demesne: plc key management app
plc key management app. Contribute to mozzius/demesne development by creating an account on GitHub.
github.com
anyway, point is the great strength of this architecture is not in its “active” state, but in its “passive” state - you can just show up with your repo somewhere else, without asking permission. so just use bsky.social right up until the point you don’t want to
1 7 33get your key sovereignty here
Join the Demesne — atproto keys beta
Available on iOS
testflight.apple.com
This is a very exciting idea!
Do you have a good idea about what to do if people lose their phone/it falls in water/etc?
1 3i am sick and tired of being treated as a second class citizen here
i'm going to another protocol where we android users are respected and cherished
(10 minutes later)
okay you know what, even better, i'm going to stay and deal with it
1 5What about backing up the repo? Obviously some repos will be large, but could they be backed up to iCloud?
1even big repos are only on the order of megabytes. I think the real issue would be syncing the blobs
2 1Could blobs be synced to an S3 bucket that the user owns?
What are the options for background tasks on iOS? Even a daily automatic backup would be a good start, especially if I can trigger a manual sync in the app (I.e., immediately before migrating or taking some action I may want to revert).
1there's background task APIs I think
1 1If I had a repo backup from a day ago, could I pull any recent missing records from the relay? It keeps recent records in cache, right?
How far are you on adversarial migration?
Have you gotten past creating the new account with an offline service key? I've been stuck on that for atpairport.com and if you've figured it out I'd love to know how it's done.
2yes!! i personally think that should be built into the bluesky app so every user automatically benefits from it without knowing
2 112 years ago I would’ve agreed but:
- regular backups from 30m users is a hell of a lot of wasted bandwidth
- people tend to reinstall apps, wiping the keys
- it’s not really a benefit unless you’re techy enough to use it
which pushes me in the direction of a sidecar app for people who care
1 1 12☝️ could just be a superuser mode thing to make ssbheads happy
1Keep up the good work.
4some interesting stuff happening in the mobile-pds channel of the bluesky api discord
1 2yeah, vaguely aware of this. it’s a cool concept - sort of a “semi-active” architecture in this framing
However, my worry is that being in this middle ground it’ll introduce a ton of complexity for marginal benefits. the beauty of atproto is all you need a rotation key and a copy of your repo!
6yeah good point, @seabass.bsky.social is doing some cool work with other ppl to make a PDS that you can run on a phone with some sort of layer that mirrors the files elsewhere and syncs it so that the files are on the phone, but "hosted" on an external server to be read from (as i understand it)
7