Post Al3cGGuOKfd3MEqyoq by juanro49@masto.nobigtech.es
 (DIR) More posts by juanro49@masto.nobigtech.es
 (DIR) Post #Al3cGFxBsmH2Od9hXk by vincent@r.town
       2024-08-16T14:45:23Z
       
       0 likes, 0 repeats
       
       Just published a massive refactoring on the road to full IG support: https://git.sr.ht/~cloutier/bird.makeup/commit/b6f7dd61b8f970f0b9af0f6b51771fb6e7852addThis makes it so that the concept of followers is not hard-coded to twitter anymore but can switch dynamically. This has fixed the followers information in the profile page and is necessary in the crawling mode to sent post to the correct followers.I think there is 2-3 refactoring of that size left and then the crawling will work too!
       
 (DIR) Post #Al3cGGuOKfd3MEqyoq by juanro49@masto.nobigtech.es
       2024-08-16T17:28:31Z
       
       0 likes, 0 repeats
       
       @vincent I have encountered a problem with some servers like @mitra Actors doesn't have outbox property required by the ActivityPub https://www.w3.org/TR/activitypub/#actor-objects (the collection can be empty).Another problem is that we cannot get the actor with Content-Type and Accept "application/ld+json; profile="https://www.w3.org/ns/activitystreams"", only with "application/activity+json". According to the specification, clients have to specify the first one https://www.w3.org/TR/activitypub/#retrieving-objects
       
 (DIR) Post #Al3cGHZVrmWRPm5oum by silverpill@mitra.social
       2024-08-17T12:03:25.352648Z
       
       0 likes, 0 repeats
       
       @juanro49 @vincent The latter issue was first reported almost 3 years ago:https://github.com/NicolasConstant/BirdsiteLive/issues/129I hope it will get fixed soon
       
 (DIR) Post #Al3cGHavmVelUAkx7o by vincent@r.town
       2024-08-16T14:50:32Z
       
       0 likes, 0 repeats
       
       Next refactoring is to enable a lightweight crawling for IG that will refresh profile information, without the posts yet. I believe that the same approach for twitter will make bios work reliably too.
       
 (DIR) Post #Al40K0zvpMoO4OlM0W by vincent@r.town
       2024-08-17T15:26:00Z
       
       0 likes, 0 repeats
       
       @silverpill @juanro49 For the header issue, I've made some changes and deployed it to kilogram.makeup: https://git.sr.ht/~cloutier/bird.makeup/commit/0aa7f14d5b5580438d3999944df825b3cc60b07bThat bit should work now
       
 (DIR) Post #Al40K1ocmtMSbcTq1Q by vincent@r.town
       2024-08-17T15:27:34Z
       
       0 likes, 0 repeats
       
       @silverpill @juanro49 I'm a bit scared of the side effects of an empty outbox on some activitypub implementations, are there some that would assume posts are deleted if they are not in the outbox?
       
 (DIR) Post #Al40K2aTuxdt02s3cG by silverpill@mitra.social
       2024-08-17T16:33:00.928076Z
       
       0 likes, 0 repeats
       
       @vincent @juanro49 The header fix is working, thanks.Most implementations never fetch outbox, so empty collection or outbox URL that returns 404 shouldn't cause any federation issues. I don't think any implementation would assume that posts are deleted (deletion requires a Delete activity).
       
 (DIR) Post #AlKZ2LRXgADhBzLVEO by silverpill@mitra.social
       2024-08-25T16:16:13.917150Z
       
       0 likes, 0 repeats
       
       @vincent So, what do you think? This will make your service compatible with ActivityPub standard:"outbox": "https://kilogram.makeup/users/cdesparragosadelares/outbox"even if the URL doesn't resolve to an actual collection@juanro49
       
 (DIR) Post #AlNAfdXOQKN5E0bLBg by vincent@r.town
       2024-08-26T15:06:04Z
       
       0 likes, 0 repeats
       
       @silverpill I have done a little patch to do that: https://git.sr.ht/~cloutier/bird.makeup/commit/d50e4fa7672c4a0887d25ed00995b80948c491f8The outbox does resolve to an empty collection though, just in case. I have deployed this on kilogram.makeup, and if we find no federation problems introduced by this change, I will deploy it to bird.makeup too this weekend. Can you check if there are other problems with federating dotmakeup <> @mitra ?
       
 (DIR) Post #AlNAfeST081c51Iv9E by silverpill@mitra.social
       2024-08-26T22:28:34.171846Z
       
       0 likes, 0 repeats
       
       @vincent There was a problem with image property of dotmakeup actor. The url attribute of Image is set to null:"image": {    "type": "Image",    "mediaType": "image/jpeg",    "url": null},I changed my validator to be more lenient, but such representation doesn't feel right. I think it would be better to not add image at all if url is not known.After fixing this issue I was able to resolve actor. Then I sent a Follow activity and dotmakeup sent Accept activity back to me. However, my server failed to verify the HTTP signature.I'm not 100% sure but it looks like keyId parameter is incorrect, its value is https://kilogram.makeup/users/instagram (actor ID) when it should be https://kilogram.makeup/users/instagram#main-key (key ID).
       
 (DIR) Post #AlNAfexJ9Sh9cfjYDg by vincent@r.town
       2024-08-26T15:19:58Z
       
       0 likes, 0 repeats
       
       @silverpill also I'm very interested by @mitra 's ipfs integration. IPFS is a solution I'm considering to fix IG image download link expiry problem. It would be amazing if mitra instances could pin IG content! I'd much prefer that to something based on S3. I haven't seen a IPFS AP extension yet, maybe we can collaborate on that?
       
 (DIR) Post #AlNBsADeq7Io0xuKTw by silverpill@mitra.social
       2024-08-26T22:41:12.735705Z
       
       1 likes, 0 repeats
       
       @vincent IPFS support in Mitra is rudimentary, it can save an ActivityPub representation of a post to IPFS but not much else.During my experiments I found that IPFS node consumes too much resources and started to look for a more lightweight solution. Many ActivityPub servers already work as media caches, so in theory we can just use CIDs without the p2p network.
       
 (DIR) Post #AlNC3kKYv1RrCIeyvY by sun@shitposter.world
       2024-08-26T22:45:01.460663Z
       
       0 likes, 1 repeats
       
       @silverpill @vincent Pleroma apparently has it now
       
 (DIR) Post #AlNCNfS2lmFRr8etY8 by feld@friedcheese.us
       2024-08-26T22:48:11.437516Z
       
       0 likes, 0 repeats
       
       @sun @silverpill @vincent you have to run Kubo though which is the problem
       
 (DIR) Post #AlNCNgHRgfMgQYhwfY by sun@shitposter.world
       2024-08-26T22:48:37.049046Z
       
       0 likes, 1 repeats
       
       @feld @silverpill @vincent is it just media or posts too
       
 (DIR) Post #AlNCPj2yN8FVaRugF6 by sun@shitposter.world
       2024-08-26T22:48:59.769252Z
       
       0 likes, 1 repeats
       
       @feld @silverpill @vincent sometimes I just have to restart kubo because it goes crazy and consumes 100% CPU
       
 (DIR) Post #AlNCxDScJeHjT9sTR2 by feld@friedcheese.us
       2024-08-26T22:54:42.901697Z
       
       0 likes, 0 repeats
       
       @sun @silverpill @vincent it's bad, the storage implementations are bad, I don't know why anyone thinks it's okay
       
 (DIR) Post #AlNCxEFBP58JtmbG8O by sun@shitposter.world
       2024-08-26T22:55:02.829030Z
       
       0 likes, 1 repeats
       
       @feld @silverpill @vincent maybe we should use webtorrent
       
 (DIR) Post #AlOMu7m2CER7fA5I4e by raphael@mastodon.communick.com
       2024-08-27T05:10:13Z
       
       0 likes, 0 repeats
       
       @silverpill @vincent "CID-based storage without the P2P" seems to be what https://docs.sfive.net/ attempts to do.
       
 (DIR) Post #AlOMu8a1COQ2ABTCz2 by lutindiscret@mastodon.libre-entreprise.com
       2024-08-27T07:49:45Z
       
       0 likes, 0 repeats
       
       @raphael @silverpill @vincent > During my experiments I found that IPFS node consumes too much resources and started to look for a more lightweight solution. I guess you have considered @n0iroh?
       
 (DIR) Post #AlOMu98l7ECxtvix8K by silverpill@mitra.social
       2024-08-27T12:18:55.773828Z
       
       0 likes, 0 repeats
       
       @lutindiscret @raphael @n0iroh @vincent Not really, I'd prefer to just put a hash into URL in a standardized way and use it to verify the integrity of a resource:https://codeberg.org/fediverse/fep/src/branch/main/fep/ef61/fep-ef61.md#mediaFediverse can be its own data storage network.
       
 (DIR) Post #AlSoS5nLXD9ilYxXlo by vincent@r.town
       2024-08-29T14:50:47Z
       
       0 likes, 0 repeats
       
       @silverpill as for the signature, I have published some tweaks for the id on kilogram.makeup. Can you try again?
       
 (DIR) Post #AlSoS6KJYdWkPoNs9o by silverpill@mitra.social
       2024-08-29T15:46:57.516800Z
       
       0 likes, 0 repeats
       
       @vincent It's working, thanks a lot!
       
 (DIR) Post #AlX4hEXbftPa8Og8sS by vincent@r.town
       2024-08-31T16:42:07Z
       
       0 likes, 0 repeats
       
       @silverpill @lutindiscret @raphael @n0iroh Have you tried using IPFS just for media? I've found that it works better for a few large objects than  many small ones
       
 (DIR) Post #AlX4hFhvL1G5kgVtb6 by silverpill@mitra.social
       2024-08-31T17:08:24.313924Z
       
       0 likes, 0 repeats
       
       @vincent @lutindiscret @raphael @n0iroh Yes, but I'm not satisfied with its speed and memory consumption.By the way, Pleroma supports uploading media to IPFS since version 2.7.0: https://pleroma.social/announcements/2024/07/17/pleroma-major-release-2.7.0/#added