Trying to figure this out as in the recent threads a few people said that Bluesky was federated, but it didn't seem to actually be the case.
https://bsky.social/about/blog/02-22-2024-open-social-web in February announced that Bluesky would allow federated servers
The Bluesky documentation on the topic isn't very clear. They mention Bluesky.social a lot, as if it's supposed to be the one central server other PDS need to federate with:
Bluesky runs many PDSs. Each PDS runs as a completely separate service in the network with its own identity. They federate with the rest of the network in the exact same manner that a non-Bluesky PDS would. These PDSs have hostnames such as morel.us-east.host.bsky.network.
However, the user-facing concept for Bluesky's "PDS Service" is simply bsky.social. This is reflected in the provided subdomain that users on a Bluesky PDS have access to (i.e. their default handle suffix), as well as the hostname that they may provide at login in order to route their login request to the correct service. A user should not be expected to understand or remember the specific host that their account is on.
To enable this, we introduced a PDS Entryway service. This service is used to orchestrate account management across Bluesky PDSs and to provide an interface for interacting with bsky.social accounts.
https://docs.bsky.app/docs/advanced-guides/entryway#account-management
Self-hosting a Bluesky PDS means running your own Personal Data Server that is capable of federating with the wider Bluesky social network.
https://github.com/bluesky-social/pds?tab=readme-ov-file#what-is-the-current-status-of-federation
The custom domain name is still something else, and does not seem to require a PDS: https://bsky.social/about/blog/4-28-2023-domain-handle-tutorial
So, to come back to the title question, do people know of an example of PDS that can be used to access Bluesky without being on the main server?
@Blaze
Long winded, nuanced answer, ready your eyeballs:
It's a bit complicated, but since we're on Fediverse and at least somewhat familiar with how things work here, I'll try to explain with that comparison in mind.
On Fediverse, instances are in control of the user data directly. To "migrate" your account, you'd be switching instances and admins entirely.
BlueSky splits things up quite a bit more.
There, you can host your own "PDS" or Personal Data Server. That hosts your account and post info only.
Then, there's the "AppView". In comparison to Fediverse, these are like Lemmy, Mastodon, Mbin, etc. Right now, there's VERY few Appviews to choose from.
Then, there's the "relay". Which to Fediverse, the only thing similar is also relays, but they work differently. On BlueSky, they relay every post and interactions of all the PDS data that connect to AppViews. I do not think there's a choice on *what* is relayed, just a huge firehose. That being said, they're not optional like Fediverse. To complete the network, relays are required on ATProto and apparently could be expensive to host, so right now, it appears the only relay is hosted by BlueSky the company. Which makes things slightly centralized.
Now, that we have those definitions out of the way, this is where things get a bit muddy and a bit of purposeful corporate created confusion for purpose of selfishness is quite apparent.
Right now, there's very few AppViews. The ones I'm aware of are, BlueSky itself, Whitewind, and Frontpage.xyz.
The confusion happens because BlueSky, the company, doesn't separate the fact that accounts hosted on self-hosted PDS, aren't technically Bluesky accounts, they're ATproto accounts. Everywhere you look to login, it says "login using your BlueSky account". I can only assume they're doing this on purpose so that anyone who tries to make an Appview, host a PDS, AND a relay, can't have their own "identity" like different instances and platforms have here on Fedi.
That will confuse people and make them think *everything* is just hosted by BlueSky the company. However, as we've now established, there's definitely a separation of "Bluesky" the company, "BlueSky" the AppView that you can login to using your "BlueSky" account, which doesnt technically have to be hosted by anything related to BlueSky.
I hope this all makes sense and you can tell that *technically* things are decentralized for the most part. It's just that BlueSky is purposefully muddying their own definitions of things so that anyone that tries to build on ATproto, has a hard time making themselves known as *not* bluesky due to the way they conflate all these definitions.
Sorry for the huge post and hope it makes sense in some way.
Thanks for reading.๐๐
@fediverse
@BeAware @Blaze @fediverse Yeah, so it's not a bad explanation, maybe a bit biased ;)
The key is that the architecture is very different, and there isn't a direct equivalent of instances. There are PDSes, but they do much less than Fedi instances, and they also don't directly talk to (federate with) each other. The data flows from PDSes to relay(s) to AppView(s) and to clients.
@mackuba @Blaze @fediverse that's what I said, no? just in more words.๐คทโโ๏ธ
And yeah, my opinion is mixed in, but I figured that should be obvious. Maybe I should put *opinion* somewhere in there?๐ค
Most of it is true, with my opinion in 2 or 3 sentences.
@BeAware @Blaze @fediverse There's a small number of self-hosted personal PDSes (https://blue.mackuba.eu/directory/pdses), but the system isn't really open yet to running larger ones with open signup. The Bluesky Relay doesn't currently accept more than 10 users on one PDS (with exceptions like Bridgy).
Technically anyone can run a parallel Relay and/or AppView, and hopefully that will happen, but nobody has done it yet so far (Whitewind/Frontpage are kind of different services on the same protocol).