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.
-
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.
@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.
-
-
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: [ ] } -
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!

-
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
-
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.
-
Looks like federation works here. Some people are following me, those should see some pictures.
@doodlemania2 Let me know if I can help debugging. -
Looks like federation works here. Some people are following me, those should see some pictures.
@doodlemania2 Let me know if I can help debugging.@stantropics Not able to see anyone else's posts but my own. Still tinkering with stuff but would appreciate any assistance!
-
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.
-
@doodlemania2 So the package is good to marked as stable as-is? Any notes for the documentation?
-
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!
-
@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. -
might have committed directly to master teehee
-
@doodlemania2 Ah, thanks a lot! I will make a new release shortly.
-
I have added tests and marked pixelfed as stable. Thanks all for testing!
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login
