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?
I have setup bskysocial.world to test that (there's no web interface, just select this domain when logging in or signing up via the app or https://bsky.app)
Note: This is for testing only, I can't promise it will remain running.
(I am @ruud.bskysocial.world)
Thank you Ruud!
If I understand correctly, using a custom domain name still makes you use the central Bluesky server, right?
@Blaze @ruud
No, it doesn't have to. Custom domain does not tied to any instances (PDS) you reside in. The way custom domain handle works is for the verification itself.
The first time you've created your account to that instance, you've been given to a specific instance name to your handle. For example "user.bskysocial.world". With the "user" acts as a subdomain and "bskysocial.world" as a PDS name.
You can learn more of how the handles work in ATProto here:
https://atproto.com/specs/handle
@Blaze @ruud
You can still change your handle to however you'd like without having to migrate it to another PDS using your own domain name.
Every component in the ATProto (Handles, PDS, AppView, Relays, etc) are separated from each other and can be run individually, without having to cause massive interference to one another. I kind of think of it as a "Microservices" in ATProto, whilst ActivityPub is more like a "Monolithic" one.