Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. I would like to give an update on "federation" on Bluesky.

I would like to give an update on "federation" on Bluesky.

Scheduled Pinned Locked Moved Uncategorized
342 Posts 109 Posters 884 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mcc@mastodon.socialM mcc@mastodon.social

    @mat @eniko Another thing to note. Posts on ATProto are 300 characters. The entire system is set up to mark "schema invalid" and wholly censor any post which is more than 300 characters. So what you'd have to do is put a 270 character summary of your post, plus a link to your real wordpress, into the PDS. (It's not a schema violation to contain *extra* data, so you could include a "full-text" field in the post blob, but no system in existence could read it— not even yours, you'd be publish-only)

    mcc@mastodon.socialM This user is from outside of this forum
    mcc@mastodon.socialM This user is from outside of this forum
    mcc@mastodon.social
    wrote on last edited by
    #174

    @mat @eniko So at that point, barring building an entire alternate Bluesky-like system for reading longposts— a system which would be redundant when ActivityPub exists— you're not mirroring your WordPress on Bluesky, rather you're using Bluesky as a funny kind of RSS feed, posting a short announcement of each post there… at which point, isn't it easier to just link your WordPress to a *regular* bluesky account, and use the API to auto-post summary+announcements for new posts?

    Am I making sense?

    1 Reply Last reply
    0
    • thisismissem@hachyderm.ioT This user is from outside of this forum
      thisismissem@hachyderm.ioT This user is from outside of this forum
      thisismissem@hachyderm.io
      wrote on last edited by
      #175

      @mat @mcc @eniko I think you'd be hard pressed to implement AT Proto in PHP tbh..

      Edit, to expand on that: AT Proto requires a bunch of cryptography (for keys and dpop and such), and websockets for the sync part of the protocol (which is how relay's typically hear about your posts)

      thisismissem@hachyderm.ioT 1 Reply Last reply
      0
      • silmathoron@floss.socialS This user is from outside of this forum
        silmathoron@floss.socialS This user is from outside of this forum
        silmathoron@floss.social
        wrote on last edited by
        #176

        @gunchleoc the Bluesky addon for Friendica is here [0], I haven't had time to check how it works... name suggests it would use the Bluesky PDS and I've seen issues about Bridgyfed on the issue tracker, so not sure whether that's what's used to post or not.
        [0]: https://git.friendi.ca/friendica/friendica-addons/src/branch/2025.07-rc/bluesky
        Do you have a link about Hubzilla? I haven't seen anything about ATProto compatibility
        @gbargoud @mcc

        1 Reply Last reply
        0
        • mcc@mastodon.socialM mcc@mastodon.social

          @erincandescent i think in order to solve this problem without centralization you do need a ledger ("blockchain"). That's simply the way to get a canonically agreed on ordering of events. I think there are some reasons to go with a data structure *other* than literal blockchain for your ledger. But if you create a canonically agreed on ordering of events (which as far as I'm concerned you need if you want to support key rotation/did changes) then more or less by definition you've made a ledger

          dalias@hachyderm.ioD This user is from outside of this forum
          dalias@hachyderm.ioD This user is from outside of this forum
          dalias@hachyderm.io
          wrote on last edited by
          #177

          @mcc @erincandescent I have a system that doesn't need blockchain. Instead it uses a "nocoin" (term I coined, pardon the pun) distributed notary system that doesn't have a ledger because there's no way to enumerate things that have been recorded, only to prove that a particular thing was seen by a notary at a particular time.

          dalias@hachyderm.ioD 1 Reply Last reply
          0
          • mcc@mastodon.socialM This user is from outside of this forum
            mcc@mastodon.socialM This user is from outside of this forum
            mcc@mastodon.social
            wrote on last edited by
            #178

            @mat @eniko "but where are replies to those posts coming from in this setup?"

            Short version: "You can't get them"

            Long version: Currently the only ways to get replies to a post published in your Bluesky PDS are

            - Run a "relay". This means (this is not a joke) receiving from Bluesky PBC a copy of literally every post made in the network, and filtering for ones that @ you.

            - Log in to bsky.app (or a clone like blacksky) with your PDS username and password, and look in the notifications tab.

            mcc@mastodon.socialM 1 Reply Last reply
            0
            • mcc@mastodon.socialM mcc@mastodon.social

              @mat @eniko "but where are replies to those posts coming from in this setup?"

              Short version: "You can't get them"

              Long version: Currently the only ways to get replies to a post published in your Bluesky PDS are

              - Run a "relay". This means (this is not a joke) receiving from Bluesky PBC a copy of literally every post made in the network, and filtering for ones that @ you.

              - Log in to bsky.app (or a clone like blacksky) with your PDS username and password, and look in the notifications tab.

              mcc@mastodon.socialM This user is from outside of this forum
              mcc@mastodon.socialM This user is from outside of this forum
              mcc@mastodon.social
              wrote on last edited by
              #179

              @mat @eniko Now, that last thing is possible, and even easy. But at that point it's really, super unclear *why* you would architect your Wordpress server to *be* a PDS, rather than running the regular PDS software on the same box, and having the Wordpress server post to it from time to time using the external API. It's extra work, but there's no obvious advantage and there's barely even a difference.

              mcc@mastodon.socialM 1 Reply Last reply
              0
              • dalias@hachyderm.ioD dalias@hachyderm.io

                @mcc @erincandescent I have a system that doesn't need blockchain. Instead it uses a "nocoin" (term I coined, pardon the pun) distributed notary system that doesn't have a ledger because there's no way to enumerate things that have been recorded, only to prove that a particular thing was seen by a notary at a particular time.

                dalias@hachyderm.ioD This user is from outside of this forum
                dalias@hachyderm.ioD This user is from outside of this forum
                dalias@hachyderm.io
                wrote on last edited by
                #180

                @mcc @erincandescent The concept is that you intentionally preclude the possibility of detecting "double-spend" so that the system can't be used for exchanging things of value. As a bonus, this also precludes selling identities. It's impossible to prove you're not keeping hidden an earlier-dated transfer to a different new owner when you offer to transfer an identity for money.

                erincandescent@akko.erincandescent.netE mcc@mastodon.socialM 2 Replies Last reply
                0
                • thisismissem@hachyderm.ioT thisismissem@hachyderm.io

                  @mat @mcc @eniko I think you'd be hard pressed to implement AT Proto in PHP tbh..

                  Edit, to expand on that: AT Proto requires a bunch of cryptography (for keys and dpop and such), and websockets for the sync part of the protocol (which is how relay's typically hear about your posts)

                  thisismissem@hachyderm.ioT This user is from outside of this forum
                  thisismissem@hachyderm.ioT This user is from outside of this forum
                  thisismissem@hachyderm.io
                  wrote on last edited by
                  #181

                  @mat @mcc @eniko you could probably take the bluesky-social/pds repo, and add in endpoints that a wordpress plugin would call to automatically create records in it for social posts, if you just wanna distribute out a app.bsky.feed.post for each wordpress post.

                  That'd be pretty easy to do.

                  1 Reply Last reply
                  0
                  • mcc@mastodon.socialM mcc@mastodon.social

                    @mat @eniko Now, that last thing is possible, and even easy. But at that point it's really, super unclear *why* you would architect your Wordpress server to *be* a PDS, rather than running the regular PDS software on the same box, and having the Wordpress server post to it from time to time using the external API. It's extra work, but there's no obvious advantage and there's barely even a difference.

                    mcc@mastodon.socialM This user is from outside of this forum
                    mcc@mastodon.socialM This user is from outside of this forum
                    mcc@mastodon.social
                    wrote on last edited by
                    #182

                    @mat @eniko Isn't it convenient that Bluesky has architected an "open" system where the solution to every problem turns out to be "use Bluesky", and any other solution requires fighting incredible gravity?

                    1 Reply Last reply
                    0
                    • thisismissem@hachyderm.ioT This user is from outside of this forum
                      thisismissem@hachyderm.ioT This user is from outside of this forum
                      thisismissem@hachyderm.io
                      wrote on last edited by
                      #183

                      @mat @mcc @eniko yeah, because you need sync, afaik. https://atproto.com/specs/sync

                      1 Reply Last reply
                      0
                      • mcc@mastodon.socialM This user is from outside of this forum
                        mcc@mastodon.socialM This user is from outside of this forum
                        mcc@mastodon.social
                        wrote on last edited by
                        #184

                        @mat @thisismissem @eniko The continuous event streams are HTTP. Mine are being proxied through Apache

                        thisismissem@hachyderm.ioT 1 Reply Last reply
                        0
                        • dalias@hachyderm.ioD dalias@hachyderm.io

                          @mcc @erincandescent The concept is that you intentionally preclude the possibility of detecting "double-spend" so that the system can't be used for exchanging things of value. As a bonus, this also precludes selling identities. It's impossible to prove you're not keeping hidden an earlier-dated transfer to a different new owner when you offer to transfer an identity for money.

                          erincandescent@akko.erincandescent.netE This user is from outside of this forum
                          erincandescent@akko.erincandescent.netE This user is from outside of this forum
                          erincandescent@akko.erincandescent.net
                          wrote on last edited by
                          #185

                          @dalias @mcc it sounds like in an attempt to prevent people using your system for money you’ve also made it useless for actually managing identities because it becomes impossible to definitively recover control of a compromised account or transfer an account to someone else safely.

                          dalias@hachyderm.ioD 1 Reply Last reply
                          0
                          • mcc@mastodon.socialM mcc@mastodon.social

                            @mat @thisismissem @eniko The continuous event streams are HTTP. Mine are being proxied through Apache

                            thisismissem@hachyderm.ioT This user is from outside of this forum
                            thisismissem@hachyderm.ioT This user is from outside of this forum
                            thisismissem@hachyderm.io
                            wrote on last edited by
                            #186

                            @mcc @mat @eniko I mean, kinda correct in that WebSockets are tunneled over HTTP, but it's still the WebSocket Protocol that is being used..

                            mcc@mastodon.socialM 1 Reply Last reply
                            0
                            • tylercook@mastodon.gamedev.placeT tylercook@mastodon.gamedev.place

                              @mcc I do, yeah. So it's just one part of the stack. The complicated parts come later, eh?

                              mcc@mastodon.socialM This user is from outside of this forum
                              mcc@mastodon.socialM This user is from outside of this forum
                              mcc@mastodon.social
                              wrote on last edited by
                              #187

                              @tylercook Yes, correct. If you already have a setup for hosting Docker containers standing up the PDS is *trivial*. Like, you could do it in under an hour. I don't pay per byte of bandwidth (VPS) but the load from running my PDS has been so low I don't notice it. And if it turns out to be a problem you can migrate out to another PDS.

                              I'm going to DM you a link to a Discord I found helpful when debugging issues with my PDS.

                              1 Reply Last reply
                              0
                              • thisismissem@hachyderm.ioT thisismissem@hachyderm.io

                                @mcc @mat @eniko I mean, kinda correct in that WebSockets are tunneled over HTTP, but it's still the WebSocket Protocol that is being used..

                                mcc@mastodon.socialM This user is from outside of this forum
                                mcc@mastodon.socialM This user is from outside of this forum
                                mcc@mastodon.social
                                wrote on last edited by
                                #188

                                @thisismissem @mat @eniko Okay, yes, that's more accurate.

                                thisismissem@hachyderm.ioT 1 Reply Last reply
                                0
                                • mcc@mastodon.socialM mcc@mastodon.social

                                  @fleeky 1. Correct
                                  2. I don't know

                                  fleeky@prsm.spaceF This user is from outside of this forum
                                  fleeky@prsm.spaceF This user is from outside of this forum
                                  fleeky@prsm.space
                                  wrote on last edited by
                                  #189

                                  @mcc am having a discussion of this on bsky that is helping to disambiguate :
                                  https://bsky.app/profile/futur.blue/post/3lyuzwzb2k226
                                  also https://github.com/zeppelin-social/bluesky-appview

                                  mcc@mastodon.socialM 1 Reply Last reply
                                  0
                                  • mcc@mastodon.socialM mcc@mastodon.social

                                    @thisismissem @mat @eniko Okay, yes, that's more accurate.

                                    thisismissem@hachyderm.ioT This user is from outside of this forum
                                    thisismissem@hachyderm.ioT This user is from outside of this forum
                                    thisismissem@hachyderm.io
                                    wrote on last edited by
                                    #190

                                    @mcc @mat @eniko so yeah, I was more saying PHP and WebSockets isn't likely to be the most pleasant time for someone. (much like Ruby and WebSockets)

                                    But yeah, if you're suggesting a sidecar PDS to a wordpress blog that just publishes bluesky posts with a link to the wordpress post, then that'd be relatively simple. It's once you want to go beyond that that things start getting hard.

                                    1 Reply Last reply
                                    0
                                    • erincandescent@akko.erincandescent.netE erincandescent@akko.erincandescent.net

                                      @dalias @mcc it sounds like in an attempt to prevent people using your system for money you’ve also made it useless for actually managing identities because it becomes impossible to definitively recover control of a compromised account or transfer an account to someone else safely.

                                      dalias@hachyderm.ioD This user is from outside of this forum
                                      dalias@hachyderm.ioD This user is from outside of this forum
                                      dalias@hachyderm.io
                                      wrote on last edited by
                                      #191

                                      @erincandescent @mcc Nope. Recovery is one of the primary considerations. Unless you intentionally want recovery to be impossible (some people may), you have a recovery policy notarized (can be published or kept unpublished in safe storage you control) prior to any use of the identity. Then proof of conditions satisfying the recovery policy preempt any transfer of control that took place later during a compromise.

                                      dalias@hachyderm.ioD 1 Reply Last reply
                                      0
                                      • dalias@hachyderm.ioD dalias@hachyderm.io

                                        @mcc @erincandescent The concept is that you intentionally preclude the possibility of detecting "double-spend" so that the system can't be used for exchanging things of value. As a bonus, this also precludes selling identities. It's impossible to prove you're not keeping hidden an earlier-dated transfer to a different new owner when you offer to transfer an identity for money.

                                        mcc@mastodon.socialM This user is from outside of this forum
                                        mcc@mastodon.socialM This user is from outside of this forum
                                        mcc@mastodon.social
                                        wrote on last edited by
                                        #192

                                        @dalias @erincandescent I understand how such a system would work but I would not use it for at least two reasons

                                        1 Reply Last reply
                                        0
                                        • dalias@hachyderm.ioD dalias@hachyderm.io

                                          @erincandescent @mcc Nope. Recovery is one of the primary considerations. Unless you intentionally want recovery to be impossible (some people may), you have a recovery policy notarized (can be published or kept unpublished in safe storage you control) prior to any use of the identity. Then proof of conditions satisfying the recovery policy preempt any transfer of control that took place later during a compromise.

                                          dalias@hachyderm.ioD This user is from outside of this forum
                                          dalias@hachyderm.ioD This user is from outside of this forum
                                          dalias@hachyderm.io
                                          wrote on last edited by
                                          #193

                                          @erincandescent @mcc And in my view, "not usable for money" is a prerequisite for "usable as identity". Related: the whole market for buying popular browser extensions to put malware in them.

                                          M 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups