-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support Bluesky / AT Protocol #381
Comments
Looks like https://bsky.social/ may be the backend serving the |
Movement! They've been working out and implementing federation, eg in https://github.com/bluesky-social/indigo , and they're about to invite more people to the beta app. |
They still haven't published yet, but I'm digging into this based on
|
First pass at MST implementation is done! Now working on implementing the |
(PDS implementation is in https://github.com/snarfed/arroba/ ) |
Blue Sky, the same service that is lead by the guy who let the government access Twitter when he was in charge? I HIGHLY OPPOSE the integration of Blue Sky service because of this. Perhaps it's time to create a rolling fork that purposely removes Blue Sky and potentially other networks from the plugin. Yeah, I'm unsubscribing from this product altogether. I won't support this in any way shape or form. |
Sorry to hear that! You're obviously welcome to fork or stop using Bridgy Fed at any time, that's your prerogative, and the beauty of both open source code and free (ie no cost to you) services like this. Fwiw, Jack and others at Twitter initially kicked off the Bluesky project, but neither he nor Twitter have ever led it or had meaningful ownership or individual control over it since then. More: https://snarfed.org/bluesky-corporate-ownership-and-structure |
Moved to snarfed/arroba#2, and the BF-specific bits to #512. |
Is the intention just to allow following websites from Bluesky (like already live for ActivityPub), or to allow following Bluesky users from ActivityPub? If the latter, how will opt-in be handled? I would personally find the ability to follow Bluesky users from Mastodon very useful, but I can see it being controversial for a number of reasons. |
Thanks for asking! The intent is to expand Bridgy Fed to be able to bridge any decentralized social protocol to any other protocol, eg web sites <=> Nostr, ActivityPub <=> Bluesky, and all other combinations. You can see some of the detailed background prep work in https://fed.brid.gy/docs#translate, along with tracking issues like #512 and #529. Glad to hear you'd find it useful! And yup, I definitely know that it may be controversial. That's definitely not my intent, and I plan to be as careful as possible, and take all feedback into account, including experiences with existing bridges like https://mostr.pub/ ...but I expect I may still take some heat. I guess I'm ok with that. |
Reopening for tracking, since we haven't actually shipped this yet. 😆 |
Super cool! Just to clarify, is this specific issue meant to introduce bridging between ActivityPub and Bluesky? |
@ghobs91 yes! Contingent on Bluesky turning on federation in prod, of course. Latest status: https://snarfed.org/2023-07-11_bridgy-fed-status-update-2 |
Oh and notably this would bridge Bluesky to all of the protocols that BF supports. Right now that's just AP and web (microformats2 + webmention), but we hope to add others too, eg Nostr. |
Big milestone yesterday, https://github.com/snarfed/arroba is now successfully federating with the ATProto sandbox! Demo PDS is https://arroba-pds.appspot.com/ , user is arroba5.snarfed.org. Woot! |
Thinking through architecture here. With the other protocols we're working with so far, individual objects are at most loosely connected. We can federate profiles, follows, posts, etc independently of each other. ATProto, on the other hand, ties all of a given user's objects together more tightly in their repo. When a non-ATProto user follows or otherwise interacts with a non-ATProto user, we can construct their repo on demand, but that's heavyweight. Should we construct them for everyone, ahead of time? ...except most of the time we'll be seeing a given non-ATProto user for the first time, so we need to be able to construct repos on the fly anyway. So maybe we just start with that, and see whether/how we can optimize later. |
Big milestone, shipped Bluesky => fediverse user discovery! Search for |
Amazing! I only seem to be able to find @jay.bsky.team@atproto.brid.gy though, if i try any other bluesky handle it doesn't work. |
Same, WebFinger gives this response for other users:
|
Argh, looks like I deployed a bug that affects |
Previous progress reports: https://snarfed.org/2023-11-07_bridgy-fed-status-update-8, and the "previously" links at the bottom there. |
I guess I should leave this open until we can actually ship it 😎 |
Is this functionality only enabled for some accounts? My Mastodon and ATProto sandbox accounts can see each other, but follows and posts don't seem to be going through in either direction. |
@leo60228 it's not on for any accounts, hence "until we can actually ship it" and "Not real Bluesky, only in the federation sandbox" 😁. |
I meant in the sandbox, I know that real Bluesky accounts won't work yet. |
Ah! No, it's not fully on in the sandbox either. I don't currently have plans to turn it back on there and leave it on, since the sandbox is just for testing and gets wiped semi-regularly. Glad you're interested though! |
Is there anything I can do to contribute to this? |
Hey, thank you for offering! Sasquatch is awesome btw! At an alpha level at least, this is basically done. We're just waiting for Bluesky team to turn on external federation. After they do that and we ship this, we'll discover a ton of bugs and missing things, as usual, but I'm not trying too hard to find all of those beforehand. The one main thing I'm thinking about is #744, which currently caps us at 10k external accounts bridged into Bluesky. That sounds high, but I suspect it will arrive sooner than we expect. Otherwise, feel free to look at the open issues and see if any of them grab you, I'd love the help! |
Oh, there's also #728, which somewhat blocks us from supporting reposts until bluesky-social/atproto#1811 is addressed. Feel free to evangelize or even look into fixing that! |
Bluesky is federating soon! "This month." |
So I guess it's federating now. |
Just curious about the status of Bluesky support? Given this:
Given that federation has been active over a month, I'm wondering when this will get activated. There are people on Bluesky I'd love to be able to follow from a Mastodon server (even passively, without fully functional federation), but this doesn't seem to be working yet, e.g. searching for |
@afontenot yes! Bluesky's federation is currently only in beta, limited to just 10 accounts per server, so we can't launch until they lift that limit. We also have some work left to do here too, but that limit is probably still the main blocker right now. |
@snarfed thanks very much for the update! |
Regarding task
hasn't a decision been de-facto already made, at least for the time-being? |
Hmm! Surprisingly no, I don't think so. We only have the one |
I don't think this is what you were referring to, but the owner/author of the blog hosted at snorre.io also built their site's comment system on top of BlueSky. |
Fun! Always nice to see other backfeed implementations like https://brid.gy/ (non-Fed). Agreed though, that's different, and it also still uses the existing |
Adding more todos and manual tests to the description at the top here, pinning this issue. |
Closing this! Initial implementation is complete. I'm now tracking ongoing bugs and updates in the now label. |
Background: https://bsky.social/ , https://atproto.com/docs, https://github.com/bluesky-social/atproto.
...switched to the now label for tracking roadmap and current tasks.
Blocking:
atproto
tobsky
#961Nice to have:
Manual tests:
user pages
web => ATProto
ATProto => web
ActivityPub => ATProto
Haven't gotten this working yet, not sure why. Tried reposting this post and this post on indieweb.social, UI shows that it works fine, but BF never got inbox delivery of theFinally got one! Maybe indieweb.social's queue was just backed up.Announce
s, and when I click the boosts link on those posts in indieweb.social, eg here, they don't show any reposts. Especially odd since likes are working, and reposts are so similar.ATProto => ActivityPub
Implementation tasks:
ATProto
protocol classsubscribeRepos
#630[ ] port arroba's websocket server to asyncio?Object.copies
. (inObject.as1
? orProtocol._targets
? or...?)User.copies
, use it similarly to mapactor
/author
etc targetsreceive
task queue. (later hopefully we'll migrate incoming webmentions and AP inbox deliveries to this too, but that's complicated.)_atproto
TXT DNS records on the fly in GCP DNS (000b08f)requestCrawl
to the BGS on startupATProto.send
: ignoreAccept
s ofFollow
s[ ] backfillk256_pem
into existingWeb
andActivityPub
users[ ] Validate data against lexicon schemas (optional)app.bsky
lexicons in granary:app.bsky
read XRPCs, eg https://fed.brid.gy/xrpc/app.bsky.feed.getAuthorFeed?author=snarfed.orgprotocol.receive
across protocols?ingest/sync other PDSes' repos[ ] DID resolution[ ] did:web serving?com.atproto.sync
XRPC methods:[ ] getBlob[ ] getBlocks[ ] getCommitPath[ ] listBlobs[ ] notifyOfUpdate[ ] requestCrawl[ ] subscribeReposcom.atproto.server
XRPC methods:[ ] createAccountcom.atproto.repo
XRPC methods:[ ] rebaseRepo[ ] uploadBlobFollower
s with different protocolsThe text was updated successfully, but these errors were encountered: