Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • 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 (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. Announcements
  3. Pixelfed

Pixelfed

Scheduled Pinned Locked Moved Announcements
pixelfedfederation
45 Posts 7 Posters 14.3k Views 7 Watching
  • 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.
  • scookeS scooke

    It seems broken that I have to log in to someone else's Pixelfed instance to Like an image though. Or is this a 20% case of the federation not working? Seems counterintuitive to have to join someone's PF to interact with them.

    murgeroM Offline
    murgeroM Offline
    murgero
    App Dev
    wrote on last edited by
    #25

    @scooke said in Pixelfed:

    It seems broken that I have to log in to someone else's Pixelfed instance to Like an image though

    You're doing it wrong. ActivityPub doesn't work like that - The issue here is federation is broken.

    There is no requirement to register and login to another server to send a like on an image in activitypub.

    --
    https://urgero.org
    ~ Professional Nerd. Freelance Programmer. ~

    girishG scookeS 2 Replies Last reply
    -1
    • murgeroM murgero

      @scooke said in Pixelfed:

      It seems broken that I have to log in to someone else's Pixelfed instance to Like an image though

      You're doing it wrong. ActivityPub doesn't work like that - The issue here is federation is broken.

      There is no requirement to register and login to another server to send a like on an image in activitypub.

      girishG Offline
      girishG Offline
      girish
      Staff
      wrote on last edited by
      #26

      @murgero said in Pixelfed:

      The issue here is federation is broken

      Do you know what is needed in the Cloudron package to fix this? Or is this an upstream app issue? I couldn't really find any information about pixelfed + federation on their site. If there is a link, I would love to see it.

      murgeroM 1 Reply Last reply
      0
      • murgeroM murgero

        @scooke said in Pixelfed:

        It seems broken that I have to log in to someone else's Pixelfed instance to Like an image though

        You're doing it wrong. ActivityPub doesn't work like that - The issue here is federation is broken.

        There is no requirement to register and login to another server to send a like on an image in activitypub.

        scookeS Online
        scookeS Online
        scooke
        wrote on last edited by
        #27

        @murgero Ok, so normally I could click on a Follower, see their images, and simply press Heart, like Instagram? That makes more sense. But without that, PF as it is on Cloudron is for viewing only. I wish I could code and help out, add that missing federation bit.

        A life lived in fear is a life half-lived

        1 Reply Last reply
        1
        • girishG girish

          @murgero said in Pixelfed:

          The issue here is federation is broken

          Do you know what is needed in the Cloudron package to fix this? Or is this an upstream app issue? I couldn't really find any information about pixelfed + federation on their site. If there is a link, I would love to see it.

          murgeroM Offline
          murgeroM Offline
          murgero
          App Dev
          wrote on last edited by
          #28

          @girish I think webfinger on the root domain may help out here. But I am not 100% versed in ActivityPub. That said, there is a reported federation issue when using activitypub upstream: https://github.com/pixelfed/pixelfed/issues/2221

          --
          https://urgero.org
          ~ Professional Nerd. Freelance Programmer. ~

          1 Reply Last reply
          1
          • doodlemania2D Offline
            doodlemania2D Offline
            doodlemania2
            App Dev
            wrote on last edited by nebulon
            #29

            I can see some traffic and some errors in my horizon based on what @murgero linked to. No idea how to fix, but at least we have errors to work off of!

            My error is saying there is inbound issue from @hyper@social.mobiledads.live (the person I've followed). Here is the log (sorry it is big).

            Symfony\Component\HttpKernel\Exception\HttpException: Invalid object in /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:1015
            Stack trace:
            #0 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(46): Illuminate\Foundation\Application->abort(400, 'Invalid object', Array)
            #1 /app/code/app/Util/ActivityPub/Helpers.php(240): abort(400, 'Invalid object')
            #2 /app/code/app/Util/ActivityPub/Inbox.php(135): App\Util\ActivityPub\Helpers::statusFirstOrFetch('https://social....', true)
            #3 /app/code/app/Util/ActivityPub/Inbox.php(117): App\Util\ActivityPub\Inbox->handleNoteReply()
            #4 /app/code/app/Util/ActivityPub/Inbox.php(50): App\Util\ActivityPub\Inbox->handleCreateActivity()
            #5 /app/code/app/Util/ActivityPub/Inbox.php(42): App\Util\ActivityPub\Inbox->handleVerb()
            #6 /app/code/app/Jobs/InboxPipeline/InboxWorker.php(43): App\Util\ActivityPub\Inbox->handle()
            #7 [internal function]: App\Jobs\InboxPipeline\InboxWorker->handle()
            #8 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
            #9 /app/code/vendor/laravel/framework/src/Illuminate/Container/Util.php(36): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
            #10 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): Illuminate\Container\Util::unwrapIfClosure(Object(Closure))
            #11 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
            #12 /app/code/vendor/laravel/framework/src/Illuminate/Container/Container.php(590): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
            #13 /app/code/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(94): Illuminate\Container\Container->call(Array)
            #14 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\Bus\Dispatcher->Illuminate\Bus\{closure}(Object(App\Jobs\InboxPipeline\InboxWorker))
            #15 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(App\Jobs\InboxPipeline\InboxWorker))
            #16 /app/code/vendor/laravel/framework/src/Illuminate/Bus/Dispatcher.php(98): Illuminate\Pipeline\Pipeline->then(Object(Closure))
            #17 /app/code/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(83): Illuminate\Bus\Dispatcher->dispatchNow(Object(App\Jobs\InboxPipeline\InboxWorker), false)
            #18 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\Queue\CallQueuedHandler->Illuminate\Queue\{closure}(Object(App\Jobs\InboxPipeline\InboxWorker))
            #19 /app/code/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(App\Jobs\InboxPipeline\InboxWorker))
            #20 /app/code/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(85): Illuminate\Pipeline\Pipeline->then(Object(Closure))
            #21 /app/code/vendor/laravel/framework/src/Illuminate/Queue/CallQueuedHandler.php(59): Illuminate\Queue\CallQueuedHandler->dispatchThroughMiddleware(Object(Illuminate\Queue\Jobs\RedisJob), Object(App\Jobs\InboxPipeline\InboxWorker))
            #22 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Jobs/Job.php(88): Illuminate\Queue\CallQueuedHandler->call(Object(Illuminate\Queue\Jobs\RedisJob), Array)
            #23 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(354): Illuminate\Queue\Jobs\Job->fire()
            #24 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(300): Illuminate\Queue\Worker->process('redis', Object(Illuminate\Queue\Jobs\RedisJob), Object(Illuminate\Queue\WorkerOptions))
            #25 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(134): Illuminate\Queue\Worker->runJob(Object(Illuminate\Queue\Jobs\RedisJob), 'redis', Object(Illuminate\Queue\WorkerOptions))
            #26 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(112): Illuminate\Queue\Worker->daemon('redis', 'default', Object(Illuminate\Queue\WorkerOptions))
            #27 /app/code/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(96): Illuminate\Queue\Console\WorkCommand->runWorker('redis', 'default')
            #28 /app/code/vendor/laravel/horizon/src/Console/WorkCommand.php(46): Illuminate\Queue\Console\WorkCommand->handle()
            #29 [internal function]: Laravel\Horizon\Console\WorkCommand->handle()
            #30 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(32): call_user_func_array(Array, Array)
            #31 /app/code/vendor/laravel/framework/src/Illuminate/Container/Util.php(36): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
            #32 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(90): Illuminate\Container\Util::unwrapIfClosure(Object(Closure))
            #33 /app/code/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(34): Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Array, Object(Closure))
            #34 /app/code/vendor/laravel/framework/src/Illuminate/Container/Container.php(590): Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), Array, Array, NULL)
            #35 /app/code/vendor/laravel/framework/src/Illuminate/Console/Command.php(202): Illuminate\Container\Container->call(Array)
            #36 /app/code/vendor/symfony/console/Command/Command.php(255): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
            #37 /app/code/vendor/laravel/framework/src/Illuminate/Console/Command.php(189): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
            #38 /app/code/vendor/symfony/console/Application.php(1011): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #39 /app/code/vendor/symfony/console/Application.php(272): Symfony\Component\Console\Application->doRunCommand(Object(Laravel\Horizon\Console\WorkCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #40 /app/code/vendor/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #41 /app/code/vendor/laravel/framework/src/Illuminate/Console/Application.php(93): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #42 /app/code/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(131): Illuminate\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #43 /app/code/artisan(37): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
            #44 {main}
            Data
            {
            headers: {
            host: [
            "pixels.thedoodleproject.net"
            ],
            x-forwarded-for: [
            "192.99.10.87"
            ],
            x-forwarded-host: [
            "pixels.thedoodleproject.net"
            ],
            x-forwarded-port: [
            "443"
            ],
            x-forwarded-proto: [
            "https"
            ],
            x-forwarded-ssl: [
            "on"
            ],
            connection: [
            "close"
            ],
            content-length: [
            "2290"
            ],
            user-agent: [
            "http.rb/4.3.0 (Mastodon/3.1.3; +https://social.mobiledads.live/)"
            ],
            date: [
            "Fri, 19 Jun 2020 19:58:41 GMT"
            ],
            accept-encoding: [
            "gzip"
            ],
            digest: [
            "SHA-256=40Q8xJRc0kzr0bIczPgBonDpqKiwJpD5K3npBCqhVmo="
            ],
            content-type: [
            "application/activity+json"
            ],
            signature: [
            "keyId="https://social.mobiledads.live/users/hyper#main-key",algorithm="rsa-sha256",headers="(request-target) host date digest content-type",signature="nXTzozY1aOyBKrMqaIB9kkwdminzCFqXfW5mAY7MAKpCz95OiIkSReOpknLzgdynxIu/LKs5e+vP8Jd1yaTidaOC9w7QDpeIqhsL82kx3rlfVohXuEkYq1sMnZeJnrT6yk4XU6Y0qado2W7ttHs7RwnukdrAvPQ3DSOJnDgaUN8OkWoY1INasipubHl2narkvxdIWr9HWR1InqJXzOXANULpAEnQUr0nKTrhZ2TdHCwy7Hp99L1WdX5VDAzYHO1YiTTYyCpH8RNGiw9WHhKjWvltF8Wy/CmVg1Mg679UNPd8AhQZAfPiMdgaiKF8M/Fzn/ZC5/MT37uapsgCwZhQuQ==""
            ]
            },
            profile: {
            class: "App\Profile",
            id: 178923258836553730,
            relations: [
            ],
            connection: "mysql"
            },
            payload: {
            @context: [
            "https://www.w3.org/ns/activitystreams",
            {
            ostatus: "http://ostatus.org#",
            atomUri: "ostatus:atomUri",
            inReplyToAtomUri: "ostatus:inReplyToAtomUri",
            conversation: "ostatus:conversation",
            sensitive: "as:sensitive",
            toot: "http://joinmastodon.org/ns#",
            votersCount: "toot:votersCount"
            }
            ],
            id: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354/activity",
            type: "Create",
            actor: "https://social.mobiledads.live/users/hyper",
            published: "2020-06-19T19:58:39Z",
            to: [
            "https://social.mobiledads.live/users/hyper/followers"
            ],
            cc: [
            "https://pixels.thedoodleproject.net/users/doodlemania"
            ],
            object: {
            id: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354",
            type: "Note",
            summary: null,
            inReplyTo: "https://pixels.thedoodleproject.net/p/doodlemania/179416655951171584",
            published: "2020-06-19T19:58:39Z",
            url: "https://social.mobiledads.live/@hyper/104372418627220354",
            attributedTo: "https://social.mobiledads.live/users/hyper",
            to: [
            "https://social.mobiledads.live/users/hyper/followers"
            ],
            cc: [
            "https://pixels.thedoodleproject.net/users/doodlemania"
            ],
            sensitive: false,
            atomUri: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354",
            inReplyToAtomUri: "https://pixels.thedoodleproject.net/p/doodlemania/179416655951171584",
            conversation: "tag:social.mobiledads.live,2020-06-19:objectId=14924:objectType=Conversation",
            content: "<p><span class="h-card"><a href="https://pixels.thedoodleproject.net/doodlemania" class="u-url mention">@<span>doodlemania</span></a></span> Oh I can see this!</p>",
            contentMap: {
            en: "<p><span class="h-card"><a href="https://pixels.thedoodleproject.net/doodlemania" class="u-url mention">@<span>doodlemania</span></a></span> Oh I can see this!</p>"
            },
            attachment: [
            ],
            tag: [
            {
            type: "Mention",
            href: "https://pixels.thedoodleproject.net/users/doodlemania",
            name: "@doodlemania@pixels.thedoodleproject.net"
            }
            ],
            replies: {
            id: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354/replies",
            type: "Collection",
            first: {
            type: "CollectionPage",
            next: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354/replies?only_other_accounts=true&page=true",
            partOf: "https://social.mobiledads.live/users/hyper/statuses/104372418627220354/replies",
            items: [
            ]
            }
            }
            }
            },
            timeout: 5,
            tries: 1,
            job: null,
            connection: null,
            queue: null,
            chainConnection: null,
            chainQueue: null,
            delay: null,
            middleware: [
            ],
            chained: [
            ]
            }
            
            1 Reply Last reply
            0
            • doodlemania2D Offline
              doodlemania2D Offline
              doodlemania2
              App Dev
              wrote on last edited by
              #30

              After reading this, it says that @murgero CAN see something, so outbound is good.
              Also, I see in my instance, not that message, but he DID like the pic!
              a27f43e5-79e9-48f1-b26d-53be2b76676c-image.png

              murgeroM 1 Reply Last reply
              1
              • doodlemania2D doodlemania2

                After reading this, it says that @murgero CAN see something, so outbound is good.
                Also, I see in my instance, not that message, but he DID like the pic!
                a27f43e5-79e9-48f1-b26d-53be2b76676c-image.png

                murgeroM Offline
                murgeroM Offline
                murgero
                App Dev
                wrote on last edited by
                #31

                @doodlemania2 Yes I did reply to the pic saying I saw it, and gave a like too - hopefully good for catching something in the logs 🙂

                --
                https://urgero.org
                ~ Professional Nerd. Freelance Programmer. ~

                1 Reply Last reply
                0
                • doodlemania2D Offline
                  doodlemania2D Offline
                  doodlemania2
                  App Dev
                  wrote on last edited by
                  #32

                  have been digging, the only thing i see at the moment was from horizon (listed above). i think it might be needing a well known or something, still researching

                  1 Reply Last reply
                  2
                  • doodlemania2D Offline
                    doodlemania2D Offline
                    doodlemania2
                    App Dev
                    wrote on last edited by
                    #33

                    i installed a mastodon instance and am going to try to "talk between them" to speed debugging up some ... just an FYI to any watchers out there.

                    1 Reply Last reply
                    1
                    • S Offline
                      S Offline
                      stantropics
                      wrote on last edited by
                      #34

                      Looks like federation works here. Some people are following me, those should see some pictures.
                      @doodlemania2 Let me know if I can help debugging.

                      doodlemania2D 1 Reply Last reply
                      1
                      • S stantropics

                        Looks like federation works here. Some people are following me, those should see some pictures.
                        @doodlemania2 Let me know if I can help debugging.

                        doodlemania2D Offline
                        doodlemania2D Offline
                        doodlemania2
                        App Dev
                        wrote on last edited by
                        #35

                        @stantropics Not able to see anyone else's posts but my own. Still tinkering with stuff but would appreciate any assistance!

                        1 Reply Last reply
                        2
                        • B Offline
                          B Offline
                          blavkm
                          wrote on last edited by
                          #36

                          @doodlemania2 said in Pixelfed:

                          social.mobiledads.live

                          How to change the logo?

                          scookeS 1 Reply Last reply
                          0
                          • doodlemania2D Offline
                            doodlemania2D Offline
                            doodlemania2
                            App Dev
                            wrote on last edited by doodlemania2
                            #37

                            I seem to be up and going - I'm "Tooting" and "Pixelfedding" between my two instances on different servers. All appears well. cc: @girish

                            1 Reply Last reply
                            0
                            • B blavkm

                              @doodlemania2 said in Pixelfed:

                              social.mobiledads.live

                              How to change the logo?

                              scookeS Online
                              scookeS Online
                              scooke
                              wrote on last edited by
                              #38

                              @blavkm said in Pixelfed:

                              social.mobiledads.live

                              This seems to have the clearest explanation, especially the parts near the bottom: https://discourse.joinmastodon.org/t/how-to-replace-logos/1553/15

                              But since this is becoming more of a Mastodon thread rather than purely Pixelfed, maybe you could repost as a new topic.

                              A life lived in fear is a life half-lived

                              1 Reply Last reply
                              0
                              • girishG Offline
                                girishG Offline
                                girish
                                Staff
                                wrote on last edited by
                                #39

                                @doodlemania2 So the package is good to marked as stable as-is? Any notes for the documentation?

                                1 Reply Last reply
                                0
                                • doodlemania2D Offline
                                  doodlemania2D Offline
                                  doodlemania2
                                  App Dev
                                  wrote on last edited by
                                  #40

                                  I'm going to capture a few more notes just to make sure and might even throw together an FAQ - will offer a PR to the POSTINSTALL.md stuff ASAP!

                                  1 Reply Last reply
                                  1
                                  • doodlemania2D Offline
                                    doodlemania2D Offline
                                    doodlemania2
                                    App Dev
                                    wrote on last edited by
                                    #41

                                    @girish - this is ready! Only last minute change you might consider is moving .env to /app/data like other apps recently.

                                    1 Reply Last reply
                                    2
                                    • girishG Offline
                                      girishG Offline
                                      girish
                                      Staff
                                      wrote on last edited by girish
                                      #42

                                      @doodlemania2 Did you make a PR? I am not seeing it at https://git.cloudron.io/cloudron/pixelfed-app/-/merge_requests

                                      Also pixelfed already has a file at /add/data/env.production.

                                      1 Reply Last reply
                                      0
                                      • doodlemania2D Offline
                                        doodlemania2D Offline
                                        doodlemania2
                                        App Dev
                                        wrote on last edited by
                                        #43

                                        might have committed directly to master teehee

                                        1 Reply Last reply
                                        3
                                        • girishG Offline
                                          girishG Offline
                                          girish
                                          Staff
                                          wrote on last edited by
                                          #44

                                          @doodlemania2 Ah, thanks a lot! I will make a new release shortly.

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


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search