Conversation
Notices
-
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 22:11:42 JST Alex Gleason So should I make Ditto upload to an s3 compatible bucket or IPFS? I kind of want one way of doing things for the first release before adding configurable media stuff.
S3 means you need to run Minio or a cloud service. Ipfs means you need to run a local ipfs gateway.
I'm not gonna support local file uploads. Ipfs would be the closest thing.-
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 22:16:02 JST Alex Gleason @unknown Because of the reliability and CDN support? -
Embed this notice
unknown (unknown@seal.cafe)'s status on Thursday, 07-Sep-2023 22:16:03 JST unknown s3 makes more sense -
Embed this notice
Parker Banks (parker@pl.psion.co)'s status on Thursday, 07-Sep-2023 22:32:53 JST Parker Banks @alex I vote ipfs, since it's more in keeping with the whole nostr ethos. -
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 22:36:52 JST Alex Gleason @unknown S3 is one-click to provision a bucket, but good luck actually configuring it if it's not really S3. DigitalOcean, Wasabi, Minio, are all different and would need separate instructions in the install guide for how to configure them. The S3 API itself is an insane overly-complex unmaintainable nightmare, only made better by the various libraries that obfuscate how bad it is.
IPFS looks like it's just one REST endpoint with auth. I think you can just apt-install it and grab a token. But I haven't actually gone through it myself yet, so I might be missing something.
IPFS is more resistant to censorship and resilient, in theory, assuming it will actually resolve your file. S3 is reliable with better scaling capabilities.
I'm going to play with ipfs a bit more and see how much it struggles. -
Embed this notice
unknown (unknown@seal.cafe)'s status on Thursday, 07-Sep-2023 22:36:53 JST unknown also easier to setup and maintain -
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 22:38:51 JST Alex Gleason @parker Yep it's content addressable just like Nostr, so makes sense. But @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d hates IPFS because it's slow and unreliable. 😃 -
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 22:49:42 JST Alex Gleason @parker @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d You're right, it wouldn't be a problem because the local node would have all the files locally, and the URLs would all point to the local http gateway instead of an actual ipfs URI (we'd include the cid in API responses so you could resolve over ipfs if you wanted to, tho).
Users could also choose to disable remote ipfs lookups in the gateway for security/bandwidth reasons, but in the ideal end state we wouldn't even need a media proxy because the local gateway could resolve remote content. -
Embed this notice
Parker Banks (parker@pl.psion.co)'s status on Thursday, 07-Sep-2023 22:49:43 JST Parker Banks @alex @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d
Would that be such an issue for ditto instances maintaining their own ipfs node? -
Embed this notice
Parker Banks (parker@pl.psion.co)'s status on Thursday, 07-Sep-2023 23:45:04 JST Parker Banks @alex @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d
I suppose I could make my own pseudo-CDN with several IPFS nodes then? Plus there's the Cloudflare IPFS Gateway Cache (for those who don't mind cloudflare).Alex Gleason likes this. -
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Thursday, 07-Sep-2023 23:46:52 JST Alex Gleason @parker @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d After thinking more, the main issue I see with serving media over an IPFS gateway is the content-type header. The gateway tries to guess, and it could return application/javascript. Of course serving on a subdomain with CSP solves it, but it's not layered security. Need to solve that. -
Embed this notice
zhoreeq (zhoreeq@zhub.link)'s status on Friday, 08-Sep-2023 01:18:31 JST zhoreeq @alex Ditto with IPFS 🔥
s3 can be added later, right?
Alex Gleason likes this. -
Embed this notice
Alex Gleason (alex@gleasonator.com)'s status on Friday, 08-Sep-2023 03:03:05 JST Alex Gleason @parker @3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d Good news, the default IPFS gateway returns `Content-Type: text/plain; charset=utf-8` for javascript files, even if they end with a `.js` extension.
Same isn't true for SVG, though.
-
Embed this notice